[Operators] Videocalls troubleshooting help request

Philipp Hancke fippo at goodadvice.pages.de
Fri Jan 22 19:27:57 UTC 2016

ops, that has been rotting in my draft folder for a bit.

Am 14.01.2016 um 15:04 schrieb Andrey Utkin:
> On 14.01.2016 15:29, Philipp Hancke wrote:
>>> As I see "ICE candidates" are successfully found on both endpoints (I
>>> look at chrome://webrtc-internals), the media sources are set up, but
>>> then some magic doesn't happen. It seems irrelevant whether I request
>>> video calls, or audio-only calls.
>> chrome://webrtc-internals only shows a single peerconnection being
>> created so something is very wrong.
>> Looks like (from the websocket frames) that when calling 987 from 123
>> there is a proper jingle-message-initiation message sent. Then there is
>> a response but the actual jingle session-initate sent by 123 never
>> reaches 987.
>> I'd suggest testing with
>> http://legastero.github.io/jingle-interop-demos/stanzaio/ (or the
>> strophe version)
> Thanks a lot!
> With this testing page calls _work_, as long as I enter Full JID into
> callee address field - with Bare JID it doesn't work, at last on Prosody
> (thanks to Zash from prosody channel who came up with help quickly).

yeah. XEP-0353 handles this but is not implemented in stanza.io.

> Actually, this testing page is by far the most accessible way to make
> calls with Jabber! :) Also works the same good way in both Chrome and
> Firefox, which is exceptional.
> For now I have tested the connection between browser tabs within same
> local machine, but this is already something. So now I believe that the
> issue is on webapps side, or the interoperability on some non-essential
> features is the issue. I think so because Jappix makes this appear in logs:
> # grep Unhandled /var/log/prosody/prosody.log
> stanzarouter debug Unhandled c2s stanza: iq; xmlns=jabber:iq:privacy
> stanzarouter debug Unhandled c2s stanza: iq; xmlns=urn:xmpp:extdisco:1

You need mod_turncredentials from 
https://github.com/otalk/mod_turncredentials (or the slightly outdated 
version in the prosody repo *duckandrun*)

> stanzarouter debug Unhandled c2s stanza: iq;
> xmlns=http://jabber.org/protocol/jinglenodes
> stanzarouter debug Unhandled c2s stanza: iq;
> xmlns=http://jabber.org/protocol/pubsub
>> Also, you are only providing a stun server. ~20% of calls will not work
>> without a TURN server. But you only need to worry about that later.
> Thanks for this note.
> Could you please recommend exact implementation for TURN?

I like https://github.com/otalk/restund but coturn is more popular.

> (I'm curious to hear also recommendations for STUN-only server
> implementaions, if there are good ones)

TURN servers always serve as stun servers as well.

> I am confused with what I have read about authentication for usage of
> TURN server. Do TURN servers commonly (or by default) serve clients only
> if they are "on a whitelist"? I'm fine with no auth for now, just would
> be glad to hear a solid word of clairification on the subject.

you need authentication. With mod_turncredentials it should just 
magically work. It generates a set of credentials that the TURN server 
can verify.

More information about the Operators mailing list