Thanks Daniel! You’re 100% right, that was the issue. Using a private variable I can see the change. I also had an exit in place before the relay to test, removing that I can see in Wireshark the request is being sent as expected.
Now I just have to figure out how to deal with UAC auth challenges! Thanks for your help, as always :) ________________________________ Andrew White - Director uConnected Email: [email protected] Web: www.uConnected.com.au > On 31 Mar 2019, at 9:36 pm, Daniel-Constantin Mierla <[email protected]> > wrote: > > Hello, > > changes to sip message headers and body are not visible immediately, see: > > * > https://www.kamailio.org/wiki/tutorials/faq/main#why_changes_made_to_headers_or > > <https://www.kamailio.org/wiki/tutorials/faq/main#why_changes_made_to_headers_or> > Use something like $var(x) to see if set is working. > > Cheers, > Daniel > > On 31.03.19 08:44, Andrew White wrote: >> Hey Daniel, >> >> Thanks for the patch! >> >> It doesn’t appear to be throwing the error any longer. However as far as I >> can see, the value is not being set. Here’s the code, called from >> ksr_request_route() >> >> def ksr_route_to_trunk() >> KSR.info("Route to trunk") >> if KSR::TM.t_is_set("failure_route") < 0 then >> KSR::TM.t_on_failure("ksr_failure_manage_trunk") >> end >> >> # Relay >> trunk = $redis_local.get("trunk") # Will probably eventually be a HSET >> uacs = get_all_uacs() >> KSR.info("$fu is #{KSR::PV.gete("$fu")}") >> KSR.info("Updating to >> #{"sip:#{uacs[trunk]['r_username']}@#{uacs[trunk]['r_domain']}"}") >> KSR::PV.sets("$fu", >> "sip:#{uacs[trunk]['r_username']}@#{uacs[trunk]['r_domain']}”) >> KSR.info("$fu rewritten to #{KSR::PV.gete("$fu")}”) >> replace_server_and_uac_header() >> KSR::TM.t_relay() >> exit >> end >> >> The output I get: >> >> Mar 31 06:39:25 ip-10-0-0-2 /usr/local/sbin/kamailio[2361]: INFO: {1 102 >> INVITE 73bda23e5306c6fd4b31a0b615b47c0e} <core> [core/kemi.c:98]: >> sr_kemi_core_info(): Route to trunk >> Mar 31 06:39:25 ip-10-0-0-2 /usr/local/sbin/kamailio[2361]: INFO: {1 102 >> INVITE 73bda23e5306c6fd4b31a0b615b47c0e} <core> [core/kemi.c:98]: >> sr_kemi_core_info(): $fu is sip:[email protected] >> <sip:[email protected]> >> Mar 31 06:39:25 ip-10-0-0-2 /usr/local/sbin/kamailio[2361]: INFO: {1 102 >> INVITE 73bda23e5306c6fd4b31a0b615b47c0e} <core> [core/kemi.c:98]: >> sr_kemi_core_info(): Updating to sip:[email protected] >> <sip:[email protected]> >> Mar 31 06:39:25 ip-10-0-0-2 /usr/local/sbin/kamailio[2361]: INFO: {1 102 >> INVITE 73bda23e5306c6fd4b31a0b615b47c0e} <core> [core/kemi.c:98]: >> sr_kemi_core_info(): $fu rewritten to sip: [email protected] >> <mailto:[email protected]> >> >> So it seems like KSR::PV.sets() is being called without issue, however when >> I KSR::PV.gete() for $fu it still holds the old value. >> >> ________________________________ >> >> Andrew White - Director >> uConnected >> Email: [email protected] <mailto:[email protected]> >> Web: www.uConnected.com.au <http://www.uconnected.com.au/> >> >>> On 31 Mar 2019, at 12:25 am, Daniel-Constantin Mierla <[email protected] >>> <mailto:[email protected]>> wrote: >>> >>> Hello, >>> >>> can you try with master branch or with the patch from next commit? >>> >>> * >>> https://github.com/kamailio/kamailio/commit/6d43eacd6d5b78fe857267e70b7fa85519a7d5b6 >>> >>> <https://github.com/kamailio/kamailio/commit/6d43eacd6d5b78fe857267e70b7fa85519a7d5b6> >>> While looking at how is exported, I noticed that some param type checks >>> were wrong. Let's see if that's fixing it or is something else. >>> >>> Cheers, >>> Daniel >>> >>> On 30.03.19 05:45, Andrew White wrote: >>>> Hi all, >>>> >>>> I’m trying to set a pseudovariable via app_ruby. I’m able to retrieve >>>> pseudovariables using PV.gete as such: >>>> >>>> >>>> However trying to set these using sets, I get “No method found”: >>>> >>>> KSR::PV.sets("$fu", >>>> "sip:#{$uacs[trunk]['r_username']}@#{$uacs[trunk]['r_domain']}") >>>> >>>> Mar 30 04:44:59 ip-10-0-0-2 /usr/local/sbin/kamailio[28421]: ERROR: {1 102 >>>> INVITE [email protected] >>>> <mailto:[email protected]>:5060} app_ruby >>>> [app_ruby_api.c:107]: app_ruby_print_last_exception(): exception: >>>> undefined method `[]' for nil:NilClass >>>> >>>> PV.seti appears to work correctly. Am I calling the wrong method? >>>> >>>> Thanks! >>>> ________________________________ >>>> >>>> Andrew White - Director >>>> uConnected >>>> Email: [email protected] <mailto:[email protected]> >>>> Web: www.uConnected.com.au <http://www.uconnected.com.au/> >>>> >>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> Kamailio (SER) - Users Mailing List >>>> [email protected] <mailto:[email protected]> >>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users >>>> <https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users> >>> -- >>> Daniel-Constantin Mierla -- www.asipto.com <http://www.asipto.com/> >>> www.twitter.com/miconda <http://www.twitter.com/miconda> -- >>> www.linkedin.com/in/miconda <http://www.linkedin.com/in/miconda> >>> Kamailio World Conference - May 6-8, 2019 -- www.kamailioworld.com >>> <http://www.kamailioworld.com/> > -- > Daniel-Constantin Mierla -- www.asipto.com <http://www.asipto.com/> > www.twitter.com/miconda <http://www.twitter.com/miconda> -- > www.linkedin.com/in/miconda <http://www.linkedin.com/in/miconda> > Kamailio World Conference - May 6-8, 2019 -- www.kamailioworld.com > <http://www.kamailioworld.com/>
_______________________________________________ Kamailio (SER) - Users Mailing List [email protected] https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
