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

ICE connection fails in Firefox #260

Open
infojunkie opened this issue Oct 14, 2024 · 1 comment
Open

ICE connection fails in Firefox #260

infojunkie opened this issue Oct 14, 2024 · 1 comment

Comments

@infojunkie
Copy link

Trying to run your distributed metronome demo https://github.com/chrisguttandin/web-audio-metronome-demo in Firefox, I get the following error, repeated thousands of times:

WebRTC: ICE failed, add a TURN server and see about:webrtc for more details

Since it's the Timing Provider that establishes the connection, I thought I'd ask you for your advice before I jump in the code :-D

@infojunkie
Copy link
Author

infojunkie commented Oct 14, 2024

After reading the related Firefox bug https://bugzilla.mozilla.org/show_bug.cgi?id=1659672, I switched from using http://localhost to the actual machine IP, and now WebRTC no longer complains, but I get this error:

Firefox can’t establish a connection to the server at wss://matchmaker.suenc.io/?providerId=OBFUSCATED.

Looks like a CORS issue, but is it on the local side or the Suenc side?

GET
wss://matchmaker.suenc.io/?providerId=OBFUSCATED
NS_ERROR_WEBSOCKET_CONNECTION_REFUSED

./node_modules/timing-provider/build/es2019/module.js/timingProviderConstructor<
module.js:18:128
./node_modules/timing-provider/build/es2019/factories/signaling-factory.js/createSignalingFactory/<
signaling-factory.js:5
./node_modules/timing-provider/build/es2019/factories/timing-provider-constructor.js/createTimingProviderConstructor/_createClient/this._subscription<
timing-provider-constructor.js:145
./node_modules/rxjs/dist/esm5/internal/observable/defer.js/defer/<
defer.js:5:17
./node_modules/rxjs/dist/esm5/internal/Observable.js/Observable.prototype._trySubscribe
Observable.js:38
./node_modules/rxjs/dist/esm5/internal/Observable.js/Observable.prototype.subscribe/<
Observable.js:32
errorContext
errorContext.js:19
./node_modules/rxjs/dist/esm5/internal/Observable.js/Observable.prototype.subscribe
Observable.js:23:20
doInnerSub
mergeInternals.js:19:17
outerNext
mergeInternals.js:14:39
./node_modules/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js/OperatorSubscriber/_this._next<
OperatorSubscriber.js:15
./node_modules/rxjs/dist/esm5/internal/Subscriber.js/Subscriber.prototype.next
Subscriber.js:34
./node_modules/rxjs/dist/esm5/internal/observable/innerFrom.js/fromArrayLike/<
innerFrom.js:51
./node_modules/rxjs/dist/esm5/internal/Observable.js/Observable.prototype._trySubscribe
Observable.js:38
./node_modules/rxjs/dist/esm5/internal/Observable.js/Observable.prototype.subscribe/<
Observable.js:32
errorContext
errorContext.js:19
./node_modules/rxjs/dist/esm5/internal/Observable.js/Observable.prototype.subscribe
Observable.js:23:20
mergeInternals
mergeInternals.js:53
./node_modules/rxjs/dist/esm5/internal/operators/mergeMap.js/mergeMap/<
mergeMap.js:14:72
./node_modules/rxjs/dist/esm5/internal/util/lift.js/operate/</<
lift.js:10
./node_modules/rxjs/dist/esm5/internal/Observable.js/Observable.prototype.subscribe/<
Observable.js:27
errorContext
errorContext.js:19
./node_modules/rxjs/dist/esm5/internal/Observable.js/Observable.prototype.subscribe
Observable.js:23:20
subscribeForRetry
retry.js:25
resub_1
retry.js:36
./node_modules/rxjs/dist/esm5/internal/operators/retry.js/retry/</subscribeForRetry/innerSub</notifierSubscriber_1<
retry.js:46
./node_modules/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js/OperatorSubscriber/_this._next<
OperatorSubscriber.js:15
./node_modules/rxjs/dist/esm5/internal/Subscriber.js/Subscriber.prototype.next
Subscriber.js:34
./node_modules/rxjs/dist/esm5/internal/observable/timer.js/timer/</<
timer.js:25
./node_modules/rxjs/dist/esm5/internal/scheduler/AsyncAction.js/AsyncAction.prototype._execute
AsyncAction.js:62
./node_modules/rxjs/dist/esm5/internal/scheduler/AsyncAction.js/AsyncAction.prototype.execute
AsyncAction.js:50
./node_modules/rxjs/dist/esm5/internal/scheduler/AsyncScheduler.js/AsyncScheduler.prototype.flush
AsyncScheduler.js:21

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

1 participant