ejabberd + stanza.ioを使用してリアルタイムのメッセージングWebサイトを作成しました。 すべてが完全に機能しています。 今、私はジングルプロトコールを使ってWebrtcオーディオ/ビデオを実装したいと考えています。 これは私が接続するために使用私のJSコードです:Stanza.io WebRTCの回答を作成できません
var client = XMPP.createClient({
jid: xmpp_user+'@'+XMPP_DOMAIN,
password: cu.auth.user_password,
transport: 'websocket',
wsURL: "ws://"+xms+":5280/websocket/"
});
client.jingle.config.debug = true;
client.on('session:started', function() {
client.enableCarbons();
client.getRoster(function (err, resp) {
client.updateCaps();
client.sendPresence({
caps: client.disco.caps
});
});
});
client.connect();
問題は、私は他のアプリ(AstraChat:ジングルをサポートするiOSアプリ)からユーザーを呼び出したときである私は、ブラウザのログにこれを取得する:
Jingle: 67bzrsog243: session-initiate undefined undefined
Jingle: 67bzrsog243: Could not create WebRTC answer undefined undefined
これはastrachatが送信されるXMLです:
<iq xmlns='jabber:client' xml:lang='en' to='[email protected]/352555070032013318140962' from='[email protected]/AstraChat-iOS-21820150' type='get' id='3e8kjajc22'><query xmlns='http://jabber.org/protocol/disco#info'/></iq>
<r xmlns='urn:xmpp:sm:3'/>
<a h='1' xmlns='urn:xmpp:sm:3'/>
<a h='2' xmlns='urn:xmpp:sm:3'/>
jingle:created
iq:set:jingle
<iq xmlns='jabber:client' xml:lang='en' to='[email protected]/352555070032013318140962' from='[email protected]/AstraChat-iOS-21820150' type='set' id='3e8kjajc23'><jingle xmlns='urn:xmpp:jingle:1' action='session-initiate' initiator='[email protected]/AstraChat-iOS-21820150' responder='[email protected]/352555070032013318140962' sid='3e8kjajc24'><content creator='initiator' name='voice'><description xmlns='urn:xmpp:jingle:apps:rtp:1' media='audio'><payload-type id='101' name='speex' clockrate='8000'/></description><transport xmlns='urn:xmpp:jingle:transports:ice-udp:1' pwd='TC5NsD6IEQGXeDO8d5/3OU' ufrag='yA0z'/></content></jingle></iq>
<r xmlns='urn:xmpp:sm:3'/>
Jingle: 3e8kjajc24: session-initiate undefined undefined
Could not create WebRTC answer undefined undefined
私は本当にすべてのヘルプは理解されるであろう、という解決方法についての見当もつかない。
あなたはastrachatが送信しているjingle session initiate stanzaのxmlを表示できますか?そのボップのものはWebRTCと互換性がないかもしれません。 –
@PhilippHancke iveはastrachatが送っているスタンザをカバーするために私の答えを更新しました –