[Freeswitch-users] Google voice call fails
Terry Barnum
terry at digital-outpost.com
Sun Sep 1 21:45:16 MSD 2013
I stopped fs, did a fresh git clone git://git.freeswitch.org/freeswitch.git, edited modules.conf and did a make && make install but still no joy making a call via google voice. dingaling status shows AUTHORIZED. FreeSWITCH (Version 1.5.6b git dd6b8a8 2013-08-31 03:41:31Z)
I set dingaling_conf.xml to debug and it reports an error 302 when attempting a call. I see others have had this error in the past but I couldn't find a definitive answer. Can anyone shed light on this? Thanks for any pointers. Here's a snippet of the dingaling debug output:
2013-09-01 08:48:24.504839 [NOTICE] libdingaling.c:1749 SecSEND:
-------------------------------------------------------------------------------
<iq xmlns="jabber:client" from="USER at gmail.com/talk5CB5BB1C" to="+760XXXXXXX at voice.google.com" type="set" id="300">
<ses:session xmlns:ses="http://www.google.com/session" type="initiate" id="2395886559" initiator="USER at gmail.com/talk5CB5BB1C">
<pho:description xmlns:pho="http://www.google.com/session/phone">
<pho:payload-type id="0" name="PCMU" clockrate="8000" bitrate="64000" xmlns:pho="http://www.google.com/session/phone"></pho:payload-type>
</pho:description>
</ses:session>
</iq>
2013-09-01 08:48:24.604828 [INFO] libdingaling.c:1747 SecRECV:
-------------------------------------------------------------------------------
<iq from="+760XXXXXXX at voice.google.com" to="USER at gmail.com/talk5CB5BB1C" type="error" id="300">
<ses:session type="initiate" id="2395886559" initiator="USER at gmail.com/talk5CB5BB1C" xmlns:ses="http://www.google.com/session">
<pho:description xmlns:pho="http://www.google.com/session/phone">
<pho:payload-type id="0" name="PCMU" clockrate="8000" bitrate="64000"></pho:payload-type>
</pho:description>
</ses:session>
<error code="302" type="modify">
<redirect xmlns="urn:ietf:params:xml:ns:xmpp-stanzas">xmpp:+760XXXXXXX at voice.google.com/srvenc-w8W24IH4ZBGhR6mQVmzatQ==</redirect>
<ses:redirect xmlns:ses="http://www.google.com/session">xmpp:+760XXXXXXX at voice.google.com/srvenc-w8W24IH4ZBGhR6mQVmzatQ==</ses:redirect>
</error>
</iq>
-Terry
On Aug 29, 2013, at 8:43 PM, Terry Barnum wrote:
> Hi FS gurus,
>
> Would someone be so kind as to post an example that shows what Jeff is describing about IP address settings in the dingaling profile for a machine with a private IP? Are we talking about the profile in conf/jingle_profiles? The rtp-ip and ext-rtp-ip settings?
>
> Here's an excerpt of the log. As a freeswitch noob I'm unclear about what exactly is failing.
> ...
> Dialplan: sofia/internal/102 at 172.16.1.199 parsing [default->gvoice_out] continue=false
> Dialplan: sofia/internal/102 at 172.16.1.199 Regex (PASS) [gvoice_out] destination_number(18581234567) =~ /^1(\d{10})$/ break=on-false
> Dialplan: sofia/internal/102 at 172.16.1.199 Action set(call_direction=outbound)
> Dialplan: sofia/internal/102 at 172.16.1.199 Action set(hangup_after_bridge=true)
> Dialplan: sofia/internal/102 at 172.16.1.199 Action set(effective_caller_id_name=${outbound_caller_id_name})
> Dialplan: sofia/internal/102 at 172.16.1.199 Action set(effective_caller_id_number=${outbound_caller_id_number})
> Dialplan: sofia/internal/102 at 172.16.1.199 Action set(inherit_codec=true)
> Dialplan: sofia/internal/102 at 172.16.1.199 Action bridge(dingaling/gtalk/+7609876543 at voice.google.com)
> 2013-08-26 20:45:32.847979 [DEBUG] switch_core_state_machine.c:167 (sofia/internal/102 at 172.16.1.199) State Change CS_ROUTING -> CS_EXECUTE
> 2013-08-26 20:45:32.847979 [DEBUG] switch_core_session.c:1341 Send signal sofia/internal/102 at 172.16.1.199 [BREAK]
> 2013-08-26 20:45:32.847979 [DEBUG] switch_core_state_machine.c:471 (sofia/internal/102 at 172.16.1.199) State ROUTING going to sleep
> 2013-08-26 20:45:32.847979 [DEBUG] switch_core_state_machine.c:416 (sofia/internal/102 at 172.16.1.199) Running State Change CS_EXECUTE
> 2013-08-26 20:45:32.847979 [DEBUG] switch_core_state_machine.c:478 (sofia/internal/102 at 172.16.1.199) State EXECUTE
> 2013-08-26 20:45:32.847979 [DEBUG] mod_sofia.c:230 sofia/internal/102 at 172.16.1.199 SOFIA EXECUTE
> 2013-08-26 20:45:32.847979 [DEBUG] switch_core_state_machine.c:209 sofia/internal/102 at 172.16.1.199 Standard EXECUTE
> EXECUTE sofia/internal/102 at 172.16.1.199 hash(insert/172.16.1.199-spymap/102/1ffd9854-0ecb-11e3-bfcb-8d6f93e4c391)
> EXECUTE sofia/internal/102 at 172.16.1.199 hash(insert/172.16.1.199-last_dial/102/18581234567)
> EXECUTE sofia/internal/102 at 172.16.1.199 hash(insert/172.16.1.199-last_dial/global/1ffd9854-0ecb-11e3-bfcb-8d6f93e4c391)
> EXECUTE sofia/internal/102 at 172.16.1.199 export(RFC2822_DATE=Mon, 26 Aug 2013 20:45:32 -0700)
> 2013-08-26 20:45:32.847979 [DEBUG] switch_channel.c:1222 EXPORT (export_vars) [RFC2822_DATE]=[Mon, 26 Aug 2013 20:45:32 -0700]
> EXECUTE sofia/internal/102 at 172.16.1.199 set(call_direction=outbound)
> 2013-08-26 20:45:32.847979 [DEBUG] mod_dptools.c:1393 sofia/internal/102 at 172.16.1.199 SET [call_direction]=[outbound]
> EXECUTE sofia/internal/102 at 172.16.1.199 set(hangup_after_bridge=true)
> 2013-08-26 20:45:32.847979 [DEBUG] mod_dptools.c:1393 sofia/internal/102 at 172.16.1.199 SET [hangup_after_bridge]=[true]
> EXECUTE sofia/internal/102 at 172.16.1.199 set(effective_caller_id_name=Terry)
> 2013-08-26 20:45:32.847979 [DEBUG] mod_dptools.c:1393 sofia/internal/102 at 172.16.1.199 SET [effective_caller_id_name]=[Terry]
> EXECUTE sofia/internal/102 at 172.16.1.199 set(effective_caller_id_number=760-999-9999)
> 2013-08-26 20:45:32.847979 [DEBUG] mod_dptools.c:1393 sofia/internal/102 at 172.16.1.199 SET [effective_caller_id_number]=[760-999-9999]
> EXECUTE sofia/internal/102 at 172.16.1.199 set(inherit_codec=true)
> 2013-08-26 20:45:32.847979 [DEBUG] mod_dptools.c:1393 sofia/internal/102 at 172.16.1.199 SET [inherit_codec]=[true]
> EXECUTE sofia/internal/102 at 172.16.1.199 bridge(dingaling/gtalk/+7609876543 at voice.google.com)
> 2013-08-26 20:45:32.847979 [DEBUG] switch_channel.c:1176 sofia/internal/102 at 172.16.1.199 EXPORTING[export_vars] [domain_name]=[172.16.1.199] to event
> 2013-08-26 20:45:32.847979 [DEBUG] switch_channel.c:1176 sofia/internal/102 at 172.16.1.199 EXPORTING[export_vars] [RFC2822_DATE]=[Mon, 26 Aug 2013 20:45:32-0700] to event
> 2013-08-26 20:45:32.847979 [DEBUG] switch_ivr_originate.c:2060 Parsing global variables
> 2013-08-26 20:45:32.847979 [DEBUG] mod_dingaling.c:1028 Set Local Key [1 AES_CM_128_HMAC_SHA1_80 inline:7FJY7u0J8fngzGK3msd2SKzr/LMLZTkJ+QRamvwG]
> 2013-08-26 20:45:32.847979 [DEBUG] mod_dingaling.c:1028 Set Local Key [1 AES_CM_128_HMAC_SHA1_80 inline:dP4OPlIvkj7VWF0evrM1gjHC1nBS1Y/YKMfrfa7N]
> 2013-08-26 20:45:32.847979 [NOTICE] switch_channel.c:1030 New Channel dingaling/gtalk/+7609876543 at voice.google.com [200e0388-0ecb-11e3-bfdb-8d6f93e4c391]
> 2013-08-26 20:45:32.847979 [DEBUG] mod_dingaling.c:2665 (dingaling/gtalk/+7609876543 at voice.google.com) State Change CS_NEW -> CS_INIT
> 2013-08-26 20:45:32.847979 [DEBUG] switch_core_session.c:1341 Send signal dingaling/gtalk/+7609876543 at voice.google.com [BREAK]
> 2013-08-26 20:45:32.847979 [DEBUG] mod_dingaling.c:2095 dingaling/gtalk/+7609876543 at voice.google.com CHANNEL KILL
> 2013-08-26 20:45:32.847979 [DEBUG] switch_core_state_machine.c:416 (dingaling/gtalk/+7609876543 at voice.google.com) Running State Change CS_INIT
> 2013-08-26 20:45:32.847979 [DEBUG] switch_core_state_machine.c:455 (dingaling/gtalk/+7609876543 at voice.google.com) State INIT
> 2013-08-26 20:45:32.847979 [NOTICE] mod_dingaling.c:1816 Ring-Ready dingaling/gtalk/+7609876543 at voice.google.com!
> 2013-08-26 20:45:32.847979 [DEBUG] switch_channel.c:3180 (dingaling/gtalk/+7609876543 at voice.google.com) Callstate Change DOWN -> RINGING
> 2013-08-26 20:45:32.847979 [DEBUG] mod_dingaling.c:1692 Don't have my audio codec yet here's one
> 2013-08-26 20:45:32.867959 [DEBUG] mod_dingaling.c:1738 Don't have video codec.
> 2013-08-26 20:45:32.867959 [DEBUG] mod_dingaling.c:1749 Send Describe [PCMU at 8000]
> 2013-08-26 20:45:33.288612 [DEBUG] mod_dingaling.c:4114 using Existing session for 2155444888
> 2013-08-26 20:45:33.288612 [DEBUG] mod_dingaling.c:1738 Don't have video codec.
> 2013-08-26 20:45:33.288612 [DEBUG] mod_dingaling.c:1749 Send Describe [PCMU at 8000]
> 2013-08-26 20:45:33.288612 [DEBUG] mod_dingaling.c:1560 Stun Lookup Local 172.16.1.199:32116
> 2013-08-26 20:45:33.408000 [INFO] mod_dingaling.c:1570 Stun Success 72.197.53.144:33430
> 2013-08-26 20:45:33.408000 [DEBUG] mod_dingaling.c:1584 Send rtp Candidate 72.197.53.144:33430 [3ToneGgvu6KLidpo]
> 2013-08-26 20:45:33.408000 [DEBUG] mod_dingaling.c:1560 Stun Lookup Local 172.16.1.199:32117
> 2013-08-26 20:45:33.568012 [INFO] mod_dingaling.c:1570 Stun Success 72.197.53.144:39390
> 2013-08-26 20:45:33.568012 [DEBUG] mod_dingaling.c:1584 Send rtcp Candidate 72.197.53.144:39390 [IYN0LV3N3sDDCJws]
> 2013-08-26 20:45:33.568012 [DEBUG] mod_dingaling.c:1627 Accepted 0 of 0 rtp candidates.
> 2013-08-26 20:45:33.568012 [DEBUG] mod_dingaling.c:1629 Accepted 0 of 0 rtcp candidates.
> 2013-08-26 20:45:33.568012 [DEBUG] mod_dingaling.c:1632 Accepted 0 of 0 video_rtp candidates
> 2013-08-26 20:45:33.568012 [DEBUG] mod_dingaling.c:1635 Accepted 0 of 0 video_rctp candidates
> 2013-08-26 20:45:34.427964 [DEBUG] sofia_reg.c:2232 Changing expire time to 90 by request of proxy sip:callcentric.com
> 2013-08-26 20:45:34.649239 [DEBUG] mod_dingaling.c:4114 using Existing session for 2155444888
> 2013-08-26 20:45:34.649239 [DEBUG] mod_dingaling.c:3577 3 rtp candidates
> 2013-08-26 20:45:34.649239 [DEBUG] mod_dingaling.c:3597 candidate 74.125.141.127:19305 PASS ACL wan.auto
> 2013-08-26 20:45:34.649239 [DEBUG] mod_dingaling.c:3651 Acceptable rtp Candidate 74.125.141.127:19305
> 2013-08-26 20:45:34.649239 [DEBUG] mod_dingaling.c:3577 0 video_rtp candidates
> 2013-08-26 20:45:34.649239 [DEBUG] mod_dingaling.c:3577 0 rtcp candidates
> 2013-08-26 20:45:34.649239 [DEBUG] mod_dingaling.c:3577 0 video_rtcp candidates
> 2013-08-26 20:45:35.208090 [DEBUG] mod_dingaling.c:4114 using Existing session for 2155444888
> 2013-08-26 20:45:35.208090 [DEBUG] mod_dingaling.c:4434 hungup dingaling/gtalk/+7609876543 at voice.google.com
> ...
>
> Thanks for any help,
> -Terry
>
> On Aug 28, 2013, at 6:03 PM, Terry Barnum wrote:
>
>> Sorry, I don't know what's considered "set correctly" in the dingaling profile. Here's what's in jingle_profiles/v_172.16.1.199_gtalk.xml. I've also tried setting ext-rtp-ip to $${external_rtp_ip}.
>>
>> <include>
>> <profile type="client">
>> <param name="name" value="gtalk"/>
>> <param name="login" value="USER at gmail.com/talk"/>
>> <param name="password" value="MYPASS"/>
>> <param name="dialplan" value="XML"/>
>> <param name="context" value="public"/>
>> <param name="message" value="Jingle all the way"/>
>> <param name="rtp-ip" value="auto"/>
>> <param name="ext-rtp-ip" value="auto-nat"/>
>> <param name="auto-login" value="true"/>
>> <param name="sasl" value="plain"/>
>> <param name="server" value="talk.google.com"/>
>> <param name="tls" value="true"/>
>> <param name="use-rtp-timer" value="true"/>
>> <param name="exten" value="102"/>
>> <param name="vad" value="both"/>
>> <param name="candidate-acl" value="wan.auto"/>
>> <param name="local-network-acl" value="localnet.auto"/>
>> </profile>
>> </include>
>>
>> Thanks for any pointers.
>>
>> -Terry
>>
>> On Aug 26, 2013, at 9:44 PM, Jeff Leung wrote:
>>
>>> Check to see if your IP addressing settings are set correctly within the
>>> dingaling profile.
>>>
>>> Most of the times you'll need to have the profile to listen internally but
>>> have dingaling to specify an external IP address when it talks to the
>>> outside world.
>>>
>>>> -----Original Message-----
>>>> From: freeswitch-users-bounces at lists.freeswitch.org [mailto:freeswitch-
>>>> users-bounces at lists.freeswitch.org] On Behalf Of Terry Barnum
>>>> Sent: Monday, August 26, 2013 9:33 PM
>>>> To: FreeSWITCH Users Help
>>>> Subject: [Freeswitch-users] Google voice call fails
>>>>
>>>> I've been reading the freeswitch book (great read!) and playing with my
>>> first
>>>> freeswitch install on a Mac mini host with freeswitch installed via git
>>> into a
>>>> Virtualbox guest CentOS 6.4. It's working with a couple X-Lite softphones
>>> and
>>>> a Yealink T32G, internally between extensions, using a free DID to test
>>>> incoming calls and a free but limited iptel account to test outbound.
>>>>
>>>> My next step was to try and play with real outbound calls so I followed
>>> these
>>>> instructions for Google voice:
>>>> <http://wiki.freeswitch.org/wiki/Google_Voice> but outbound calls fail and
>>>> are hung up. I disabled the h264 codec in dingaling.conf.xml leaving just
>>>> PCMU but no change. xmpp appears to be connecting and authenticating to
>>>> google correctly.
>>>>
>>>> The log of an attempted call (edited for privacy) is at
>>>> <http://pastebin.freeswitch.org/21338>
>>>>
>>>> Snippets of the log that looks suspicious to a freeswitch noob:
>>>>
>>>> 2013-08-26 20:45:33.568012 [DEBUG] mod_dingaling.c:1627 Accepted 0 of 0
>>>> rtp candidates.
>>>> 2013-08-26 20:45:33.568012 [DEBUG] mod_dingaling.c:1629 Accepted 0 of 0
>>>> rtcp candidates.
>>>> 2013-08-26 20:45:33.568012 [DEBUG] mod_dingaling.c:1632 Accepted 0 of 0
>>>> video_rtp candidates
>>>> 2013-08-26 20:45:33.568012 [DEBUG] mod_dingaling.c:1635 Accepted 0 of 0
>>>> video_rctp candidates
>>>> 2013-08-26 20:45:34.649239 [DEBUG] mod_dingaling.c:4114 using Existing
>>>> session for 2155444888
>>>> 2013-08-26 20:45:34.649239 [DEBUG] mod_dingaling.c:3577 3 rtp candidates
>>>> 2013-08-26 20:45:34.649239 [DEBUG] mod_dingaling.c:3597 candidate
>>>> 74.125.141.127:19305 PASS ACL wan.auto
>>>> 2013-08-26 20:45:34.649239 [DEBUG] mod_dingaling.c:3651 Acceptable rtp
>>>> Candidate 74.125.141.127:19305
>>>> 2013-08-26 20:45:34.649239 [DEBUG] mod_dingaling.c:3577 0 video_rtp
>>>> candidates
>>>> 2013-08-26 20:45:34.649239 [DEBUG] mod_dingaling.c:3577 0 rtcp candidates
>>>> 2013-08-26 20:45:34.649239 [DEBUG] mod_dingaling.c:3577 0 video_rtcp
>>>> candidates
>>>> 2013-08-26 20:45:35.208090 [DEBUG] mod_dingaling.c:4114 using Existing
>>>> session for 2155444888
>>>> 2013-08-26 20:45:35.208090 [DEBUG] mod_dingaling.c:4434 hungup
>>>> dingaling/gtalk/+7609876543 at voice.google.com
>>>>
>>>> Where should I be looking to try and fix? Freeswitch is behind the
>>> firewall
>>>> with a private IP but STUN says it's working (or at least it looks that
>>> way to
>>>> me).
>
>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
>
>
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://wiki.freeswitch.org
> http://www.cluecon.com
>
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
Join us at ClueCon 2013 Aug 6-8, 2013
More information about the FreeSWITCH-users
mailing list