For Workers & Pages, what is the name of the domain?
Not used
What is the error number?
empty_track_error
What is the error message?
No track data from remote peer. Make sure the publisher peer is sending packets for this track
What is the issue or error you’re encountering
We are currently integrating Cloudflare Calls into our mobile application while also using TURN servers. However, we are facing connectivity issues when users connect from different networks (ISPs). To elaborate, suppose there are three ISPs: A: Cellular Network B: WiFi Network (with connection issues) C: WiFi Network We are in the final testing phase of the integration and are verifying whether all possible connection combinations work. Each of our testers is joining from different networks. For simplicity, let’s consider two testers. Connection Matrix: A → A: Connected B → B: Connected C → C: Connected A → B: No Connection A → C: Connected B → C: Connected The issue occurs only in the A → B connection. Upon adding remote tracks, the response looks something like this { "requiresImmediateRenegotiation": false, "tracks": [ { "sessionId": "******", "trackName": "*******", "mid": "", "errorCode": "empty_track_error", "errorDescription": "No track data from remote peer. Make sure the publisher peer is sending packets for this track" } ] } It happens everytime. Any help in diagnosing and resolving this issue would be greatly appreciated.
Just to double check: in the subject you are indicating a TURN error. But then your message doesn’t contain TURN specific problems. Can you verify in the browser (assuming that is your client) that you are getting TURN candidates?
Thanks for your response.
I could guarantee that both of the peers are receiving turn candidates.
For what’s it worth, I used the “Orange Meets” demo app too (https://demo.orange.cloudflare.dev/)
with two users connecting through the same problematic network combination. It didn’t work.
The server response for pulling remote tracks looks like this:
{
"requiresImmediateRenegotiation": false,
"tracks": [
{
"sessionId": "f5643ee09c73e4e663150af4f5a94d78",
"trackName": "986cd215-dc5f-468b-9f51-3fa138663dde",
"mid": "",
"errorCode": "empty_track_error",
"errorDescription": "No track data from remote peer. Make sure the publisher peer is sending packets for this track"
},
{
"sessionId": "f5643ee09c73e4e663150af4f5a94d78",
"trackName": "c260e8fc-2838-471e-a77e-08d86ab893a3",
"mid": "",
"errorCode": "empty_track_error",
"errorDescription": "No track data from remote peer. Make sure the publisher peer is sending packets for this track"
}
]
}
and the console error looks like this
chunk-K75QSKQC.js:5085 Uncaught Error: Missing Track Info
at chunk-K75QSKQC.js:5085:12720
(anonymous) @ chunk-K75QSKQC.js:5085
Promise.then
(anonymous) @ chunk-K75QSKQC.js:5085
setTimeout
(anonymous) @ chunk-K75QSKQC.js:5085
r._trySubscribe @ chunk-K75QSKQC.js:20
(anonymous) @ chunk-K75QSKQC.js:20
bi @ chunk-K75QSKQC.js:20
r.subscribe @ chunk-K75QSKQC.js:20
p @ chunk-K75QSKQC.js:20
h @ chunk-K75QSKQC.js:20
(anonymous) @ chunk-K75QSKQC.js:20
u._error @ chunk-K75QSKQC.js:20
e.error @ chunk-K75QSKQC.js:20
(anonymous) @ chunk-K75QSKQC.js:5085