I have installed jitsi Meet using below link on ubuntu 22.04
https://meetrix.io/blog/webrtc/jitsi/setup-%20install-jitsi-meet-jvb-on-ubuntu-20.html
Up to 2 participant its connecting audio and video , But after 3rd participant it is disconnecting audio and video , when any one removed from 3 , automatically connecting audio and video.
in browser console it shows
BridgeChannel.js:87 WebSocket connection to 'wss://meet.**domian.com/colibri-ws/default-id/376f2ff95d8ada38/319d2637?pwd=u38l9jh17sgk4pkdte6ikc9h0' failed:
_initWebSocket # BridgeChannel.js:87
t # BridgeChannel.js:106
Logger.js:154 2022-12-23T15:00:58.328Z [modules/RTC/BridgeChannel.js] <e.onclose>: Channel closed by server
Related
Architectute
A webPage uses RTCPeerConnection to create a connection. It uses a STUN and a TURN server in its configuration. It creates an offer and sends the Offer to the remote client only after all the candidates have been gathered
if(pc.iceGatheringState === "complete"){
const resp = await fetch("REMOTE URL", {
method: "post",
body: JSON.stringify({
offer: btoa(JSON.stringify(pc.localDescription)),
}),
});
const sdp = await resp.text();
pc.setRemoteDescription(
new RTCSessionDescription(JSON.parse(atob(sdp)))
).catch((e) => console.log(e));
}
A remote (GO) server uses a REST API to accept the offer and respond with the answer. The answer is sent only after all the candidates have been gathered on the remote peer. I.e. after the "" candidate has been received
The remote server has a local RTP stream which is being sent to the host. The host adds a transceiver before it sends the offer
pc.addTransceiver("video", { direction: "recvonly" });
When an onTrack event is received, the stream is added to a variable and ONLY set as srcObject of the <video> component when the iceConnectionState changes to connected
Issue
The above setup works perfectly in case of a local network. Both, the host and the peer chose a host candidate and the video plays perfectly.
When using a remote connection, both, in case of a STUN (srflx) candidate and a TURN(relay) candidate, the video does not play.
chrome://webrtc-internals clearly shows the the Transport has chosen the right candidates but there is no traffic on the local candidate chosen.
I can see using the UDP dump on the remote peer that the video stream is being sent perfectly.
Debug Info
On remote network, using a srflex candidate, the nack and pli counts are very high compared to a local network
For approx 15 sec of video
pliCount:
local: 5
remote: 221
nackCount:
local: 7
remote: 2577
That sounds like packet loss to me. There are a few things that could be causing it.
Can you try lowering the bitrate of what you are sending? See if congestion is causing it.
Can you trying lowering the MTU? If you are forwarding packets from FFMPEG try appending pkt_size to the URL like this
I carefully followed (repeated twice) all the prerequisites and successfully connected to Azure IoT Hub. Uploaded Device Code for Get-Started Example (send the IoT DevKit sensor data to the IoT Hub). and I'm getting the following error in the final step.
[Starting] Opening the serial port - COM4
[Info] Opened the serial port - COM4
2019-02-09 06:31:12 INFO: >>>IoTHubClient_LL_SendEventAsync accepted message for transmission to IoT Hub.
2019-02-09 06:31:17 ERROR: File:C:\Users\v-zuhu\AppData\Local\Arduino15\packages\AZ3166\hardware\stm32f4\1.6.0\cores\arduino\azure-iot-sdk-c\iothub_client\src\iothubtransport_mqtt_common.c Func:mqtt_operation_complete_callback Line:1724, Connection Not Accepted: 0x5: Not Authorized
[Done] Closed the serial port
I attempted recreating the example from scratch and noted multiple errors of the following type during DevKitDPS.ino upload:
..\AppData\Local\Arduino15\packages\AZ3166\hardware\stm32f4\1.6.1\system/platform/toolchain.h:23:2: warning: #warning toolchain.h has been replaced by mbed_toolchain.h, please update to mbed_toolchain.h [since mbed-os-5.3] [-Wcpp]
#warning toolchain.h has been replaced by mbed_toolchain.h, please update to mbed_toolchain.h [since mbed-os-5.3]
..\examples\devkit_dps\Device\DevKitDPS.ino:12:32: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
char* Global_Device_Endpoint = "global.azure-devices-provisioning.net";
Researched this issue and found following links:
https://github.com/ARMmbed/mbed-os/issues/3876
toolchain.h has been replaced by mbed_toolchain.h
I don't how to proceed with this and any guidance will be much appreciated.
In bluez5.50, after connection establishment has done if I unpair a device and again put in discovery mode it's not able to connect(expected behavior ). But I want to connect BLE device to same running stack.
hcidump also showing the same event while BLE device goes to sleep mode or while got unpair form device side.
HCI Event: Disconn Complete (0x05) plen 4
status 0x00 handle 69 reason 0x16
Reason: Connection Terminated by Local Host
So not able to find it out which event exactly occur (sleep/unpair). can someone provide me solution how to find it out unpair event and try to connect it again?
What are you using for your connection pairing? Can you try doing this over bluetoothctl as follows:-
#bluetoothctl
[bluetoothctl]scan on #Scan for a few seconds until you find your device
[bluetoothctl]scan off #Stop scanning once you have found your device
[bluetoothctl]connect 00:11:22:33:44:55
[bluetoothctl]pair 00:11:22:33:44:55
[bluetoothctl]disconnect 00:11:22:33:44:55
[bluetoothctl]remove 00:11:22:33:44:55 # This is if you want to forget the device.
[bluetoothctl]scan on #Scan for a few seconds until you find your device
[bluetoothctl]scan off #Stop scanning once you have found your device
[bluetoothctl]connect 00:11:22:33:44:55
If this doesn't work, try and use btmon in another terminal and see why the connection is failing.
I hope this helps.
I just install Kamailio 4.4.5 + RTPEngine on Ubuntu Server 16.04
all config copy from https://github.com/whisk/WEBRTC-to-SIP
And using SIP.js latest version to make call between 2 chrome browser.
SIP user register successfully and can using text chat
But when User Invite another user any his Accept call, get this error
Failed to set remote answer sdp: Called with SDP without DTLS fingerprint.
How to solve this issue???
Use sdp_with_transport_like(...) instead of sdp_with_transport(...), because the transport string is UDP/TLS/RTP/SAVPF and the second function is doing an exact match, but the parameter in referred example is only RTP/SAVPF.
Recently I've been installing upwork application on my debian system.It has installed fine.But when I try to launch it from cli typing: upwork
a bunch of errors happen.
[1008/213534:ERROR:browser_main_loop.cc(173)] Running without the SUID sandbox! See https://code.google.com/p/chromium/wiki/LinuxSUIDSandboxDevelopment for more information on developing with the sandbox on.
[1008/213535:ERROR:renderer_main.cc(200)] Running without renderer sandbox
[1008/213542:ERROR:renderer_main.cc(200)] Running without renderer sandbox
[1008/213542:WARNING:channel.cc(549)] Failed to send message to ack remove remote endpoint (local ID 1, remote ID 1)
[1008/213542:WARNING:channel.cc(549)] Failed to send message to ack remove remote endpoint (local ID 2147483648, remote ID 2)
[1008/213542:ERROR:channel.cc(300)] RawChannel read error (connection broken)
[1008/213542:ERROR:renderer_main.cc(200)] Running without renderer sandbox
[1008/213543:WARNING:channel.cc(549)] Failed to send message to ack remove remote endpoint (local ID 1, remote ID 1)
[1008/213543:WARNING:nss_ssl_util.cc(370)] Unknown SSL error -12218 (SSL_ERROR_ENCRYPTION_FAILURE) mapped to net::ERR_SSL_PROTOCOL_ERROR
[1008/213600:WARNING:nss_ssl_util.cc(370)] Unknown SSL error -12218 (SSL_ERROR_ENCRYPTION_FAILURE) mapped to net::ERR_SSL_PROTOCOL_ERROR
[1008/213600:WARNING:nss_ssl_util.cc(370)] Unknown SSL error -12218 (SSL_ERROR_ENCRYPTION_FAILURE) mapped to net::ERR_SSL_PROTOCOL_ERROR
[1008/214550:WARNING:channel.cc(549)] Failed to send message to ack remove remote endpoint (local ID 1, remote ID 1)
[
How to overcome this errors?
After online searching the decision was found on upwork site forum
unknown ssl error
The problem was how to use the 2 versions of libnss3 packet simultaneously.Libnss3 goes as a security related packet so instead of downgrading it on the system you can simply download the old version of libnss3 compatible with upwork app and then dynamically add a path to this old version to the linker when you need to use upwork app, while the system will have the newest one.