Google Voice outbound suddenly not working?

Wondering if someone could help

I manage three Asterisk boxes that all use different google voice accounts – all of them quit working today. I can get calls without issue, but outbound gives me this:

I searched everywhere for anyone on the internet over the last 24 hour span that has come up with similar issues (indicating a Google policy or feature change) but could yield nothing on that front. Any ideas on where I should turn/look for this one? Thanks

Confirmed that the issue is most likely isolated with my systems, but curious if anyone has come across this. Nothing configuration wise was done to any of the PBX boxes nor the firewall (PFsense).

You can always run these commands to see the status of xmpp(Google) on your server:

asterisk -rvvvvvvv
xmpp show connections

Thank you for the reply! :slight_smile: Results:

At first I thought port 5222 was somehow blocked on the firewall, but if my inbound works fine, I’m not sure what to think on that end.

I just started experiencing the same issue yesterday afternoon. Inbound dialing is still working just fine, but when I go to make an outbound call, the call cannot complete:

-- No one is available to answer at this time (1:0/0/0) -- Executing [s@macro-dialout-trunk:31] NoOp("SIP/210-00000005", "Dial failed for some reason with DIALSTATUS = NOANSWER and HANGUPCAUSE = 16") in new stack -- Executing [s@macro-dialout-trunk:32] GotoIf("SIP/210-00000005", "0?continue,1:s-NOANSWER,1") in new stack -- Goto (macro-dialout-trunk,s-NOANSWER,1) -- Executing [s-NOANSWER@macro-dialout-trunk:1] NoOp("SIP/210-00000005", "Dial failed due to trunk reporting NOANSWER - giving up") in new stack -- Executing [s-NOANSWER@macro-dialout-trunk:2] Progress("SIP/210-00000005", "") in new stack -- Executing [s-NOANSWER@macro-dialout-trunk:3] Playback("SIP/210-00000005", "number-not-answering,noanswer") in new stack -- Playing 'number-not-answering.gsm' (language 'en')

Did you try to restart the system?

Steps taken so far:

  • restarted server (handful of times)
  • re-installed Google Voice module
  • updated other modules – everything up to date on one pbx server
  • deleted and created outbound rules
  • verified firewall logs to ensure 5222 passes

Yes, I restarted the system. I also deleted Google Voice account from the system, the Trunk and Outbound route. I recreated the Google Voice MOTIF account and had the system recreate the Trunk and Route automatically. Same results when dialing.

just as an FYI you’d never have to forward 5222.

Yep I just wanted to verify it wasn’t getting blocked by the firewall. No NAT rules are in place to accommodate 5222. Anyone else experiencing these issues (yet)?

having same behavior on both Elastix and PIAF versions.

Just curious if you are using a prepackaged distribution like AsteriskNow? Probably taking a stab in the dark but I wanted to know if there was anything common in our setups.

Im running AsteriskNow 3.0 32bit but I’ve installed fail2ban, IAXModem, FOP2, Hylafax and AvantFAX. Network firewall is Endian Firewall 2.5.2.

Works fine here on FreePBX Distro and I connect remotely. Have any of you started using google hangouts?

That’s a good question and no I haven’t. I set up the accounts and let them sit idle – never logged into them for any changes after setting up. Logged into them to very settings are all the same.

asterisk -rvvvvv
xmpp set debug on

Place a call. Post output here.

Results:

I have used Google Hangouts for some time now. Never had a problem before. Here are my posted results that you requested

[size=11][font=Courier]XMPP Debugging Enabled.
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
– Executing [9165551212@from-internal:1] Macro(“SIP/210-0000000f”, “user-callerid,LIMIT,EXTERNAL,”) in new stack
– Executing [s@macro-user-callerid:1] Set(“SIP/210-0000000f”, “TOUCH_MONITOR=1380301971.28”) in new stack
– Executing [s@macro-user-callerid:2] Set(“SIP/210-0000000f”, “AMPUSER=210”) in new stack
– Executing [s@macro-user-callerid:3] GotoIf(“SIP/210-0000000f”, “0?report”) in new stack
– Executing [s@macro-user-callerid:4] ExecIf(“SIP/210-0000000f”, “1?Set(REALCALLERIDNUM=210)”) in new stack
– Executing [s@macro-user-callerid:5] Set(“SIP/210-0000000f”, “AMPUSER=210”) in new stack
– Executing [s@macro-user-callerid:6] Set(“SIP/210-0000000f”, “AMPUSERCIDNAME=PCPIECES”) in new stack
– Executing [s@macro-user-callerid:7] GotoIf(“SIP/210-0000000f”, “0?report”) in new stack
– Executing [s@macro-user-callerid:8] Set(“SIP/210-0000000f”, “AMPUSERCID=210”) in new stack
– Executing [s@macro-user-callerid:9] Set(“SIP/210-0000000f”, “__DIAL_OPTIONS=Ttr”) in new stack
– Executing [s@macro-user-callerid:10] Set(“SIP/210-0000000f”, “CALLERID(all)=“PCPIECES” <210>”) in new stack
– Executing [s@macro-user-callerid:11] GotoIf(“SIP/210-0000000f”, “0?limit”) in new stack
– Executing [s@macro-user-callerid:12] ExecIf(“SIP/210-0000000f”, “1?Set(GROUP(concurrency_limit)=210)”) in new stack
– Executing [s@macro-user-callerid:13] GotoIf(“SIP/210-0000000f”, “1?continue”) in new stack
– Goto (macro-user-callerid,s,26)
– Executing [s@macro-user-callerid:26] Set(“SIP/210-0000000f”, “CALLERID(number)=210”) in new stack
– Executing [s@macro-user-callerid:27] Set(“SIP/210-0000000f”, “CALLERID(name)=PCPIECES”) in new stack
– Executing [s@macro-user-callerid:28] Set(“SIP/210-0000000f”, “CDR(cnum)=210”) in new stack
– Executing [s@macro-user-callerid:29] Set(“SIP/210-0000000f”, “CDR(cnam)=PCPIECES”) in new stack
– Executing [s@macro-user-callerid:30] Set(“SIP/210-0000000f”, “CHANNEL(language)=en”) in new stack
– Executing [9165551212@from-internal:2] Set(“SIP/210-0000000f”, “MOHCLASS=default”) in new stack
– Executing [9165551212@from-internal:3] Set(“SIP/210-0000000f”, “_NODEST=”) in new stack
– Executing [9165551212@from-internal:4] Gosub(“SIP/210-0000000f”, “sub-record-check,s,1(out,9165551212,)”) in new stack
– Executing [s@sub-record-check:1] Set(“SIP/210-0000000f”, “REC_POLICY_MODE_SAVE=”) in new stack
– Executing [s@sub-record-check:2] GotoIf(“SIP/210-0000000f”, “1?check”) in new stack
– Goto (sub-record-check,s,7)
– Executing [s@sub-record-check:7] Set(“SIP/210-0000000f”, “__MON_FMT=wav”) in new stack
– Executing [s@sub-record-check:8] GotoIf(“SIP/210-0000000f”, “1?next”) in new stack
– Goto (sub-record-check,s,11)
– Executing [s@sub-record-check:11] ExecIf(“SIP/210-0000000f”, “0?Return()”) in new stack
– Executing [s@sub-record-check:12] ExecIf(“SIP/210-0000000f”, “0?Set(__REC_POLICY_MODE=)”) in new stack
– Executing [s@sub-record-check:13] GotoIf(“SIP/210-0000000f”, “0?out,1”) in new stack
– Executing [s@sub-record-check:14] Set(“SIP/210-0000000f”, “__REC_STATUS=INITIALIZED”) in new stack
– Executing [s@sub-record-check:15] Set(“SIP/210-0000000f”, “NOW=1380301971”) in new stack
– Executing [s@sub-record-check:16] Set(“SIP/210-0000000f”, “__DAY=27”) in new stack
– Executing [s@sub-record-check:17] Set(“SIP/210-0000000f”, “__MONTH=09”) in new stack
– Executing [s@sub-record-check:18] Set(“SIP/210-0000000f”, “__YEAR=2013”) in new stack
– Executing [s@sub-record-check:19] Set(“SIP/210-0000000f”, “__TIMESTR=20130927-101251”) in new stack
– Executing [s@sub-record-check:20] Set(“SIP/210-0000000f”, “__FROMEXTEN=210”) in new stack
– Executing [s@sub-record-check:21] Set(“SIP/210-0000000f”, “__CALLFILENAME=out-9165551212-210-20130927-101251-1380301971.28”) in new stack
– Executing [s@sub-record-check:22] Goto(“SIP/210-0000000f”, “out,1”) in new stack
– Goto (sub-record-check,out,1)
– Executing [out@sub-record-check:1] ExecIf(“SIP/210-0000000f”, “1?Set(__REC_POLICY_MODE=always)”) in new stack
– Executing [out@sub-record-check:2] GosubIf(“SIP/210-0000000f”, “1?record,1(exten,9165551212,210)”) in new stack
– Executing [record@sub-record-check:1] Set(“SIP/210-0000000f”, “AUDIOHOOK_INHERIT(MixMonitor)=yes”) in new stack
– Executing [record@sub-record-check:2] MixMonitor(“SIP/210-0000000f”, “2013/09/27/out-9165551212-210-20130927-101251-1380301971.28.wav,”) in new stack
– Executing [record@sub-record-check:3] Set(“SIP/210-0000000f”, “__REC_STATUS=RECORDING”) in new stack
– Executing [record@sub-record-check:4] Set(“SIP/210-0000000f”, “CDR(recordingfile)=out-9165551212-210-20130927-101251-1380301971.28.wav”) in new stack
– Executing [record@sub-record-check:5] Return(“SIP/210-0000000f”, “”) in new stack
– Executing [out@sub-record-check:3] Return(“SIP/210-0000000f”, “”) in new stack
== Begin MixMonitor Recording SIP/210-0000000f
– Executing [9165551212@from-internal:5] Macro(“SIP/210-0000000f”, “dialout-trunk,2,19165551212,off”) in new stack
– Executing [s@macro-dialout-trunk:1] Set(“SIP/210-0000000f”, “DIAL_TRUNK=2”) in new stack
– Executing [s@macro-dialout-trunk:2] GosubIf(“SIP/210-0000000f”, “0?sub-pincheck,s,1()”) in new stack
– Executing [s@macro-dialout-trunk:3] GotoIf(“SIP/210-0000000f”, “0?disabletrunk,1”) in new stack
– Executing [s@macro-dialout-trunk:4] Set(“SIP/210-0000000f”, “DIAL_NUMBER=19165551212”) in new stack
– Executing [s@macro-dialout-trunk:5] Set(“SIP/210-0000000f”, “DIAL_TRUNK_OPTIONS=Ttr”) in new stack
– Executing [s@macro-dialout-trunk:6] Set(“SIP/210-0000000f”, “OUTBOUND_GROUP=OUT_2”) in new stack
– Executing [s@macro-dialout-trunk:7] GotoIf(“SIP/210-0000000f”, “1?nomax”) in new stack
– Goto (macro-dialout-trunk,s,9)
– Executing [s@macro-dialout-trunk:9] GotoIf(“SIP/210-0000000f”, “0?skipoutcid”) in new stack
– Executing [s@macro-dialout-trunk:10] Set(“SIP/210-0000000f”, “DIAL_TRUNK_OPTIONS=r”) in new stack
– Executing [s@macro-dialout-trunk:11] Macro(“SIP/210-0000000f”, “outbound-callerid,2”) in new stack
– Executing [s@macro-outbound-callerid:1] ExecIf(“SIP/210-0000000f”, “0?Set(CALLERPRES()=)”) in new stack
– Executing [s@macro-outbound-callerid:2] ExecIf(“SIP/210-0000000f”, “0?Set(REALCALLERIDNUM=210)”) in new stack
– Executing [s@macro-outbound-callerid:3] GotoIf(“SIP/210-0000000f”, “1?normcid”) in new stack
– Goto (macro-outbound-callerid,s,6)
– Executing [s@macro-outbound-callerid:6] Set(“SIP/210-0000000f”, “USEROUTCID=”) in new stack
– Executing [s@macro-outbound-callerid:7] Set(“SIP/210-0000000f”, “EMERGENCYCID=”) in new stack
– Executing [s@macro-outbound-callerid:8] Set(“SIP/210-0000000f”, “TRUNKOUTCID=9165555555”) in new stack
– Executing [s@macro-outbound-callerid:9] GotoIf(“SIP/210-0000000f”, “1?trunkcid”) in new stack
– Goto (macro-outbound-callerid,s,14)
– Executing [s@macro-outbound-callerid:14] ExecIf(“SIP/210-0000000f”, “1?Set(CALLERID(all)=9165555555)”) in new stack
– Executing [s@macro-outbound-callerid:15] ExecIf(“SIP/210-0000000f”, “0?Set(CALLERID(all)=)”) in new stack
– Executing [s@macro-outbound-callerid:16] ExecIf(“SIP/210-0000000f”, “1?Set(CALLERID(all)=9165555555)”) in new stack
– Executing [s@macro-outbound-callerid:17] ExecIf(“SIP/210-0000000f”, “0?Set(CALLERPRES()=prohib_passed_screen)”) in new stack
– Executing [s@macro-outbound-callerid:18] Set(“SIP/210-0000000f”, “CDR(outbound_cnum)=9165555555”) in new stack
– Executing [s@macro-outbound-callerid:19] Set(“SIP/210-0000000f”, “CDR(outbound_cnam)=”) in new stack
– Executing [s@macro-dialout-trunk:12] GosubIf(“SIP/210-0000000f”, “0?sub-flp-2,s,1()”) in new stack
– Executing [s@macro-dialout-trunk:13] Set(“SIP/210-0000000f”, “OUTNUM=19165551212”) in new stack
– Executing [s@macro-dialout-trunk:14] Set(“SIP/210-0000000f”, “custom=AMP”) in new stack
– Executing [s@macro-dialout-trunk:15] ExecIf(“SIP/210-0000000f”, “0?Set(DIAL_TRUNK_OPTIONS=M(setmusic^default)r)”) in new stack
– Executing [s@macro-dialout-trunk:16] ExecIf(“SIP/210-0000000f”, “0?Set(DIAL_TRUNK_OPTIONS=rM(confirm))”) in new stack
– Executing [s@macro-dialout-trunk:17] Macro(“SIP/210-0000000f”, “dialout-trunk-predial-hook,”) in new stack
– Executing [s@macro-dialout-trunk-predial-hook:1] MacroExit(“SIP/210-0000000f”, “”) in new stack
– Executing [s@macro-dialout-trunk:18] GotoIf(“SIP/210-0000000f”, “0?bypass,1”) in new stack
– Executing [s@macro-dialout-trunk:19] ExecIf(“SIP/210-0000000f”, “1?Set(CONNECTEDLINE(num,i)=19165551212)”) in new stack
– Executing [s@macro-dialout-trunk:20] ExecIf(“SIP/210-0000000f”, “1?Set(CONNECTEDLINE(name,i)=CID:9165555555)”) in new stack
– Executing [s@macro-dialout-trunk:21] GotoIf(“SIP/210-0000000f”, “1?customtrunk”) in new stack
– Goto (macro-dialout-trunk,s,25)
– Executing [s@macro-dialout-trunk:25] Set(“SIP/210-0000000f”, “pre_num=AMP:Motif/gmyaccountkevingmailcom/”) in new stack
– Executing [s@macro-dialout-trunk:26] Set(“SIP/210-0000000f”, “the_num=OUTNUM”) in new stack
– Executing [s@macro-dialout-trunk:27] Set(“SIP/210-0000000f”, "[email protected]") in new stack
– Executing [s@macro-dialout-trunk:28] GotoIf(“SIP/210-0000000f”, “1?outnum:skipoutnum”) in new stack
– Goto (macro-dialout-trunk,s,29)
– Executing [s@macro-dialout-trunk:29] Set(“SIP/210-0000000f”, “the_num=19165551212”) in new stack
– Executing [s@macro-dialout-trunk:30] Dial(“SIP/210-0000000f”, “Motif/gmyaccountkevingmailcom/[email protected],300,r”) in new stack

<— XMPP sent to ‘gmyaccountkevingmailcom’ —>

<------------->
– Called Motif/gmyaccountkevingmailcom/[email protected]

<— XMPP received from ‘gmyaccountkevingmailcom’ —>
xmpp:[email protected]/srvenc-AQxLmKTgCMCZAKokzmK1bsq4jvymFjix<ses:redirect xmlns:ses=“http://www.google.com/session”>
<------------->

<— XMPP received from ‘gmyaccountkevingmailcom’ —>
xmpp:[email protected]/srvenc-AQxLmKTgCMCZAKokzmK1bsq4jvymFjix</ses:redirect>
<------------->

<— XMPP sent to ‘gmyaccountkevingmailcom’ —>

<------------->

<— XMPP received from ‘gmyaccountkevingmailcom’ —>

<------------->

<— XMPP sent to ‘gmyaccountkevingmailcom’ —>

<------------->

<— XMPP received from ‘gmyaccountkevingmailcom’ —>
xmpp:[email protected]/srvenc-AQxLmKTgCMAaKww7Yk3nE/JfrsgA2TBA<ses:redirect xmlns:ses=“http://www.google.com/session”>
<------------->

<— XMPP received from ‘gmyaccountkevingmailcom’ —>
xmpp:[email protected]/srvenc-AQxLmKTgCMAaKww7Yk3nE/JfrsgA2TBA</ses:redirect>
<------------->

<— XMPP sent to ‘gmyaccountkevingmailcom’ —>

<------------->

<— XMPP received from ‘gmyaccountkevingmailcom’ —>

<------------->

<— XMPP sent to ‘gmyaccountkevingmailcom’ —>

<------------->

<— XMPP received from ‘gmyaccountkevingmailcom’ —>
xmpp:[email protected]/srvenc-a3d+Pd07OylL7zPPF+zobJJrh7lOsPab<ses:redirect xmlns:ses=“http://www.google.com/session”>xmpp:[email protected]/srvenc-a3d+Pd07OylL7zPPF+zobJJrh7lOsPab</ses:redirect>
<------------->

<— XMPP sent to ‘gmyaccountkevingmailcom’ —>

<------------->

<— XMPP received from ‘gmyaccountkevingmailcom’ —>

<------------->
– Motif/[email protected] is proceeding passing it to SIP/210-0000000f

<— XMPP sent to ‘gmyaccountkevingmailcom’ —>

<------------->

<— XMPP received from ‘gmyaccountkevingmailcom’ —>

<------------->

<— XMPP received from ‘gmyaccountkevingmailcom’ —>
<ses:session type=“candidates” id=“26273336786096bf” initiator="[email protected]/asterisk-xC63BCB7E" xmlns:ses=“http://www.google.com/session”><ses:candidate name=“rtp” address=“173.194.79.127” port=“19305” username=“D1C1801FE47EDCD5” preference=“3.0” protocol=“udp” network=“mediaproxy” generation=“0” password="" type=“relay”/><ses:candidate name=“rtp” address=“173.194.79.127” port=“19305” username=“D1C1801FE47EDCD5” preference=“2.0” protocol=“tcp” network=“mediaproxy” generation=“0” password="" type=“relay”/><ses:candidate name=“rtp” address=“173.194.79.127” port=“443” username=“D1C1801FE47EDCD5” preference=“1.0” protocol=“ssltcp” network=“mediaproxy” generation=“0” password="" type=“relay”/></ses:session>
<------------->

<— XMPP sent to ‘gmyaccountkevingmailcom’ —>

<------------->

<— XMPP received from ‘gmyaccountkevingmailcom’ —>
<ses:session type=“terminate” id=“26273336786096bf” initiator="[email protected]/asterisk-xC63BCB7E" xmlns:ses=“http://www.google.com/session”>ses:reasonses:decline/ses:textCaller disconnected</ses:text></ses:reason><pho:call-ended xmlns:pho=“http://www.google.com/session/phone”/></ses:session>
<------------->

<— XMPP sent to ‘gmyaccountkevingmailcom’ —>

<------------->
– No one is available to answer at this time (1:0/0/0)
– Executing [s@macro-dialout-trunk:31] NoOp(“SIP/210-0000000f”, “Dial failed for some reason with DIALSTATUS = NOANSWER and HANGUPCAUSE = 16”) in new stack
– Executing [s@macro-dialout-trunk:32] GotoIf(“SIP/210-0000000f”, “0?continue,1:s-NOANSWER,1”) in new stack
– Goto (macro-dialout-trunk,s-NOANSWER,1)
– Executing [s-NOANSWER@macro-dialout-trunk:1] NoOp(“SIP/210-0000000f”, “Dial failed due to trunk reporting NOANSWER - giving up”) in new stack
– Executing [s-NOANSWER@macro-dialout-trunk:2] Progress(“SIP/210-0000000f”, “”) in new stack
– Executing [s-NOANSWER@macro-dialout-trunk:3] Playback(“SIP/210-0000000f”, “number-not-answering,noanswer”) in new stack
– <SIP/210-0000000f> Playing ‘number-not-answering.gsm’ (language ‘en’)
> 0xb7552fd0 – Probation passed - setting RTP source address to 10.170.23.194:2240
== Spawn extension (macro-dialout-trunk, s-NOANSWER, 3) exited non-zero on ‘SIP/210-0000000f’ in macro ‘dialout-trunk’
== Spawn extension (from-internal, 9165551212, 5) exited non-zero on ‘SIP/210-0000000f’
– Executing [h@from-internal:1] Hangup(“SIP/210-0000000f”, “”) in new stack
== Spawn extension (from-internal, h, 1) exited non-zero on ‘SIP/210-0000000f’
== MixMonitor close filestream (mixed)
== End MixMonitor Recording SIP/210-0000000f[/font][/size]

Got mine working (for now?)

I spun up another PFSense VM, restored from backup, etc. New MAC meant new IP address from ISP and it was either that or the new PFSense image, but I can now dial out.

I was able to get mine to work also. I put in a SNAT rule to use an alternate public IP address on my firewall and I am able to make calls. I’ll contact my ISP this week to see if they blocked something outbound for that specific IP address.

Well, I called my service provider and they confirmed that nothing is blocked on their end. Perhaps blocked on Google’s end? I don’t believe that it has anything to do with the MOTIF module or Asterisk since the calling does work as long as the public IP address is different.