Ho Bogdan, Thanks for this just want to make sure i am doing this the right way
So im my thinking i have the following tables in dialplan *************************** 1. row *************************** id: 6 dpid: 1 pr: 1 match_op: 0 match_exp: 196.2.97.165_41.213.100.100 match_flags: 0 subst_exp: repl_exp: timerec: disabled: 0 attrs: route=2,forced_socket=41.213.100.200 *************************** 2. row *************************** id: 4 dpid: 1 pr: 1 match_op: 0 match_exp: 196.2.97.165_41.213.100.200 match_flags: 0 subst_exp: repl_exp: \2 timerec: disabled: 0 attrs: route=1,forced_socket=41.213.100.100 In my script I will have something like this if (dp_translate("1",/$si+"_"+$Ri,$avp(foo)) { Do some routing } Is this the way you envisioned doing this, Also what is the correct way to to get seperate AVP's for the attributes column i have not been able to find the answer to this i currently manually get the attributes avp Lets say my attributes column has the following route="1";somethingelse="random" I currently get the route by using avp_subst like so avp_subst("$avp(foo)/$avp(string_custom_route)/", '/.*Route=[^"]*"([^"]*).*/\1/'); then i use ///$avp(string_custom_route)/ to route the call, I feel like this is not good practice if you could guide me here i would appreciate it as i have tried finding examples with no avail. Regards Trevor Steyn / On 05/08/2015 09:50, Bogdan-Andrei Iancu wrote: > Hi Trevor, > > Why not using the dialplan module which allows you do operate with > custom data, it does regexp search and caching too. > > Regards, > Bogdan-Andrei Iancu > OpenSIPS Founder and Developer > http://www.opensips-solutions.com > On 04.08.2015 21:32, Trevor Steyn wrote: >> Hi All, >> >> I would like to be able to route calls based on Source IP and >> Destination IP (always one of opensips IPs), As usual there are many >> ways to skin a cat, >> My first thought was to have a table such as the address table but >> modify the IP field to a concatenation of $si and $RI >> >> so you would have a table like this >> >> >> *************************** 1. row *************************** >> id: 6 >> grp: 1 >> ip: 196.2.97.165_41.213.100.100 >> mask: 32 >> port: 0 >> proto: udp >> pattern: >> context_info: Route=2;Forced_Socket=41.213.100.200 >> >> So in the route script i would do something like this >> >> /check_cource_address("1",$si+"_"+$Ri) / >> >> Obviously i cannot just do this with the permissions module as it >> wont accept this in the IP field as it expects a valid IP, >> So before i go down that road i was wondering if anyone knows an out >> of the box way i can do this without impacting performance, I could >> easily use avp_ops for this but as far as i can see it does a db >> query for every transaction, this is not something that needs to be >> called for every new sip transaction it should be loaded into memory >> at startup. >> >> Your thoughts would be appreciated I would just like to be pointed in >> the right (Best possible way to do this) direction. >> >> Regards >> Trevor Steyn >> >> >> >> >> >> _______________________________________________ >> Users mailing list >> Users@lists.opensips.org >> http://lists.opensips.org/cgi-bin/mailman/listinfo/users > _______________________________________________ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users