How to bypass Grand Central's requirement to press 1 to accept the call

Google's GrandCentral service offers incoming DID's in a number of places that may not be immediately available from other providers, and their service is free. There are, however, two downsides to using GrandCentral:

  • At the time of this writing, you need an invitation from another GrandCentral user. This is solely a requirement imposed by Google (prior to Google's purchase of GrandCentral, anyone could sign up for a GrandCentral account, without the necessity of an invite). Anyway, I'll spare you my rant about Google, suffice it to say I think they have forgotten their corporate motto.
  • GrandCentral lets you route the call to more than one destination, so when the call is answered they ask you to press 1, presumably to confirm that you want to accept the call at that number, and that you're not an answering machine or voicemail box. While this is a great feature in some scenarios, it's not so great if we want the call to come into FreePBX and go to an IVR, or if perhaps we want the call to go to a FreePBX voicemail box.
Fortunately, there is a workaround suggested by user "cbrain" in this thread on BroadbandReports.com. This works best if you can dedicate one DID (even if it's a local PSTN line) to calls received from GrandCentral. Or, because GrandCentral lets you make a Gizmo Project number a destination, you can get a free Gizmo Project account and then use your Gizmo Project DID as your incoming route for GrandCentral calls (the following instructions from "cbrain" assume the latter):

I just gave it a try and it works.

First go to "config edit" and add the following to -extensions_custom.conf-

[custom-gc-did]
exten => 1,1,answer
exten => 1,n,wait(2)
exten => 1,n,SendDTMF(1)
exten => 1,n,Goto(ext-group,2,1) ;use a setup ring group or extension

Then go to FreePBX - setup - Inbound Routes - and set up or edit your Gizmo Project DID. In the - set destination - section set - Custom App: - to - custom-gc-did,1,1 -.

Then setup your ring group or extension.

If you need to have access to incoming from GrandCentral from your cell or other, change your inbound route from FreePBX directly to the same ring group or extension and toggle between press 1 and direct ring.

(End of quote from posted message)

In case it's not obvious, the key to the above instructions is that you have Asterisk answer the line, wait two seconds, and then send a DTMF "1". Then you send the call to wherever you really want it to go, whether that is a specific IVR menu, a particular extension or ring group, a voicemail box, or wherever. But, you only want to do this for calls coming from GrandCentral (e.g. over your Gizmo Project DID), so that your regular callers don't get blasted with a DTMF "1" every time they call you.

Note that once you have sent the "1", the call will have been considered as answered by the caller's telephone company. If you transfer to an extension that gives a ringing tone, and the caller abandons the call, they may wonder why they have been charged for an "uncompleted" call (from their perspective). So, you may want to play a short announcement so that the caller knows that the call has been answered and is being transferred. Obviously, this is not a concern if you send the call directly to an IVR menu, or a voicemail box.

Thanks to "cbrain" for the instructions. By the way, I can't comment on how well the above instructions work, because nobody's ever sent me a GrandCentral invite!