I recently started at a new place of employment and wanted to port my cell number over from Sprint which my old employer used. This was okay with them so I ended up porting the number to my Google Voice account. I wanted to forward it to a new DID that I would get with a SIP provider and run my Asterisk PBX from that.
I then got a new phone from the employer and installed a Android SIP client on it. Registered the extension to my Asterisk server and started some testing.
Well sometimes the calls work fine, and sometimes Google Voice ends up just sending the call to the Google Voicemail. I wanted to fix this problem, and I believe I have found the solution if your trying the same thing.
On your incoming route in Asterisk for your Google Voice number, you need to setup a wait period. In the incoming route screen of FreePBX there is a field that allows you to wait before picking up the call. I changed this from an empty default field to 2 seconds.
I then checked the box above it to enable Signal RINGING.
It took me a while to figure this out, but I now have my incoming Google Voice number coming to my Asterisk server, hitting the incoming route, then an IVR, then to various extensions and ring groups.