Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

video quality impaired: the bridge channel has been disconnected #1637

Closed
michaelssingh opened this issue Nov 3, 2023 · 24 comments
Closed

Comments

@michaelssingh
Copy link

I have an instance of Jitsi Meet running at https://meet.hashbang.sh the current configuration is located at https://github.com/hashbang/gitops/tree/master/jitsi.

There are a few errors that I could use some clarification around:

2023-11-03T15:36:02.066Z [modules/xmpp/strophe.jingle.js] getting turn credentials failed
2023-11-03T15:36:02.066Z [modules/xmpp/strophe.jingle.js] is mod_turncredentials or similar installed and configured?

During a call, we are getting a constant occurrence of the alert stating

Video quality impaired: the bridge channel has been disconnected and thus video quality has been limited to it's lowest setting

These seem to be the relevant logs in the JVB

Endpoint.acceptWebSocket#720: Incoming web socket request with an invalid password. Expected: 38qsslmmf9eb51big4c8vn2fso received 1mgu9dtuf6proiu3qsqka3l5ls
JVB 2023-11-03 07:48:35.948 WARNING: [43] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC] Endpoint.acceptWebSocket#720: Incoming web socket request with an invalid password. Expected: 38qsslmmf9eb51big4c8vn2fso received 1mgu9dtuf6proiu3qsqka3l5ls
JVB 2023-11-03 07:48:36.884 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AbstractEndpoint.expire#176: Expiring.
JVB 2023-11-03 07:48:36.884 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] Endpoint.expire#1137: Spent 0 seconds oversending
JVB 2023-11-03 07:48:36.885 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] Transceiver.teardown#365: Tearing down
JVB 2023-11-03 07:48:36.885 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] RtpReceiverImpl.tearDown#349: Tearing down
JVB 2023-11-03 07:48:36.885 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] RtpSenderImpl.tearDown#320: Tearing down
JVB 2023-11-03 07:48:36.885 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] EndpointMessageTransport.webSocketClosed#370: Websocket closed, statusCode 1001 ( endpoint closed).
JVB 2023-11-03 07:48:36.886 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] DtlsTransport.stop#187: Stopping
JVB 2023-11-03 07:48:36.886 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI local_ufrag=avo8j1heaqg1vf] IceTransport.stop#253: Stopping
JVB 2023-11-03 07:48:36.888 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI local_ufrag=avo8j1heaqg1vf ufrag=avo8j1heaqg1vf] Agent.setState#946: ICE state changed from Running to Terminated.
JVB 2023-11-03 07:48:36.888 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI local_ufrag=avo8j1heaqg1vf ufrag=avo8j1heaqg1vf name=stream-0149962c componentId=1] MergingDatagramSocket.close#142: Closing.
JVB 2023-11-03 07:48:36.889 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] Endpoint.expire#1155: Expired.
JVB 2023-11-03 07:48:36.891 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c local_ufrag=a0f371heaqgj8r ufrag=a0f371heaqgj8r] Agent.gatherCandidates#647: Gathering candidates for component stream-0149962c.RTP.
JVB 2023-11-03 07:48:36.895 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c] Endpoint.<init>#333: Created new endpoint isUsingSourceNames=true, iceControlling=true
JVB 2023-11-03 07:48:37.515 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] DtlsTransport.setSetupAttribute#126: The remote side is acting as DTLS client, we'll act as server
JVB 2023-11-03 07:48:37.515 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI local_ufrag=a0f371heaqgj8r] IceTransport.startConnectivityEstablishment#200: Starting the Agent without remote candidates.
JVB 2023-11-03 07:48:37.516 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI local_ufrag=a0f371heaqgj8r ufrag=a0f371heaqgj8r] Agent.startConnectivityEstablishment#736: Start ICE connectivity establishment.
JVB 2023-11-03 07:48:37.516 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI local_ufrag=a0f371heaqgj8r ufrag=a0f371heaqgj8r] Agent.initCheckLists#972: Init checklist for stream stream-0149962c
JVB 2023-11-03 07:48:37.516 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI local_ufrag=a0f371heaqgj8r ufrag=a0f371heaqgj8r] Agent.setState#946: ICE state changed from Waiting to Running.
JVB 2023-11-03 07:48:37.517 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI local_ufrag=a0f371heaqgj8r] IceTransport.iceStateChanged#343: ICE state changed old=Waiting new=Running
JVB 2023-11-03 07:48:37.517 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI local_ufrag=a0f371heaqgj8r ufrag=a0f371heaqgj8r] ConnectivityCheckClient.startChecks#147: Start connectivity checks.
JVB 2023-11-03 07:48:37.562 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.564 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.564 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.564 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.564 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.564 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.565 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.565 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.565 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.565 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.565 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.565 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.565 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.565 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.565 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.565 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.565 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:37.689 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=0149962c stats_id=Genoveva-pLI] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:39.890 WARNING: [44] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC] Endpoint.acceptWebSocket#720: Incoming web socket request with an invalid password. Expected: 38qsslmmf9eb51big4c8vn2fso received 1mgu9dtuf6proiu3qsqka3l5ls
JVB 2023-11-03 07:48:43.250 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=253e57e7 local_ufrag=73r8n1heaqgpfi ufrag=73r8n1heaqgpfi] Agent.gatherCandidates#647: Gathering candidates for component stream-253e57e7.RTP.
JVB 2023-11-03 07:48:43.253 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=253e57e7] Endpoint.<init>#333: Created new endpoint isUsingSourceNames=true, iceControlling=true
JVB 2023-11-03 07:48:44.696 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC] AbstractEndpoint.expire#176: Expiring.
JVB 2023-11-03 07:48:44.696 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC] Endpoint.expire#1137: Spent 0 seconds oversending
JVB 2023-11-03 07:48:44.696 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC] Transceiver.teardown#365: Tearing down
JVB 2023-11-03 07:48:44.697 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC] RtpReceiverImpl.tearDown#349: Tearing down
JVB 2023-11-03 07:48:44.697 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC] RtpSenderImpl.tearDown#320: Tearing down
JVB 2023-11-03 07:48:44.697 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC] EndpointMessageTransport.webSocketClosed#370: Websocket closed, statusCode 1001 ( endpoint closed).
JVB 2023-11-03 07:48:44.698 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC] DtlsTransport.stop#187: Stopping
JVB 2023-11-03 07:48:44.698 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC local_ufrag=7ikng1heaqgd8t] IceTransport.stop#253: Stopping
JVB 2023-11-03 07:48:44.700 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC local_ufrag=7ikng1heaqgd8t ufrag=7ikng1heaqgd8t] Agent.setState#946: ICE state changed from Running to Terminated.
JVB 2023-11-03 07:48:44.700 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC local_ufrag=7ikng1heaqgd8t ufrag=7ikng1heaqgd8t name=stream-ad0ef092 componentId=1] MergingDatagramSocket.close#142: Closing.
JVB 2023-11-03 07:48:44.702 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC] Endpoint.expire#1155: Expired.
JVB 2023-11-03 07:48:44.704 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 local_ufrag=5sbo71heaqgqsv ufrag=5sbo71heaqgqsv] Agent.gatherCandidates#647: Gathering candidates for component stream-ad0ef092.RTP.
JVB 2023-11-03 07:48:44.707 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092] Endpoint.<init>#333: Created new endpoint isUsingSourceNames=true, iceControlling=true
JVB 2023-11-03 07:48:44.986 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC] DtlsTransport.setSetupAttribute#126: The remote side is acting as DTLS client, we'll act as server
JVB 2023-11-03 07:48:44.986 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC local_ufrag=5sbo71heaqgqsv] IceTransport.startConnectivityEstablishment#200: Starting the Agent without remote candidates.
JVB 2023-11-03 07:48:44.986 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC local_ufrag=5sbo71heaqgqsv ufrag=5sbo71heaqgqsv] Agent.startConnectivityEstablishment#736: Start ICE connectivity establishment.
JVB 2023-11-03 07:48:44.986 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC local_ufrag=5sbo71heaqgqsv ufrag=5sbo71heaqgqsv] Agent.initCheckLists#972: Init checklist for stream stream-ad0ef092
JVB 2023-11-03 07:48:44.986 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC local_ufrag=5sbo71heaqgqsv ufrag=5sbo71heaqgqsv] Agent.setState#946: ICE state changed from Waiting to Running.
JVB 2023-11-03 07:48:44.987 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC local_ufrag=5sbo71heaqgqsv] IceTransport.iceStateChanged#343: ICE state changed old=Waiting new=Running
JVB 2023-11-03 07:48:44.987 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=ad0ef092 stats_id=Lottie-THC local_ufrag=5sbo71heaqgqsv ufrag=5sbo71heaqgqsv] ConnectivityCheckClient.startChecks#147: Start connectivity checks.
JVB 2023-11-03 07:48:45.093 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=253e57e7 stats_id=Lorena-z2z] DtlsTransport.setSetupAttribute#126: The remote side is acting as DTLS client, we'll act as server
JVB 2023-11-03 07:48:45.094 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=253e57e7 stats_id=Lorena-z2z local_ufrag=73r8n1heaqgpfi] IceTransport.startConnectivityEstablishment#200: Starting the Agent without remote candidates.
JVB 2023-11-03 07:48:45.094 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=253e57e7 stats_id=Lorena-z2z local_ufrag=73r8n1heaqgpfi ufrag=73r8n1heaqgpfi] Agent.startConnectivityEstablishment#736: Start ICE connectivity establishment.
JVB 2023-11-03 07:48:45.094 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=253e57e7 stats_id=Lorena-z2z local_ufrag=73r8n1heaqgpfi ufrag=73r8n1heaqgpfi] Agent.initCheckLists#972: Init checklist for stream stream-253e57e7
JVB 2023-11-03 07:48:45.094 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=253e57e7 stats_id=Lorena-z2z local_ufrag=73r8n1heaqgpfi ufrag=73r8n1heaqgpfi] Agent.setState#946: ICE state changed from Waiting to Running.
JVB 2023-11-03 07:48:45.094 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=253e57e7 stats_id=Lorena-z2z local_ufrag=73r8n1heaqgpfi] IceTransport.iceStateChanged#343: ICE state changed old=Waiting new=Running
JVB 2023-11-03 07:48:45.094 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=253e57e7 stats_id=Lorena-z2z local_ufrag=73r8n1heaqgpfi ufrag=73r8n1heaqgpfi] ConnectivityCheckClient.startChecks#147: Start connectivity checks.
JVB 2023-11-03 07:48:46.779 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=253e57e7 stats_id=Lorena-z2z] AllocationSettingsWrapper.setBandwidthAllocationSettings#174: Ignoring assumed-bandwidth-bps, not allowed in config.
JVB 2023-11-03 07:48:50.115 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=a07a49bd stats_id=Aiyana-jyi] AbstractEndpoint.expire#176: Expiring.
JVB 2023-11-03 07:48:50.116 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=a07a49bd stats_id=Aiyana-jyi] Endpoint.expire#1137: Spent 0 seconds oversending
JVB 2023-11-03 07:48:50.117 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=a07a49bd stats_id=Aiyana-jyi] Transceiver.teardown#365: Tearing down
JVB 2023-11-03 07:48:50.117 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=a07a49bd stats_id=Aiyana-jyi] RtpReceiverImpl.tearDown#349: Tearing down
JVB 2023-11-03 07:48:50.118 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=a07a49bd stats_id=Aiyana-jyi] RtpSenderImpl.tearDown#320: Tearing down
JVB 2023-11-03 07:48:50.120 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=a07a49bd stats_id=Aiyana-jyi] EndpointMessageTransport.webSocketClosed#370: Websocket closed, statusCode 1001 ( endpoint closed).
JVB 2023-11-03 07:48:50.120 INFO: [1261] [confId=9da727b5c7a48a4d [email protected] meeting_id=46b94ac7 epId=a07a49bd stats_id=Aiyana-jyi] DtlsTransport.stop#187: Stopping

In the browser I am noticing some strange errors:

ConstitutionalTrophiesAccommodateYet:1 Uncaught (in promise) Error: A listener indicated an asynchronous response by returning true, but the message channel closed before a response was received
Logger.js:154 2023-11-03T15:46:01.283Z [JitsiMeetJS.ts] <Object.getGlobalOnErrorHandler>:  UnhandledError: Strophe: Websocket closed unexpectedly Script: null Line: null Column: null StackTrace:  Error: Strophe: Websocket closed unexpectedly
    at St.Strophe.log (https://meet.hashbang.sh/libs/lib-jitsi-meet.min.js?v=7499:2:805010)
    at Object.error (https://meet.hashbang.sh/libs/lib-jitsi-meet.min.js?v=7499:2:499522)
    at F.Websocket._onClose (https://meet.hashbang.sh/libs/lib-jitsi-meet.min.js?v=7499:2:536714)
    at socket.onclose (https://meet.hashbang.sh/libs/lib-jitsi-meet.min.js?v=7499:2:534353)
r @ Logger.js:154
getGlobalOnErrorHandler @ JitsiMeetJS.ts:505
window.onerror @ middleware.ts:84
callErrorHandler @ GlobalOnErrorHandler.js:61
St.Strophe.log @ strophe.util.js:88
error @ strophe.umd.js:2020
_onClose @ strophe.umd.js:6019
socket.onclose @ strophe.umd.js:5785
Logger.js:154 2023-11-03T15:46:01.284Z [modules/xmpp/strophe.util.js] <St.Strophe.log>:  Strophe: Websocket closed unexpectedly
@michaelssingh
Copy link
Author

Any sense of direction of where to look would be helpful

@damencho
Copy link
Member

damencho commented Nov 3, 2023

Have you done port forwarding of port 30300? So when a client sends a udp packet to the public address of the bridge it will be routed to the bridge instance?

@michaelssingh
Copy link
Author

@damencho
Copy link
Member

damencho commented Nov 3, 2023

I think you are missing the ports so clients can reach jvb. Also 9090 is not required to be public. You should close that.
All you need is 443 and UDP 10000 (the default one for the brodge, if tyou have change that as I think you did use to what you have change it).

@michaelssingh
Copy link
Author

UDP for which path?

@damencho
Copy link
Member

damencho commented Nov 3, 2023

From the client to the bridge.

@michaelssingh
Copy link
Author

So all UDP traffic should be sent to the bridge?

@michaelssingh
Copy link
Author

We have something like this

rules:
  - host: meet.hashbang.sh
    http:
      paths:
      - backend:
          service:
            name: jvb
            port:
              number: 9090
        path: /colibri-ws
        pathType: Prefix
        ```

@damencho
Copy link
Member

damencho commented Nov 3, 2023

port 9090 is to be accessed only from nginx, you do not need it public.

You need this port accessible from the public internet: https://github.com/hashbang/gitops/blob/28cf6f504709011f593e9b345c49ff6f62a8ddeb/jitsi/010-jvb-service.yaml#L13

@michaelssingh
Copy link
Author

Yes but at which path will the client send requests that should end be sent to that port?

@michaelssingh
Copy link
Author

As you can see that is how it's setup with kubernetes

@damencho
Copy link
Member

damencho commented Nov 3, 2023

Yes but at which path will the client send requests that should end be sent to that port?

I don't understand what is that, maybe cause I have no idea about k8s. It is just that you need to make sure the UDP packets sent from clients are reaching the jvb process.

@michaelssingh
Copy link
Author

Yes but at which path will the client send requests that should end be sent to that port?

I don't understand what is that, maybe cause I have no idea about k8s. It is just that you need to make sure the UDP packets sent from clients are reaching the jvb process.

What I am asking is which endpoint does the client send UDP packets to? It seems like the only place is /colibri-ws

@michaelssingh
Copy link
Author

michaelssingh commented Nov 3, 2023

Does any of these logs seem relevant?

JVB 2023-11-03 11:29:51.071 INFO: [19] [hostname=prosody.jitsi.svc.cluster.local id=shard0] MucClient.initializeConnectAndJoin#350: Dispatching a thread to connect and login.JVB 2023-11-03 11:29:51.106 

WARNING: [1] ColibriWebSocketService.<init>#51: Websockets enabled, but no domains specified: URLs=[wss://meet.hashbang.sh/colibri-ws/10.244.0.102], Relay URLs=[]JVB 2023-11-03 11:29:51.251

INFO: [1] ColibriWebSocketService.registerServlet#87: Registering servlet with baseUrls = [wss://meet.hashbang.sh/colibri-ws/10.244.0.102], relayBaseUrls = []

@aaronkvanmeerten
Copy link
Member

The UDP traffic is entirely orthogonal to the /colibri-ws endpoint on the JVB. The UDP port is advertised by the JVB to the end client and the client sends UDP packets to the JVB through this port. Separately, the client also needs to make a websocket connection to the colibri-ws endpoint on the JVB. It discovers this URL from the JVB, so as long as whatever is proxying your traffic can forward to the JVB in the end, you can configure the JVB to advertise whatever colibri-ws URL you desire. Traditionally a proxy layer is used (nginx is common but not required) to route all /colibri-ws requests to a central nginx and then proxy to the appropriate bridge based info in the URL (such as the IP you see in the above).

Hope this answers your question.

@iarlemozaga
Copy link

I already reported this error in #1599

But no success till today

@Fopsala
Copy link

Fopsala commented Jan 8, 2024

In my setup I used nginx-rproxy in front of docker-jitsi-meet. I had the same issue like described in the title with every account using my jitsi instance, after updating from stable-8960-1 to stable-9111. The Console at the developer tools showed issues with colibri-ws. So I switched from using websockets to SCTP. This solved the issue, but few accounts were disconnected every few seconds. So I reactivated using websockets and disabled using sctp again and configured a websocket like described here but instead of addressing proxy_pass https://localhost:8443; I target http://jvb:9090 for colibri-ws, so I'm bypassing jitsi-meet-web and accessing jvb directly from the rproxy (for colibri-ws). That also solved the issue described at the title. If it also solves the disconnecting of Chrome/Jitsi-Meet-Desktop-APPs will be shown tomorrow...

@garloff
Copy link
Contributor

garloff commented Jan 12, 2024

@Fopsala - what is the outcome of your Desktop testing?

@Fopsala
Copy link

Fopsala commented Jan 12, 2024

it works :)

@iarlemozaga
Copy link

In my setup I used nginx-rproxy in front of docker-jitsi-meet. I had the same issue like described in the title with every account using my jitsi instance, after updating from stable-8960-1 to stable-9111. The Console at the developer tools showed issues with colibri-ws. So I switched from using websockets to SCTP. This solved the issue, but few accounts were disconnected every few seconds. So I reactivated using websockets und disabled using sctp again and configured a websocket like described here but instead of addressing proxy_pass https://localhost:8443; I target http://jvb:9090, so I'm bypassing jitsi-meet-web and accessing jvb directly from the rproxy. That also solved the issue described at the title. If it also solves the disconnecting of Chrome/Jitsi-Meet-Desktop-APPs will be shown tomorrow...

In NPM are you redirecting 8000 or 8443 to the public ip? are you enable websockes and block common exploits?
Would you mind to share this?
I tried to in the advanced change the localhost:8443 to public_IP:9090 but after put the name I cant join the call and tries tor redirect

location /xmpp-websocket {
proxy_pass http://I ADD THE PUBLIC ID:9090;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
location /colibri-ws {
proxy_pass http://I ADD THE PUBLIC ID:9090;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}

@Fopsala
Copy link

Fopsala commented Jan 12, 2024

port 9090 at jitsi-meet-jvb service is just for colibri-ws. xmpp-ws needs a different handling. for me it worked to forward xmpp-ws to jitsi-meet-web service like described in the default setting.
you probably won't offer jvb:9090 directly as a port available to the internet. in the docker-compose setup offered from jitsi at github, you can address jitsi-meet-jvb service as described in my post (with jvb), if rproxy and jvb are connected via a docker network. so proxy_pass http://jvb:9090 after location /colibri-ws { is the only line i changed in my setup to handle the described issue.

@iarlemozaga
Copy link

port 9090 at jitsi-meet-jvb service is just for colibri-ws. xmpp-ws needs a different handling. for me it worked to forward xmpp-ws to jitsi-meet-web service like described in the default setting. you probably won't offer jvb:9090 directly as a port available to the internet. in the docker-compose setup offered from jitsi at github, you can address jitsi-meet-jvb service as described in my post (with jvb), if rproxy and jvb are connected via a docker network. so proxy_pass http://jvb:9090 after location /colibri-ws { is the only line i changed in my setup to handle the described issue.

Would you mind if I send a dm to you?

@iarlemozaga
Copy link

I tried to change this proxy pass, I deleted everything and tried again but didnt work. I don't have any clue why its not working, also the docker networks are connected I added in the compose the nginx proxy manager network in each container.

@aaronkvanmeerten
Copy link
Member

This is all best addressed via questions in the jitsi community: https://community.jitsi.org

There is also some details about the various parameters to test with:
https://jitsi.github.io/handbook/docs/devops-guide/devops-guide-docker
COLIBRI_WEBSOCKET_REGEX
ENABLE_COLIBRI_WEBSOCKET_UNSAFE_REGEX

In general if this isn't proxying properly, it's likely you have a mismatch between the colibri ws regexp and the JVB identifier in the bridge or the connection between the proxy and the JVB.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants