Google voice calls stop after connection idle/inactive

Hi, I’m using Asterisk 11.0.1 compiled from source. My Google voice configuration works properly when Asterisk is started. But after the connection has been unused for some period, Google voice calls (inbound & outbound) stop working. Restarting Asterisk always fixes the problem.

I’ve mostly been trying to debug the outbound direction, since that’s the easiest to control and reproduce. The symptom is that the callee’s phone never rings. The caller hears ringing until the Dial command times out. The call appears in the Google voice history log. The Asterisk console shows that there’s a valid xmpp connection:

pbx*CLI> xmpp show connections
Jabber Users and their status:
       [google] myusername@gmail.com     - Connected
----
   Number of clients: 1

With xmpp debugging on, here’s a “broken” call:

== Using SIP RTP CoS mark 5
    -- Executing [18004337300@c470_ob:1] Macro("SIP/c470-00000004", "vz_dial,8004337300") in new stack
    -- Executing [s@macro-vz_dial:1] Dial("SIP/c470-00000004", "Motif/google/18004337300@voice.google.com,30,r") in new stack

<--- XMPP sent to 'google' --->
<iq from='myusername@gmail.com/asterisk-xE772E28D' to='18004337300@voice.google.com' type='set' id='aaaif'><session type='initiate' id='4d48ae625bcc17d6' xmlns='http://www.google.com/session' initiator='myusername@gmail.com/asterisk-xE772E28D'><description xmlns='http://www.google.com/session/phone'><payload-type xmlns='http://www.google.com/session/phone' id='0' name='PCMU' channels='1' clockrate='8000'/><payload-type xmlns='http://www.google.com/session/phone' id='101' name='telephone-event' channels='1' clockrate='8000'/></description></session></iq>
<------------->
    -- Called Motif/google/18004337300@voice.google.com

<--- XMPP received from 'google' --->
<iq from="18004337300@voice.google.com" to="myusername@gmail.com/asterisk-xE772E28D" type="error" id="aaaif"><session type="initiate" id="4d48ae625bcc17d6" initiator="myusername@gmail.com/asterisk-xE772E28D" xmlns="http://www.google.com/session"><description xmlns="http://www.google.com/session/phone"><payload-type id="0" name="PCMU" channels="1" clockrate="8000"/><payload-type id="101" name="telephone-event" channels="1" clockrate="8000"/></description></session><error code="302" type="modify"><redirect xmlns="urn:ietf:params:xml:ns:xmpp-stanzas">xmpp:18004337300@voice.google.com/srvres-MTAuMjIxLjkuMTQ1Ojk4MTQ=</redirect><ses:redirect xmlns:ses="http://www.google.com/session">xmpp:18004337300@voice.google.com/srvres-MTAuMjIxLjkuMTQ1Ojk4MTQ=</ses:redirect></error></iq>
<------------->

<--- XMPP sent to 'google' --->
<iq from='myusername@gmail.com/asterisk-xE772E28D' to='18004337300@voice.google.com/srvres-MTAuMjIxLjkuMTQ1Ojk4MTQ=' type='set' id='aaaig'><session type='initiate' id='4d48ae625bcc17d6' xmlns='http://www.google.com/session' initiator='myusername@gmail.com/asterisk-xE772E28D'><description xmlns='http://www.google.com/session/phone'><payload-type xmlns='http://www.google.com/session/phone' id='0' name='PCMU' channels='1' clockrate='8000'/><payload-type xmlns='http://www.google.com/session/phone' id='101' name='telephone-event' channels='1' clockrate='8000'/></description></session></iq>
<------------->

<--- XMPP received from 'google' --->
<iq to="myusername@gmail.com/asterisk-xE772E28D" from="18004337300@voice.google.com/srvres-MTAuMjIxLjkuMTQ1Ojk4MTQ=" id="aaaig" type="result"/>
<------------->

<--- XMPP sent to 'google' --->
<iq from='myusername@gmail.com/asterisk-xE772E28D' to='18004337300@voice.google.com/srvres-MTAuMjIxLjkuMTQ1Ojk4MTQ=' type='set' id='aaaih'><session type='candidates' id='4d48ae625bcc17d6' xmlns='http://www.google.com/session' initiator='myusername@gmail.com/asterisk-xE772E28D'><candidate name='rtp' address='192.168.0.101' port='50008' preference='0.95' type='local' protocol='udp' network='0' username='11b7f933630bcfb7' generation='0' password='' foundation='0' component='1'/><candidate name='rtcp' address='192.168.0.101' port='50009' preference='0.95' type='local' protocol='udp' network='0' username='11b7f933630bcfb7' generation='0' password='' foundation='0' component='1'/></session></iq>
<------------->
    -- Motif/18004337300@voice.google.com-d233 is proceeding passing it to SIP/c470-00000004

<--- XMPP received from 'google' --->
<iq to="myusername@gmail.com/asterisk-xE772E28D" from="18004337300@voice.google.com/srvres-MTAuMjIxLjkuMTQ1Ojk4MTQ=" id="aaaih" type="result"/>
<------------->

<--- XMPP received from 'google' --->
<iq from="18004337300@voice.google.com/srvres-MTAuMjIxLjkuMTQ1Ojk4MTQ=" to="myusername@gmail.com/asterisk-xE772E28D" id="jingle:10.221.9.145-32458319:1:43431D84" type="set"><ses:session type="candidates" id="4d48ae625bcc17d6" initiator="myusername@gmail.com/asterisk-xE772E28D" xmlns:ses="http://www.google.com/session"><ses:candidate name="rtp" address="74.125.128.127" port="19305" username="1F3295BE327D8CA1" preference="3.0" protocol="udp" network="mediaproxy" generation="0" password="" type="relay"/><ses:candidate name="rtp" address="74.125.128.127" port="19305" username="1F3295BE327D8CA1" preference="2.0" protocol="tcp" network="mediaproxy" generation="0" password="" type="relay"/><ses:candidate name="rtp" address="74.125.128.127" port="443" username="1F3295BE327D8CA1" preference="1.0" protocol="ssltcp" network="mediaproxy" generation="0" password="" type="relay"/></ses:session></iq>
<------------->

NB: Working and broken calls seem the same to this point

<--- XMPP received from 'google' --->
<iq from="18004337300@voice.google.com/srvres-MTAuMjIxLjkuMTQ1Ojk4MTQ=" to="myusername@gmail.com/asterisk-xE772E28D" id="jingle:10.221.9.145-32458319:1:43431D8B" type="set"><ses:session type="accept" id="4d48ae625bcc17d6" initiator="myusername@gmail.com/asterisk-xE772E28D" 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"/><pho:payload-type id="101" name="telephone-event"/></pho:description></ses:session></iq>
<------------->

<--- XMPP sent to 'google' --->
<iq to='18004337300@voice.google.com/srvres-MTAuMjIxLjkuMTQ1Ojk4MTQ=' type='set' id='aaaii'><session type='terminate' id='4d48ae625bcc17d6' xmlns='http://www.google.com/session' initiator='myusername@gmail.com/asterisk-xE772E28D'><reason><success/></reason></session></iq>
<------------->
  == Spawn extension (macro-vz_dial, s, 1) exited non-zero on 'SIP/c470-00000004' in macro 'vz_dial'
  == Spawn extension (c470_ob, 18004337300, 1) exited non-zero on 'SIP/c470-00000004'

<--- XMPP received from 'google' --->
<iq to="myusername@gmail.com/asterisk-xE772E28D" from="18004337300@voice.google.com/srvres-MTAuMjIxLjkuMTQ1Ojk4MTQ=" id="aaaii" type="result"/>
<------------->
pbx*CLI>

If I restart Asterisk and repeat the exact same call, it works perfectly:

== Using SIP RTP CoS mark 5
    -- Executing [18004337300@c470_ob:1] Macro("SIP/c470-00000000", "vz_dial,8004337300") in new stack
    -- Executing [s@macro-vz_dial:1] Dial("SIP/c470-00000000", "Motif/google/18004337300@voice.google.com,30,r") in new stack

<--- XMPP sent to 'google' --->
<iq from='myusername@gmail.com/asterisk-x9132EABD' to='18004337300@voice.google.com' type='set' id='aaaac'><session type='initiate' id='01f2ab0467682df3' xmlns='http://www.google.com/session' initiator='myusername@gmail.com/asterisk-x9132EABD'><description xmlns='http://www.google.com/session/phone'><payload-type xmlns='http://www.google.com/session/phone' id='0' name='PCMU' channels='1' clockrate='8000'/><payload-type xmlns='http://www.google.com/session/phone' id='101' name='telephone-event' channels='1' clockrate='8000'/></description></session></iq>
<------------->
    -- Called Motif/google/18004337300@voice.google.com

<--- XMPP received from 'google' --->
<iq from="18004337300@voice.google.com" to="myusername@gmail.com/asterisk-x9132EABD" type="error" id="aaaac"><session type="initiate" id="01f2ab0467682df3" initiator="myusername@gmail.com/asterisk-x9132EABD" xmlns="http://www.google.com/session"><description xmlns="http://www.google.com/session/phone"><payload-type id="0" name="PCMU" channels="1" clockrate="8000"/><payload-type id="101" name="telephone-event" channels="1" clockrate="8000"/></description></session><error code="302" type="modify"><redirect xmlns="urn:ietf:params:xml:ns:xmpp-stanzas">xmpp:18004337300@voice.google.com/srvres-MTAuMjIwLjU0LjE5ODo5ODk0</redirect><ses:redirect xmlns:ses="http://www.google.com/session">xmpp:18004337300@voice.google.com/srvres-MTAuMjIwLjU0LjE5ODo5ODk0</ses:redirect></error></iq>
<------------->

<--- XMPP sent to 'google' --->
<iq from='myusername@gmail.com/asterisk-x9132EABD' to='18004337300@voice.google.com/srvres-MTAuMjIwLjU0LjE5ODo5ODk0' type='set' id='aaaad'><session type='initiate' id='01f2ab0467682df3' xmlns='http://www.google.com/session' initiator='myusername@gmail.com/asterisk-x9132EABD'><description xmlns='http://www.google.com/session/phone'><payload-type xmlns='http://www.google.com/session/phone' id='0' name='PCMU' channels='1' clockrate='8000'/><payload-type xmlns='http://www.google.com/session/phone' id='101' name='telephone-event' channels='1' clockrate='8000'/></description></session></iq>
<------------->

<--- XMPP received from 'google' --->
<iq to="myusername@gmail.com/asterisk-x9132EABD" from="18004337300@voice.google.com/srvres-MTAuMjIwLjU0LjE5ODo5ODk0" id="aaaad" type="result"/>
<------------->

<--- XMPP sent to 'google' --->
<iq from='myusername@gmail.com/asterisk-x9132EABD' to='18004337300@voice.google.com/srvres-MTAuMjIwLjU0LjE5ODo5ODk0' type='set' id='aaaae'><session type='candidates' id='01f2ab0467682df3' xmlns='http://www.google.com/session' initiator='myusername@gmail.com/asterisk-x9132EABD'><candidate name='rtp' address='192.168.0.101' port='50046' preference='0.95' type='local' protocol='udp' network='0' username='04e867b8230cad40' generation='0' password='' foundation='0' component='1'/><candidate name='rtcp' address='192.168.0.101' port='50047' preference='0.95' type='local' protocol='udp' network='0' username='04e867b8230cad40' generation='0' password='' foundation='0' component='1'/></session></iq>
<------------->
    -- Motif/18004337300@voice.google.com-f832 is proceeding passing it to SIP/c470-00000000

<--- XMPP received from 'google' --->
<iq to="myusername@gmail.com/asterisk-x9132EABD" from="18004337300@voice.google.com/srvres-MTAuMjIwLjU0LjE5ODo5ODk0" id="aaaae" type="result"/>
<------------->

<--- XMPP received from 'google' --->
<iq from="18004337300@voice.google.com/srvres-MTAuMjIwLjU0LjE5ODo5ODk0" to="myusername@gmail.com/asterisk-x9132EABD" id="jingle:10.220.54.198-19994760:1:428448FA" type="set"><ses:session type="candidates" id="01f2ab0467682df3" initiator="myusername@gmail.com/asterisk-x9132EABD" xmlns:ses="http://www.google.com/session"><ses:candidate name="rtp" address="74.125.128.127" port="19305" username="9A6D9D7F509BD831" preference="3.0" protocol="udp" network="mediaproxy" generation="0" password="" type="relay"/><ses:candidate name="rtp" address="74.125.128.127" port="19305" username="9A6D9D7F509BD831" preference="2.0" protocol="tcp" network="mediaproxy" generation="0" password="" type="relay"/><ses:candidate name="rtp" address="74.125.128.127" port="443" username="9A6D9D7F509BD831" preference="1.0" protocol="ssltcp" network="mediaproxy" generation="0" password="" type="relay"/></ses:session></iq>
<------------->

NB: Working and broken calls seem the same to this point

<--- XMPP sent to 'google' --->
<iq type='result' from='myusername@gmail.com/asterisk-x9132EABD' to='18004337300@voice.google.com/srvres-MTAuMjIwLjU0LjE5ODo5ODk0' id='jingle:10.220.54.198-19994760:1:428448FA'/>
<------------->

<--- XMPP received from 'google' --->
<iq from="18004337300@voice.google.com/srvres-MTAuMjIwLjU0LjE5ODo5ODk0" to="myusername@gmail.com/asterisk-x9132EABD" id="jingle:10.220.54.198-19994760:1:42844900" type="set"><ses:session type="accept" id="01f2ab0467682df3" initiator="myusername@gmail.com/asterisk-x9132EABD" 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"/><pho:payload-type id="101" name="telephone-event"/></pho:description></ses:session></iq>
<------------->
    -- Motif/18004337300@voice.google.com-f832 answered SIP/c470-00000000

<--- XMPP sent to 'google' --->
<iq type='result' from='myusername@gmail.com/asterisk-x9132EABD' to='18004337300@voice.google.com/srvres-MTAuMjIwLjU0LjE5ODo5ODk0' id='jingle:10.220.54.198-19994760:1:42844900'/>
<------------->
    -- Locally bridging SIP/c470-00000000 and Motif/18004337300@voice.google.com-f832
pbx*CLI>

I’m not an expert on Jingle, but it appears to me that the working and non-working calls diverge after a certain point, which I’ve tried to identify in the above debug logs.

Here is my motif.conf:

[google]
transport=google-v1
context=gv_in
disallow=all
allow=ulaw
connection=google

Here is my xmpp.conf:

[general]

[google]
type=client
serverhost=talk.google.com
username=myusername@gmail.com
secret=mypassword
priority=1
port=5222
usetls=yes
usesasl=yes
status=available
statusmessage="Unavailable"
keepalive=yes
timeout=5

The relevant Dial string:

exten => s,1,Dial(Motif/google/1${ARG1}@voice.google.com,30,r)

I’ve tried creating a cron job which places a call every 12 hours, but this didn’t solve the problem. It seems I’m either barking up the wrong tree about the relationship with idle time, or it is less than 12 hours.

The Asterisk server is behind a NAT, but I don’t think this is causing the problem for two reasons. First, I put the Asterisk server in the DMZ and the problem still occurred. Second, it seems to be a Jingle issue where Asterisk doesn’t SEND an expected message TO the Google voice server, not the other way around. Once the call is connected, audio always works properly.

Any ideas would be welcome!

JR

I’m having the exact issue that you are having and I have just started to troubleshoot. The only differences in my setup is that I am using google as my transport in the motif.conf and I didn’t see a timeout variable in your xmpp.conf. I left the variable in my xmpp.conf because back in the Asterisk 1.4 and 1.6 days there was a timeout variable in the jabber.conf and it was usually set to 100 or 200 depending on what sites guide you were following. My timeout variable has been set to 5 (the default) since I’ve moved to Asterisk 11 but since I am having this problem I am going to change it back to 200 and see if that clears things up. I’ll post back my findings.

Here is something else to chew on about this problem, Android. If you are like me and have a Android based smart phone you are probably using your Google account that is linked to your Google voice account on your phone. By default Android will keep you logged in to Google Talk on your phone while you are trying to stay logged in with your Asterisk box at the same time. This conflict might have something to do with not being able to stay logged in with Asterisk. Just a thought.

I have a separate Google account that is only used for Asterisk. So being logged in twice is definitely not causing the problem for me. In fact, I was wondering whether NOT having any other activity with Google might have somehow been causing the problem (i.e. they are trying to keep ‘bots’ out), but you have effectively ruled that out. I still don’t have a solution to report, I’m afraid.

Has any resolution been found for this? I seem to suffer the same problem. With Asterisk 11 and Motif, outgoing calls stop working after a while. I have other Asterisk 10 servers in my network that use the old jingle / gtalk channel drivers, and they never have this problem.

I seem to have fixed this by NOT specifying a “transport=” line in motif.conf for anyone else that might come across this and is having the same issue.

hi ahakman,

I don’t think that is the proper solution. Currently running asterisk 11.2 and i’m encountering a similar problem with my calls not connecting properly after a connection issue.

One of my connections almost never retains an IPaddress at PPPoE renewal. As a result the connection somehow “idles” and reconnects. I can log in to my alternate gmail account and see that my asterisk’s motif connection (using a different gmail account) was active, then taken offline and then becomes re-connected. Once reconnected, however, all calls placed via Google Voice through asterisk simply keep ringing and ringing endlessly even though the call DOES connect to the callee. The caller simply hears ringing. The callee hears silence after picking up. The caller continues to hear ringing even after the callee hangs up.

For incoming calls, when someone calls the number that terminates through google voice on asterisk, the SIP phone connected to asterisk never rings. It rings fine initially when asterisk connection is afresh. Once the connection is re-established (dhcp release and renew), calls do not terminate to the Google Voice account’s designated SIP peer.

A restart clears the problems.

Can someone help.
I have tried emulated a connection drop and then reconnecting by releasing the IP manually by issuing the following command:

kill -s SIGUSR2 `pidof udhcpc`

then wait a few minutes and reconnect using:

kill -s SIGUSR1 `pidof udhcpc`

No calls go through properly after a while OR if the connection was dropped (as done above) and then reconnected.

Any advice?
So far, I tried binding the sip server to my IP address and port combination but no go.

Thanks
cchhat01

Has there ever been a solution found? I am seeing this as well. A restart always fixes it.

Yes.
Update asterisk to 11.3.0-rc1 or trunk.
They fixed it.

Albeit, for my pppoe connection which goes thrugh an IP address change every 6 hours, it takes upto 18 minutes to re establish a working xmpp connection.

But it does work flawlessly afterwards.

cchhat01

Glad to hear this is fixed. I was having the same problem on Asterisk 11.0.0-rc2 . I’ll give 11.3.0-rc1 a shot!

Found this in the changelog that looks like the fix:

[code]2013-01-11 23:04 +0000 [r378917] Joshua Colp jcolp@digium.com

* res/res_xmpp.c: Retain XMPP filters across reconnections so
  external modules continue to function as expected. Previously if
  an XMPP client reconnected any filters added by an external
  module were lost. This issue exhibited itself with chan_motif not
  receiving and reacting to Jingle signaling. (closes issue
  ASTERISK-20916) Reported by: kuj[/code]

I am using Asterisk 11.3.0-rc1 with Google Voice MOTIF plugin 2.11.8. I am exhibiting exactly the issues stated above, and wonder if it really has been fixed. The connection will stay up for a period, seemingly random, and then will no longer work, either inbound or outbound. If I attempt to “amportal restart” it eventually has to run the force restart countdown. Once amportal successfully restarts, the connection will work again for the random period of time.

I wish I could provide more info. If you need me to run some sort of command, I will happily post the results here.

This looks like the best point I can find to jump in. My problem is likely the same as Crambo above, though i’m using different versions of software. Everything was working fine until early this month (April).

I am running 32-bit PBXIAF 2.0.6.3 under Virtualbox. FreePBX 2.10.1.9, Centos 6.3, Asterisk 1.8.18.0 (per “status”). The VM host is an AMD Phenom II X4 955 with 4GB RAM running Fedora 17. Plenty of capacity to spare.

I have two gvoice numbers mapped to different extensions*. Using Pidgin, I am logged into a third account which is buddies with those two gvoice associated accounts so I can monitor their status. They both go offline within a few seconds of each other, but again, none of the logs show any activity around this time. Jabber simply loses it’s connection without making a comment.

My incoming gvoice calls will fail to ring in, but I can still dial out, though the first call will fail, and no ringing will occur. This is what appears in the log when I dial out:
[2013-04-22 20:14:33] WARNING[18806] res_jabber.c: JABBER: socket read error

Within a few seconds, Pidgin chimes to let me know that the associated gchat account has just logged in (not both of them). Then subsequent outgoing calls will work fine. Incoming calls still do not work, and go to gvoice mailbox after ringing. Nothing is added to the logs or print out in the CLI. My ATA is online and running perfectly; it rings and provides dial tone. Calls between extensions work just fine even when gvoice isn’t.

Restarting the centos server or forcing asterisk to reload will restore function temporarily. Amportal restart no longer works properly, and I have to kill -9 asterisk’s processes. Following a restart, incoming and outcoming calls work fine until after a random timeout of about 6 minutes. Another thing i’ve noticed has broken is the bootup errors regarding missing dahdi module. The error was noticed last month. I use SIP ATAs so my system still worked.

When Incoming calls are not working, incoming calls do not generate an entry in the logs i’m watching: log/messages, asterisk/messages, full, queue_log, freepbx_dbug and nothing appears in CLI set to 15 debug levels, or whatever. It’s clear that pbxiaf’s jabber module is simply no longer logged into the jabber server.

Nothing has been changed in my service provider, modem, router or F17 Linux VM host, other than that Virtualbox was recently updated to 4.2.12 r84980. The problem predates the vbox update, but started several days after running updates-fixes and updates-programs. I’ve looked over my gvoice settings for both accounts, and they’re still set up as required for pbxiaf. I can still make and receive calls using the gmail web app and headphones, and the connection does not time out. I stay logged out of these accounts though I do access the email using IMAP, and one of them has been associated with Feedly since early last month.

My conclusion is that running updates-fixes or updates-programs toward the beginning of this month has changed some behavior such as the firewall, or the jabber module has lost it’s ability to maintain an open connection to gvoice. I ran the updates in order to try and clean up the missing dahdi error. Didn’t work, but it also didn’t break incoming calls/jabber presence immediately.

I really don’t think i’ve done anything to cause my pbxiaf environment to die, so I guess what I want to accomplish is to get confirmation that there is a known problem that it breaks itself when running updates, or confirmation that this jabber module no longer works with gvoice, and hopefully a fix other than “upgrade to the latest version” because, “In A Flash” nonwithstanding, that would take hours, followed by days of tweaking and teasing to get my extensions running as before.

*BTW, this was ridiculously involved, and it would be sweet if the pbxiaf people didn’t choose defaults suitable for a small business with a single ring group! Can has wizards for setting up private numbers plz?

Pretty much same boat, and posted just prior to you. I wonder if Google hasn’t changed something in their gchat client to have caused the issue. My issues started right around the beginning of April as well.

Sad that this thread is so quiet, but I at least feel comfortable that someone else is miserable as well! :smiley:

I went ahead and tried to start from scratch with the latest VM edition of PBXIAF. The same problem persists. Since I’m actually using PBXIAF, i’m going to continue this on their forum. Someone else is having the same problem as me, and has brought my last post here to their attention. If anyone wants to follow me, I’ll be here:
http://pbxinaflash.com/community/index.php?threads/no-gv-inbound-outbound-calls-after-idle-5-minutes.15900/#post-104548

Appears to be a new keepalive wrinkle. We’ve posted an interim fix to try until the Asterisk 11 Motif issue can get sorted out. Doesn’t happen in Asterisk 1.8.

Ok, a bit of experimentation has proven that both the latest Green edition of PBXIAF with Motif as well at the old Purple edition with Jabber are working fine once again as long as the router’s TCP timeout is kept at about 360 seconds or longer. That’s all it took, guys.

Not placing blame on Motif at all, but it would be in everyone’s best interest if they made the keep-alive more robust and fixed whatever is keeping it from realizing that it had a dead socket.

I am having the same issue and i noticed in my firewall about 4 rtp connections are still open after disconecting the the call… it seems when those connections actually drop i can make calls again. is google voice limit to 1 channel at a time? and is there a way to disconnect rtp channels after calls… now i am using 11.2 ( i couldnt find a 11.3 downloas anymore)

i have tryed 11.6 and and 11.7 and ice support seems broken on them.

also not sure if it the same issue, but if i restart my firewall my gvoice stops working until i restart my asterisk as well

i am using freepbx as well

Hey guys I am not sure if this is a sure fix but it has worked for me for the last 14 days. I have been having the same problems as everyone on this thread and I have tried so many “fixes” but nothing seams to work. Google Voice would always die/disconnect after a few days or hours of just sitting idle. Calls no longer where sent to the PBX and GV Servers would pickup the call instead. So frustrating.

I had basically given up on the FreePBX system I built until one day a friend offered me an Aastra 6757i phone. Now previously I had just been using a soft phone client on my laptop or iPhone I never really wanted a desk phone. Anyways I connected up the Aastra phone and for some reason the google voice account is now staying active/connected.

Now I am no expert on this topic but this might just point someone in the right direction in explaining why the Google Voice Motif says that its connected but calls don’t come in or out.

My theory is that having one always active extension is somehow keeping the connection alive vs when all extensions are inactive the FreePBX Server goes idle and the connection is somehow lost.

Has there been a fix for this, i set up cron jobs to automaticly reboot asterisk but this is becomming out of hand, there is no way of knowing its dead unless trying to make a call and it only keeps ringing… and even then not really sure if its the problem or the person just snt answering… The only way for me to know for sure now is for me to call myself.

I also make frequent changes to firewall and after every reset my connection to google voice is severed.