[asterisk-dev] Please consider adding new sip peer/Google Voice retry options
Joshua Colp
jcolp at digium.com
Fri Nov 9 09:32:54 CST 2012
MichiganTelephone wrote:
> I'd like to see the following settings added for SIP configurations
> for peers and (in particular) in the settings for whatever is used in
> a Google Voice connection in Asterisk 11, unless there is already
> some mechanism to handle it (I'm not on 11 yet so don't know):
Google Voice doesn't use SIP, it uses a Google derived Jingle protocol
which is handled by the chan_motif channel driver in Asterisk 11. This
channel driver does not have any of the functionality you describe
below, for a good reason.
> errorretries= (default 0) errorretrydelay= (in ms, suggested default
> 500) retryonerrorcodes= (comma separated list, suggested default
> 503)
>
> The idea is that when you are creating a trunk to Google Voice, it is
> far too often the case that Google rejects the call with a 503 error.
> But if you immediately retry the call, it will go through on the
> second attempt. Rather than force the user to hang up redial, why
> not simply provide a mechanism that will retry the call one or more
> times on the same trunk or connection prior to giving up, with an
> optional short delay between attempts, and the ability to specify
> that these retries should occur only if particular errors (in
> particular the dreaded 503 error) are the cause of the rejection.
Google Voice doesn't reject the call with a 503, it rejects it with a
Jingle specific error (probably service-unavailable or something else).
This gets mapped into SIP as a 503.
> Sane values (for Google Voice) might be something like
> errorretries=2, errorretrydelay=500, and retryonerrorcodes=503. If
> the errorretries value is not set it should default to 0, meaning the
> call fails without any retries if an error is received, as happens
> now.
The Google Voice servers have anti-attack/anti-spam/anti-something built
into them. If they sense you are doing something like the above they
will block you for a period of time. I know, it's happened to me during
the writing of chan_motif. This can even happen if you just place many
calls closely together. You need a human factor in there.
--
Joshua Colp
Digium, Inc. | Senior Software Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: www.digium.com & www.asterisk.org
More information about the asterisk-dev
mailing list