[OpenSIPS-Users] Blind call forwarding in OpenSIPS

Brett Nemeroff brett at nemeroff.com
Wed Sep 9 14:08:17 EST 2020


Hello Nayani,
Your avp spec is for a much older version of OpenSIPs. I'm not sure if
that's your problem or not, but the "s:" syntax is dated for 2.4.x.

Here's the documentation you should reference for your version of OpenSIPs:
https://opensips.org/html/docs/modules/2.4.x/avpops.html#func_avp_db_load

Also, see Bogdan's comment above, did avp_db_load return false?

Just my perspective, but for these kinds of "DB Loads", I almost always
prefer a avp_db_query over a avp_db_load. The syntax is clearer for me, but
I also just really like SQL to begin with. The original avp_db_load syntax
was more inline with how OpenSIPs/OpenSER works from "back in the day".
Would love other's feedback on that. Perhaps avp_db_load is easier for
simple matches, but I think under the hood it's just doing a simple query
anyway. avp_db_query just gives you full access to the actual SQL if you
are into that kind of thing.

-Brett





On Wed, Sep 9, 2020 at 12:25 AM Nayani Nikeshala via Users <
users at lists.opensips.org> wrote:

> Hi!
>
> I'm using OpenSIPS 2.4.7. With the below script, call was not forwarded as
> configured. Is there any issue with my script or is there an alternative
> method to do this ?
>
>
>
> On Tuesday, September 8, 2020, 10:48:27 PM GMT+5:30, Bogdan-Andrei Iancu <
> bogdan at opensips.org> wrote:
>
>
> Hi,
>
> What version of OpenSIPS do you use ? And your experience is that the
> avp_db_load fails ?
>
> Regards,
>
> Bogdan-Andrei Iancu
>
> OpenSIPS Founder and Developer
>   https://www.opensips-solutions.com
> OpenSIPS Summit 2020 online
>   https://www.opensips.org/events/Summit-2020Distributed/
>
> On 9/7/20 1:51 PM, Nayani Nikeshala via Users wrote:
>
> Hello,
>
> I'm trying to do a simple blind call forwarding with the below script
> added into "main request routing logic". (123 dials 789 and 789 is
> forwarded to 456)
>
>
> if(avp_db_load("$ru","$avp(s:callfwd)")) {
>
> $ru = $avp(s:callfwd);
>
> xlog("forwarded to: $avp(s:callfwd)");
>
> route(1);
>
> exit;
>
> }
>
> My usr_preferences table is as below.
>
> opensips=> select * from usr_preferences;
>
>  id | uuid | username | domain | attribute | type |         value
> |    last_modified
>
>
> ----+------+----------+--------+-----------+------+------------------------+---------------------
>
>   1 |      | 789      |        | callfwd   |    0 | sip:456 at xxxxxxxxxxx
>  | 1900-01-01 00:00:01
>
> (1 row)
> opensips=>
>
> I have added the avpops module as below.
>
> #AVPOPS module
>
> loadmodule "avpops.so"
>
> modparam("avpops", "db_url","postgres://opensips:xxxxxxxx@localhost
> /opensips")
> modparam("avpops","avp_table","usr_preferences")
>
> Anyways, this script does not do the call forwarding task. Anyone could
> help on this please. Could there be a problem of the position that I have
> added the script in "main request routing logic".
>
>
>
> _______________________________________________
> Users mailing listUsers at lists.opensips.orghttp://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20200909/cedba10d/attachment.html>


More information about the Users mailing list