[Freeswitch-users] mod_lcr
Chris Graham
chrisg.lists at gmail.com
Wed May 18 17:05:46 MSD 2011
Thanks Nandy, have no idea how I overlooked that after three hours of debugging.
On Tue, May 17, 2011 at 2:58 AM, Nandy Dagondon <gcd at i.ph> wrote:
> u hv to enclose the destination number with () so its value will be assigned
> to $1
> <condition field="destination_number" expression="^(0112341234)$">
>
>
> On Mon, May 16, 2011 at 11:14 PM, Chris Graham <chrisg.lists at gmail.com>
> wrote:
>>
>> Hi All,
>> I am having an issue with mod_lcr, when I query from the CLI it
>> returns the expected values as per:
>>
>> freeswitch at internal> lcr 0112341234 peak
>> | Digit Match | Carrier | Rate | Codec | CID Regexp | Limit |
>> Dialstring
>> |
>> | 011 | Telkom | 0.32000 | | | |
>>
>> [lcr_carrier=Telkom,lcr_rate=0.32000]sofia/gateway/pp-ast-trunk-01/0112341234
>> |
>> freeswitch at internal> 2011-05-16 17:06:19.847934 [DEBUG] mod_lcr.c:1687
>> data passed to lcr is [0112341234 peak]
>> 2011-05-16 17:06:19.847934 [WARNING] mod_lcr.c:1731 Using default CID
>> [18005551212]
>> 2011-05-16 17:06:19.847934 [DEBUG] mod_lcr.c:836 Has NPA NXX: [1 == 1]
>> 2011-05-16 17:06:19.847934 [DEBUG] mod_lcr.c:771 0112341234 doesn't
>> appear to be a NANP number
>> 2011-05-16 17:06:19.847934 [DEBUG] mod_lcr.c:852 intra routing
>> [state:0 lata:0] so rate field is [rate]
>> 2011-05-16 17:06:19.847934 [DEBUG] mod_lcr.c:872 we have an event
>> 2011-05-16 17:06:19.847934 [DEBUG] mod_lcr.c:896 SQL: SELECT l.digits
>> AS lcr_digits, c.carrier_name AS lcr_carrier_name, l.rate AS
>> lcr_rate_field, cg.prefix AS lcr_gw_prefix, cg.suffix AS
>> lcr_gw_suffix, l.lead_strip AS lcr_lead_strip, l.trail_strip AS
>> lcr_trail_strip, l.prefix AS lcr_prefix, l.suffix AS lcr_suffix,
>> cg.codec AS lcr_codec, l.cid AS lcr_cid FROM lcr l JOIN carriers c ON
>> l.carrier_id=c.id JOIN carrier_gateway cg ON c.id=cg.carrier_id WHERE
>> c.enabled = '1' AND cg.enabled = '1' AND l.enabled = '1' AND digits IN
>> (0112341234, 011234123, 01123412, 0112341, 011234, 01123, 0112, 011,
>> 01, 0) AND CURRENT_TIMESTAMP BETWEEN date_start AND date_end ORDER BY
>> digits DESC, rate, quality DESC, reliability DESC, rand();
>> 2011-05-16 17:06:19.847934 [DEBUG] mod_lcr.c:337 Returning Dialstring
>>
>> [lcr_carrier=Telkom,lcr_rate=0.32000]sofia/gateway/pp-ast-trunk-01/0112341234
>> 2011-05-16 17:06:19.847934 [DEBUG] mod_lcr.c:664 Adding Telkom to head of
>> list
>> 2011-05-16 17:06:19.847934 [DEBUG] mod_lcr.c:337 Returning Dialstring
>>
>> [lcr_carrier=Neotel,lcr_rate=0.32000]sofia/gateway/pp-ast-trunk-01/0112341234
>> 2011-05-16 17:06:19.847934 [DEBUG] mod_lcr.c:682 Ignoring Duplicate
>> route for termination point (sofia/gateway/pp-ast-trunk-01/:)
>> 2011-05-16 17:06:19.847934 [DEBUG] mod_lcr.c:337 Returning Dialstring
>>
>> [lcr_carrier=Telkom,lcr_rate=0.32000]sofia/gateway/pp-ast-trunk-01/0112341234
>>
>>
>> When calling from the dialplan, it fails with:
>>
>> 2011-05-16 17:08:33.100261 [DEBUG] mod_lcr.c:1563 intrastate channel
>> var is [undef]
>> 2011-05-16 17:08:33.100261 [DEBUG] mod_lcr.c:1566 Select routes based
>> on interstate rates
>> 2011-05-16 17:08:33.100261 [DEBUG] mod_lcr.c:1585 LCR Lookup on $1
>> using profile peak
>> 2011-05-16 17:08:33.100261 [DEBUG] mod_lcr.c:836 Has NPA NXX: [1 == 1]
>> 2011-05-16 17:08:33.100261 [DEBUG] mod_lcr.c:771 $1 doesn't appear to
>> be a NANP number
>> 2011-05-16 17:08:33.100261 [DEBUG] mod_lcr.c:852 intra routing
>> [state:0 lata:0] so rate field is [rate]
>> 2011-05-16 17:08:33.100261 [DEBUG] mod_lcr.c:857 we have a session
>> 2011-05-16 17:08:33.100261 [DEBUG] mod_lcr.c:896 SQL: SELECT l.digits
>> AS lcr_digits, c.carrier_name AS lcr_carrier_name, l.rate AS
>> lcr_rate_field, cg.prefix AS lcr_gw_prefix, cg.suffix AS
>> lcr_gw_suffix, l.lead_strip AS lcr_lead_strip, l.trail_strip AS
>> lcr_trail_strip, l.prefix AS lcr_prefix, l.suffix AS lcr_suffix,
>> cg.codec AS lcr_codec, l.cid AS lcr_cid FROM lcr l JOIN carriers c ON
>> l.carrier_id=c.id JOIN carrier_gateway cg ON c.id=cg.carrier_id WHERE
>> c.enabled = '1' AND cg.enabled = '1' AND l.enabled = '1' AND digits IN
>> (1) AND CURRENT_TIMESTAMP BETWEEN date_start AND date_end ORDER BY
>> digits DESC, rate, quality DESC, reliability DESC, rand();
>> EXECUTE sofia/internal/1000 at 192.168.16.136 bridge()
>> 2011-05-16 17:08:33.100261 [NOTICE] switch_core_state_machine.c:189
>> sofia/internal/1000 at 192.168.16.136 has executed the last dialplan
>> instruction, hanging up.
>>
>>
>> The xml entry called:
>>
>> <extension name="Test">
>> <condition field="destination_number"
>> expression="^0112341234$">
>> <action application="lcr" data="$1 peak"/>
>> <action application="bridge"
>> data="${lcr_auto_route}"/>
>> </condition>
>> </extension>
>>
>>
>> My custom query:
>>
>> <profile name="peak">
>> <param name="custom_sql" value="
>> SELECT l.digits AS lcr_digits, c.carrier_name AS lcr_carrier_name,
>> l.rate AS lcr_rate_field, cg.prefix AS lcr_gw_prefix, cg.suffix AS
>> lcr_gw_suffix, l.lead_strip AS lcr_lead_strip, l.trail_strip AS
>> lcr_trail_strip, l.prefix AS lcr_prefix, l.suffix AS lcr_suffix,
>> cg.codec AS lcr_codec, l.cid AS lcr_cid FROM lcr l JOIN carriers c ON
>> l.carrier_id=c.id JOIN carrier_gateway cg ON c.id=cg.carrier_id WHERE
>> c.enabled = '1' AND cg.enabled = '1' AND l.enabled = '1' AND digits IN
>> (${lcr_query_expanded_digits}) AND CURRENT_TIMESTAMP BETWEEN
>> date_start AND date_end ORDER BY digits DESC, rate, quality DESC,
>> reliability DESC, rand();
>> "/>
>> </profile>
>>
>> Thanks in advance,
>> Chris
>>
>> _______________________________________________
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>
>
> _______________________________________________
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>
More information about the FreeSWITCH-users
mailing list