It would be nice to support incoming calls from Google Voice: wocky-DEBUG: 01/31/2011 17:33:10.308088: _end_element_ns: Received stanza * iq xmlns='jabber:client' from='+xxxxxxxxxxx@voice.google.com/srvres-xxxxxxxxxxx=' to='badger.j.badger@gmail.com/87025897' id='jingle:10.176.93.42-xxxxxxxxxxx:1:xxxxxxxxxxx' type='set' * session xmlns='http://www.google.com/session' type='initiate' id='SIPxxxxxxxxxxx@10.176.222.8' initiator='+xxxxxxxxxxx@voice.google.com/srvres-xxxxxxxxxxx=' * description xmlns='http://www.google.com/session/phone' * payload-type id='0' name='PCMU' clockrate='8000' * payload-type id='101' name='telephone-event' * transport xmlns='http://www.google.com/transport/raw-udp' behind-symmetric-nat='false' can-receive-from-symmetric-nat='false' * transport xmlns='http://www.google.com/transport/p2p' * nick xmlns='http://jabber.org/protocol/nick' "Badger Badger" gabble/media-channel-DEBUG: 01/31/2011 17:33:10.308218: gabble_jingle_session_init: Initializing the jingle session 0x1c32600 gabble/media-channel-DEBUG: 01/31/2011 17:33:10.308279: create_session: new session (+xxxxxxxxxxx@voice.google.com/srvres-xxxxxxxxxxx=, SIPxxxxxxxxxxx@10.176.222.8) @ 0x1c32600 gabble/media-channel-DEBUG: 01/31/2011 17:33:10.308315: gabble_jingle_session_parse: jingle action 'initiate' from '+xxxxxxxxxxx@voice.google.com/srvres-xxxxxxxxxxx=' in session 'SIPxxxxxxxxxxx@10.176.222.8' dialect 2 state 0 gabble/media-channel-DEBUG: 01/31/2011 17:33:10.308343: _each_content_add: namespace: http://www.google.com/session/phone gabble/media-channel-DEBUG: 01/31/2011 17:33:10.308387: create_content: session creating new content name (null), type 0, conn 0x1c5a0d0, jf 0x1c3b180 gabble/media-channel-DEBUG: 01/31/2011 17:33:10.308446: gabble_jingle_content_init: 0x1c3db90 gabble/media-channel-DEBUG: 01/31/2011 17:33:10.308511: gabble_jingle_media_rtp_dispose: dispose called gabble/media-channel-DEBUG: 01/31/2011 17:33:10.308562: gabble_jingle_content_dispose: 0x1c3db90 gabble/media-channel-DEBUG: 01/31/2011 17:33:10.308605: jingle_cb: NAKing with error: unsupported content transport
I second this request. Also, it appears that there is a problem handling the session ID which causes it to not properly terminate (which I think results in Google Voice not realizing the call did not go through). I'm basing that second bug on the fact that it appears that the response 'session unknown' is sent to the request to terminate the failed session. My log from incoming call to session error: [ My GV number has been replaced with ##########, and my gtalk e-mail with coop@mydomain.com] wocky-DEBUG: 05/05/2011 14:14:05.217756: _end_element_ns: Received stanza * iq xmlns='jabber:client' from='+1##########@voice.google.com/srvres-MTAuMTc2LjE1LjY6OTgyOQ==' to='coop@mydomain.com/43aa28af' id='jingle:10.176.15.6-13660829:1:B7F22526' type='set' * session xmlns='http://www.google.com/session' type='initiate' id='SIP1885103302@10.177.116.8' initiator='+1##########@voice.google.com/srvres-MTAuMTc2LjE1LjY6OTgyOQ==' * description xmlns='http://www.google.com/session/phone' * payload-type id='0' name='PCMU' clockrate='8000' * payload-type id='101' name='telephone-event' * transport xmlns='http://www.google.com/transport/raw-udp' behind-symmetric-nat='false' can-receive-from-symmetric-nat='false' * transport xmlns='http://www.google.com/transport/p2p' gabble/media-channel-DEBUG: 05/05/2011 14:14:05.218044: gabble_jingle_session_init (jingle-session.c:191): Initializing the jingle session 0x1203e90 gabble/media-channel-DEBUG: 05/05/2011 14:14:05.218169: create_session (jingle-factory.c:889): new session (+1##########@voice.google.com/srvres-MTAuMTc2LjE1LjY6OTgyOQ==, SIP1885103302@10.177.116.8) @ 0x1203e90 gabble/media-channel-DEBUG: 05/05/2011 14:14:05.218242: gabble_jingle_session_parse (jingle-session.c:1600): jingle action 'initiate' from '+1##########@voice.google.com/srvres-MTAuMTc2LjE1LjY6OTgyOQ==' in session 'SIP1885103302@10.177.116.8' dialect 2 state 0 gabble/media-channel-DEBUG: 05/05/2011 14:14:05.218302: _each_content_add (jingle-session.c:879): namespace: http://www.google.com/session/phone gabble/media-channel-DEBUG: 05/05/2011 14:14:05.218365: create_content (jingle-session.c:806): session creating new content name (null), type 0, conn 0x12580c0, jf 0x120ca20 gabble/media-channel-DEBUG: 05/05/2011 14:14:05.218525: gabble_jingle_content_init (jingle-content.c:115): 0x1210920 gabble/media-channel-DEBUG: 05/05/2011 14:14:05.218631: gabble_jingle_media_rtp_dispose (jingle-media-rtp.c:216): dispose called gabble/media-channel-DEBUG: 05/05/2011 14:14:05.218693: gabble_jingle_content_dispose (jingle-content.c:137): 0x1210920 gabble/media-channel-DEBUG: 05/05/2011 14:14:05.218751: jingle_cb (jingle-factory.c:832): NAKing with error: unsupported content transport wocky-DEBUG: 05/05/2011 14:14:05.218900: _write_node_tree: Serializing tree: * iq xmlns='jabber:client' type='error' to='+1##########@voice.google.com/srvres-MTAuMTc2LjE1LjY6OTgyOQ==' id='jingle:10.176.15.6-13660829:1:B7F22526' * session xmlns='http://www.google.com/session' type='initiate' id='SIP1885103302@10.177.116.8' initiator='+1##########@voice.google.com/srvres-MTAuMTc2LjE1LjY6OTgyOQ==' * description xmlns='http://www.google.com/session/phone' * payload-type id='0' name='PCMU' clockrate='8000' * payload-type id='101' name='telephone-event' * transport xmlns='http://www.google.com/transport/raw-udp' behind-symmetric-nat='false' can-receive-from-symmetric-nat='false' * transport xmlns='http://www.google.com/transport/p2p' * error code='400' type='modify' * bad-request xmlns='urn:ietf:params:xml:ns:xmpp-stanzas' * text "unsupported content transport" gabble/media-channel-DEBUG: 05/05/2011 14:14:05.219139: gabble_jingle_session_terminate (jingle-session.c:2096): we are terminating this session gabble/media-channel-DEBUG: 05/05/2011 14:14:05.219223: set_state (jingle-session.c:2014): Setting state of JingleSession: 0x1203e90 (priv = 0x1203ec0) from 0 to 5 gabble/media-channel-DEBUG: 05/05/2011 14:14:05.219294: session_terminated_cb (jingle-factory.c:955): removing terminated session with key 719 +1##########@voice.google.com/srvres-MTAuMTc2LjE1LjY6OTgyOQ== SIP1885103302@10.177.116.8 gabble/media-channel-DEBUG: 05/05/2011 14:14:05.219358: gabble_jingle_session_dispose (jingle-session.c:215): called wocky-DEBUG: 05/05/2011 14:14:05.429012: _end_element_ns: Received stanza * iq xmlns='jabber:client' from='+1##########@voice.google.com/srvres-MTAuMTc2LjE1LjY6OTgyOQ==' to='coop@mydomain.com/43aa28af' id='jingle:10.176.15.6-13660829:1:B7F22527' type='set' * session xmlns='http://www.google.com/session' type='terminate' id='SIP1885103302@10.177.116.8' initiator='+1##########@voice.google.com/srvres-MTAuMTc2LjE1LjY6OTgyOQ==' * internal-server-error xmlns='http://www.google.com/session/phone' "Received error to Jingle stanza" gabble/media-channel-DEBUG: 05/05/2011 14:14:05.429335: jingle_cb (jingle-factory.c:832): NAKing with error: session SIP1885103302@10.177.116.8 is unknown wocky-DEBUG: 05/05/2011 14:14:05.429470: _write_node_tree: Serializing tree: * iq xmlns='jabber:client' type='error' to='+1##########@voice.google.com/srvres-MTAuMTc2LjE1LjY6OTgyOQ==' id='jingle:10.176.15.6-13660829:1:B7F22527' * session xmlns='http://www.google.com/session' type='terminate' id='SIP1885103302@10.177.116.8' initiator='+1##########@voice.google.com/srvres-MTAuMTc2LjE1LjY6OTgyOQ==' * internal-server-error xmlns='http://www.google.com/session/phone' "Received error to Jingle stanza" * error code='404' type='cancel' * item-not-found xmlns='urn:ietf:params:xml:ns:xmpp-stanzas' * unknown-session xmlns='urn:xmpp:jingle:errors:1' * text "session SIP1885103302@10.177.116.8 is unknown"
Hi Danielle, how to config to receive call from Google Voice and repro this bug?
(In reply to comment #2) > Hi Danielle, how to config to receive call from Google Voice and repro this > bug? I believe it is the same (from Google's point of view) as receiving calls in GMail. See http://www.google.com/support/chat/bin/answer.py?answer=187936 for how to do that. To make that one outgoing call, you may need to install this: http://www.google.com/chat/voice/
The problem here is that Google Voice includes two transports in the offer. Our Jingle code finds the first <transport> element, and checks whether it is in a namespace we understand. We do not implement the http://www.google.com/transport/raw-udp transport so we reject the call. The top patch on http://cgit.collabora.com/git/user/wjt/wocky/log/?h=google-rawudp is an untested patch to try all <transport> elements until we find one we understand, which should make incoming calls from Google Voice work. I do not have a Google Voice account so I cannot test it. (The rest of that branch implements Google's raw UDP transport. It, too, is untested, because I do not have a Google Voice account. Note that we probably want to prefer the p2p transport anyway.)
(In reply to comment #4) > The problem here is that Google Voice includes two transports in the offer. > Our Jingle code finds the first <transport> element, and checks whether it > is in a namespace we understand. We do not implement the > http://www.google.com/transport/raw-udp transport so we reject the call. > > The top patch on > http://cgit.collabora.com/git/user/wjt/wocky/log/?h=google-rawudp is an > untested patch to try all <transport> elements until we find one we > understand, which should make incoming calls from Google Voice work. I do > not have a Google Voice account so I cannot test it. I'm not really familiar with the Telepathy stack so I'm not sure what the easiest way to test it would be, but I do happen to have a Google Voice account which I'm not using yet that I could give you temporary access to. If you're interested let me know.
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/telepathy/telepathy-gabble/issues/122.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.