I have a new weird problem with Jibri since upgrading Jitsi. Jibri works by adding the callName to the baseUrl as such:
data class CallUrlInfo(
val baseUrl: String = "",
val callName: String = "",
private val urlParams: List<String> = listOf()
) {
@get:JsonIgnore
val callUrl: String
get() {
return if (urlParams.isNotEmpty()) {
"$baseUrl/$callName#${urlParams.joinToString("&")}"
} else {
"$baseUrl/$callName"
}
}
override fun equals(other: Any?): Boolean {
return when {
other == null -> false
this === other -> true
javaClass != other.javaClass -> false
else -> hashCode() == other.hashCode()
}
}
override fun hashCode(): Int {
// Purposefully ignore urlParams here
return Objects.hash(baseUrl.lowercase(), callName.lowercase())
}
}
But sometimes it only records the baseURL. But if I stop the recording using lib-jitsi-meet and then restart it, it calls the baseURL and callName.
I also noticed this happens only on the first time a recording/livestream is done on that Jibri instance after restarting the server. But subsequent calls to the Jibri after the first recording/livestreaming loads correctly.
Anything I should be looking at?