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/