Pete,<br>
<br>
Thank you for script. I can not find find channel variables rdnis, sip_to_user and all others which start with "sb" on wiki page<br>
<br>
<a href="http://wiki.freeswitch.org/wiki/Channel_Variables">http://wiki.freeswitch.org/wiki/Channel_Variables</a><br>
<br>
Are they undocumented?<br>
<br>
-Vladimir Rodionov<br><br><br><div class="gmail_quote">On Wed, Aug 5, 2009 at 8:45 PM, Pete Mueller <span dir="ltr"><<a href="mailto:pete@privateconnect.com">pete@privateconnect.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div><span style="font-family: Verdana; color: rgb(0, 0, 0); font-size: 10pt;">Disclaimer: I'm not familiar with all the mods of FS, There may be one that does this already. There are probably many ways to do this, I am just offering one that works well for me.<br>
<br>Item #1 - Findout the callee #. "destination_number" can be set to several different things based on the gateway configuration (forced override with an extension) and may or may not start with a "+" so the example below may not work. To make matters worse, different gateways set fields differently when they hand off the call. The most reliable I've found is "rdnis" or "sip_to_user" , however if you know you are going to stay with one gateway, you can relay on the oddities of the way they are configured. I had to write something relatively generic, so I moved all processing to a script (see #3 below)<br>
<br>Item #2 - Find the caller ID. This is located in "caller_id_number", but remember in your processing that caller ID may be
"anonymous", "restricted", "unknown" or some other word when dealing with blocked/private numbers. You cannot looks for just numbers.<br><br>Item #3 - Routing. As I mentioned I have 100s of numbers across many gateways, so I needed a way to route the calls to the right places AND know which gateway the call came in on, so I can bridge the call out the same gateway. I handled this by creating a small DB table (using postgreSQL) and connecting using LUA and luasql. The table has three fields: number, gateway, and extension to route to. In my public.xml I list all the places a call can be routed to and the last entry is a unconditional transfer to the "switchboard" script. The switchboard script matches "rdnis" and "sip_to_user" to find the callee and then performs a lookup for the extension to route to.<br>
<br>If you would like a copy of my switchboard script I can provide it to you in a PM.<br>-pete<br><br>
<blockquote style="border-left: 2px solid blue; margin-left: 8px; padding-left: 8px; font-size: 10pt; color: black; font-family: verdana;">
<div><div class="im">
-------- Original Message --------<br>
Subject: Re: [Freeswitch-users] Multiple DIDs per SIP trunk (how to<br>
configure?)<br>
From: Vladimir Rodionov <<a href="mailto:vladrodionov@gmail.com" target="_blank">vladrodionov@gmail.com</a>><br>
Date: Wed, August 05, 2009 6:57 pm<br>
To: <a href="mailto:freeswitch-users@lists.freeswitch.org" target="_blank">freeswitch-users@lists.freeswitch.org</a><br>
<br>
No, it is more like static routing. I need my <b>script program</b> be invoked when somebody dial in. That is it. One script for all inbound DIDs. Suppose I have thousand of them. I think I know how to accomplish this but I am not sure yet.<br>
<br></div><div><div></div><div class="h5"> in my dialplan I need to define:<br> <br> <pre><font size="4"><!-- Launch a JavaScript application if dialed in--><br> <extension name="ProviderABC"><br>
<condition field="source" expression="mod_sofia"/><br> <b><condition field="destination_number" expression="^1NXXNXXXXXX$"></b><br>
<action application="javascript" data="/usr/local/freeswitch/scripts/myapp.js"/><br> </condition><br> </extension></font><br></pre> <br> In provider configuration:<br> <br>
<pre><font size="4"><gateway name="voicepulse"><br> <!--/// account username *required* ///--><br> <param name="username" value="your-username"/><br> <!--/// auth realm: *optional* same as gateway name, if blank ///--><br>
<param name="realm" value="<a href="http://nyc.voicepulse.com" target="_blank">nyc.voicepulse.com</a>"/><br> <!--/// account password *required* ///--><br> <param name="password" value="your-password"/><br>
<!--/// extension for inbound calls: *optional* same as username, if blank ///--><br><b> </b> <b><param name="extension" value="1NXXNXXXXXX"/> </b><br> <!--/// proxy host: *optional* same as realm, if blank ///--><br>
<param name="proxy" value="<a href="http://nyc.voicepulse.com" target="_blank">nyc.voicepulse.com</a>"/><br> <!--/// expire in seconds: *optional* 3600, if blank ///--><br>
<param name="expire-seconds" value="600"/><br>
<br>         <param name="register" value="true"/><br> </gateway></font></pre> <br>Something like this, yes? I can use regular expressions in destination_number?<br><br>Q: There is object Session in JavaScript, Lua. Is Session.destination == destination_number from incoming call? It is not clear for me from what I have read so far.<br>
<br>TIA,<br><br>-Vladimir Rodionov<br><br><div class="gmail_quote">On Wed, Aug 5, 2009 at 6:26 PM, Seven Du <font dir="ltr"><<a href="mailto:dujinfang@gmail.com" target="_blank">dujinfang@gmail.com</a>></font> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"> mod_easyroute?<br><br><div class="gmail_quote">2009/8/6 Vladimir Rodionov <font dir="ltr"><<a href="mailto:vladrodionov@gmail.com" target="_blank">vladrodionov@gmail.com</a>></font><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"> <div><div></div><div> Hi, everybody<br><br>This is a newbie question: Suppose I have XX (variable dynamic number) DIDs assigned to one sip trunk (from VOIP provider ABC ). All calls coming from VOIP provider ABC MUST be routed to the same lua/js/whatever script. Is it possible in FS? If yes, how everything should be configuered? Dialplan, sip gateway? One more question: suppose it is doeable as I hope then how can I get in my script CalleeID (not a CallerID)? Basicaly, <br>
<br>I want to acomplish the following:<br><br>1. Avoid re-configuring FS every time I got new bunch of DIDs assigned/released from/to my Voip provider.<br>2. Have a way of extracting CalleeID in my script.<br><br>TIA,<br>
<font color="#888888"> <br>Vladimir Rodionov<br><br> </font><br></div></div>_______________________________________________<br> FreeSWITCH-users mailing list<br> <a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br> <br></blockquote></div><br> <br>_______________________________________________<br> FreeSWITCH-users mailing list<br> <a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br> <br></blockquote></div><br> </div></div><hr><div class="im">_______________________________________________<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
</div></div>
</blockquote></span></div>
<br>_______________________________________________<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<br></blockquote></div><br>