Alternate Routing and Call Retries...

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi All...

Well, we finally managed to get a development environment setup, and now
we are going to start implementing the alternate routing that we
require.

This is what happens
Phone Call comes in:
	Try carrier #1
	if that fails, reject call

This is what we need:

Phone Call comes in:
	Try carrier #1
	if that fails, Try Carrier #2
	if that fails, Try Carrier #3
	if that fails, Try Carrier #4
	if that fails, Try Carrier #n....
	Reject call

Also talking to our traffic manager, he wants to be able to try the same
carrier multiple times.. This will be indicated as a parameter in the
rewritten string.

Our initial thoughts:

The main thing is a way to indicate to the GK that there are multiple
phone numbers, and then how to proceed. For our INITIAL development, we
are going to do hardcoding of the "RE-WRITTEN" numbers. 

To put it into context of what currently exists, our rewrite will look
something like this:

0119641=~~444#9641|R4&555#9641|R2&666#0119641

Don't try and think if this will work in the current framework... It
won't... It's here just as an example. I'll explain the rewrite below.
Where does it get rewritten? Our current thinking is it will get
rewritten at the radius server. All logic to do it will be in a SQL
function, that is what I'm going to be be playing with while our C
developer is working on the gatekeeper. This way we can put some pretty
complex logic in usin ASR's if we really get ambitious. It MAY be able
to be done within the config file, but that just may get WAY to messy...

Anyways, here's what is going happen:

Inbound number: 01196415551234

Rewrite will
be:~~444#96415551234|R4&555#96415551234|R2&666#01196415551234

What does this string mean?

~~ = this indicates that this is a multiple route rewrite
444#96415551234 = this is the first endpoint to try
| = this indicates that there are parameters to this call (Parameters |
are optional)
R4 = Retry this number 4 times before moving on 
& = Endpoint separator
555#96415551234 = second endpoint to try
| = Indicates that there are parameters
R2 = Retry this number 2 times before moving on 
& = Endpoint separator
666#01196415551234 = third and final endpoint to try

Call will be rejected after this call is attempted.

Proposed Config file parameters:
[RasSrv::AlternateEndpoints]

Timeout = 0 (default)
	- Seconds to attempt before timing out (reject call) 
	- 0 indicates attempt entire string

RecordIndicator = ~~ (Default)
	- Default indicator of Multiple Endpoint Rewrite

ParamIndicator = | (Default)
	- Character used to separate rewritten number from parameters

NumIndicator = & (default)
	- Character used to separate rewritten numbers

RedialDelay = 0 (Default)
	- seconds between multiple calls to the same carrier


So this is our VERY FIRST blush at this.. Chew it up, spit it out and
let us know what you think!

Anyone else interested can contact me and we can chat... Use "BYPASS:"
in the subject of the message to get around my spam filter...

TTYL
Derrick


-------------------------------------------------------
This SF.Net email sponsored by Black Hat Briefings & Training.
Attend Black Hat Briefings & Training, Las Vegas July 24-29 - 
digital self defense, top technical experts, no vendor pitches, 
unmatched networking opportunities. Visit www.blackhat.com

_______________________________________________________

List: Openh323gk-users@xxxxxxxxxxxxxxxxxxxxx
Archive: http://sourceforge.net/mailarchive/forum.php?forum_id?49
Homepage: http://www.gnugk.org/


[Index of Archives]     [SIP]     [Open H.323]     [Gnu Gatekeeper]     [Asterisk PBX]     [ISDN Cause Codes]     [Yosemite News]

  Powered by Linux