TURN not working with Firefox

I implemented TURN instead of jitsi’s TCP but it seems it only works on chrome.
I got the following error when using Firefox, Please tell me the cause and solution to resolve it.
Thank for support.

Exit UDP socket connected

UDP socket error:Internal error at /build/firefox-clezVp/firefox-70.0.1+build1/dom/network/UDPSocketParent.cpp:269 this=0x7fd8e691f000

ICE(PC:1573615950475818 (id=6442450963 url=https://my-domain.com/hello)): relay/proxy only option results in ICE TCP being disabled

ICE(PC:1573615950475818 (id=6442450963 url=https://my-domain.com/hello)): couldn't create any valid candidates

ICE(PC:1573615950475818 (id=6442450963 url=https://my-domain.com/hello)): peer (PC:1573615950475818 (id=6442450963 url=https://my-domain.com/hello):default) has no stream matching stream PC:1573615950475818 (id=6442450963 url=https://my-domain.com/hello) transport-id=transport_0 - 99a4b486:6ec2826b273e9eb8c000157898df7771

ICE(PC:1573615950475818 (id=6442450963 url=https://my-domain.com/hello)): local addresses already set, no work to do

ICE(PC:1573615950475818 (id=6442450963 url=https://my-domain.com/hello)): relay/proxy only option results in ICE TCP being disabled

ICE(PC:1573615950475818 (id=6442450963 url=https://my-domain.com/hello)): couldn't create any valid candidates

Exit UDP socket connected

ICE(PC:1573616338389669 (id=6442450971 url=https://my-domain.com/hello)): relay/proxy only option results in ICE TCP being disabled

ICE(PC:1573616338389669 (id=6442450971 url=https://my-domain.com/hello)): couldn't create any valid candidates

ICE(PC:1573616338389669 (id=6442450971 url=https://my-domain.com/hello)): peer (PC:1573616338389669 (id=6442450971 url=https://my-domain.com/hello):default) has no stream matching stream PC:1573616338389669 (id=6442450971 url=https://my-domain.com/hello) transport-id=transport_0 - e3140f43:fe4f6b635153284eeadd93ecba310f85

ICE(PC:1573616338389669 (id=6442450971 url=https://my-domain.com/hello)): local addresses already set, no work to do

ICE(PC:1573616338389669 (id=6442450971 url=https://my-domain.com/hello)): relay/proxy only option results in ICE TCP being disabled

ICE(PC:1573616338389669 (id=6442450971 url=https://my-domain.com/hello)): couldn't create any valid candidates

ICE(PC:1573616338389669 (id=6442450971 url=https://my-domain.com/hello)): local addresses already set, no work to do

ICE(PC:1573616338389669 (id=6442450971 url=https://my-domain.com/hello)): relay/proxy only option results in ICE TCP being disabled

ICE(PC:1573616338389669 (id=6442450971 url=https://my-domain.com/hello)): couldn't create any valid candidates

Exit UDP socket connected

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): relay/proxy only option results in ICE TCP being disabled

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): peer (PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default) has no stream matching stream PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello) transport-id=transport_0 - 37d42fae:b30c4ad40b635f54bbdc0133d10ca58e

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): peer (PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default) no streams with non-empty check lists

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): peer (PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default) no streams with pre-answer requests

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): peer (PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default) no checks to start

Write buffer not empty for IP4:xx.xxx.xx.xxx:443/TCP 44 - already armed (@0x7fd8da7f35f4), not connected

NrSocketProxy::OnClose 0x7fd8da7a5400 reason=2147500037 name=NS_ERROR_FAILURE

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): local addresses already set, no work to do

ICE-PEER(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default)/ICE-STREAM(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello) transport-id=transport_0 - 37d42fae:b30c4ad40b635f54bbdc0133d10ca58e): Starting check timer for stream.

ICE-PEER(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default): no FROZEN/WAITING pairs for PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello) transport-id=transport_0 - 37d42fae:b30c4ad40b635f54bbdc0133d10ca58e

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): peer (PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default) is now checking

ICE-PEER(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default)/ICE-STREAM(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello) transport-id=transport_0 - 37d42fae:b30c4ad40b635f54bbdc0133d10ca58e): Starting check timer for stream.

ICE-PEER(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default): no FROZEN/WAITING pairs for PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello) transport-id=transport_0 - 37d42fae:b30c4ad40b635f54bbdc0133d10ca58e

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): peer (PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default) no streams with non-empty check lists

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): peer (PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default) no streams with pre-answer requests

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): peer (PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default) no checks to start

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): local addresses already set, no work to do

ICE-PEER(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default)/ICE-STREAM(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello) transport-id=transport_0 - 37d42fae:b30c4ad40b635f54bbdc0133d10ca58e): Starting check timer for stream.

ICE-PEER(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default): no FROZEN/WAITING pairs for PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello) transport-id=transport_0 - 37d42fae:b30c4ad40b635f54bbdc0133d10ca58e

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): peer (PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default) is now checking

ICE-PEER(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default)/ICE-STREAM(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello) transport-id=transport_0 - 37d42fae:b30c4ad40b635f54bbdc0133d10ca58e): Starting check timer for stream.

ICE-PEER(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default): no FROZEN/WAITING pairs for PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello) transport-id=transport_0 - 37d42fae:b30c4ad40b635f54bbdc0133d10ca58e

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): peer (PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default) no streams with non-empty check lists

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): peer (PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default) no streams with pre-answer requests

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): peer (PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello):default) no checks to start

STUN-CLIENT(relay(IP4:192.168.3.0:0/TLS|turn.my-domain.com:443)::TURN): Timed out

TURN(relay(IP4:192.168.3.0:0/TLS|turn.my-domain.com:443)): mode 20, nr_turn_client_error_cb

TURN(relay(IP4:192.168.3.0:0/TLS|turn.my-domain.com:443)) failed

TURN(relay(IP4:192.168.3.0:0/TLS|turn.my-domain.com:443)): cancelling

ICE-CANDIDATE(relay(IP4:192.168.3.0:0/TLS|turn.my-domain.com:443)): nr_turn_allocated_cb called with state 4

ICE-CANDIDATE(relay(IP4:192.168.3.0:0/TLS|turn.my-domain.com:443)): nr_turn_allocated_cb failed

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello))/CAND(relay(IP4:192.168.3.0:0/TLS|turn.my-domain.com:443)): failed to initialize, 0 remaining

ICE(PC:1573616453205598 (id=6442450974 url=https://my-domain.com/hello)): All candidates initialized

+++++++ END ++++++++
1 Like

I just tested it here with Chrome to Firefox and turns is working fine.

Can you share your turn prosody config. And you had enabled in config.js useStunTurn in the p2p part and in the global part?

Yes, I had enabled it, It’s working fine with chrome. But, I not working in firefox,
Also, I see some error on Firefox:

[modules/RTC/BridgeChannel.js] <value>:  Bridge Channel send: no opened channel.
1 Like

Hi,
I notice the same error with Firefox and TURN access to the videobridge. It breaks the data channel to the videobridge. Maybe the websocket openBridgeChannel could be a solution ?
Regards,
Damien

2 Likes

@Damien_FETIS
It’s working when I use websocket.
Thank you so much.

1 Like

@Damien_FETIS
I see this error when change openBridgeChannel to websocket, How to fix it? :frowning:

Logger.js:125 [JitsiConference.js] <e.sendMessage>:  Failed to send a ping request or response.

I have the same problem, it works in Chrome and jitsi-meet-electron but not in Firefox if port 10000 is firewalled.