Hi Fuad, without going too far in kamailio's internals, a resume route is equivalent to a failure route and, as such, it operates on a "fake" fresh message. One solution is to use msg_apply_changes() but my general advice is that all headers and sdp mangling (aka rtpengine invocations) should be done in branch routes, especially if your routing logic includes async routes/failure routes.
Federico On Mon, Mar 28, 2022 at 1:20 PM Fuad Trle <[email protected]> wrote: > Hi Henning, > > I have tried this, but without success. *This function can be used from > REQUEST_ROUTE or core REPLY_ROUTE.* t_newtrans & http_async_query force > me to enter a new routing block and call fail with "500 I'm terribly sorry, > server error occurred (1/TM)". There is no explicit exit at the end of > route(HTTP) but for some reason execution stopped and did not continue in > request_route. > > I don't think I can fulfil those requirements (call function in request > route and before record_route). Suspend is the last option (after location > lookup and parallel forking). > > On Sun, Mar 27, 2022 at 10:51 PM Henning Westerholt <[email protected]> wrote: > >> Hello, >> >> >> >> if you are not seeing them in the configuration later on directly, this >> is expected: >> https://www.kamailio.org/wiki/tutorials/faq/main#why_changes_made_to_headers_or >> >> >> >> Cheers, >> >> >> >> Henning >> >> >> >> -- >> >> Henning Westerholt – https://skalatan.de/blog/ >> >> Kamailio services – https://gilawa.com >> >> >> >> *From:* sr-users <[email protected]> *On Behalf Of *Fuad >> Trle >> *Sent:* Friday, March 25, 2022 4:08 PM >> *To:* [email protected] >> *Subject:* [SR-Users] t_suspend / t_continue & insert_hf >> >> >> >> Hello, >> >> >> >> I'm inserting some headers after getting value from http_async_query. If >> a call is relayed, I see them. But If I t_suspend and t_continue call >> (before time out), I do not see added headers. Here is flow: >> >> >> >> route(START) >> >> t_newtran(); >> >> #.. prep for query >> >> http_async_query("url","HTTP"); >> >> >> >> route(HTTP) >> >> #.. collect and using data from query >> >> insert_hf("$var(key): $var(value)\r\n"); >> >> t_store(); >> >> >> >> if (registered("location") { >> >> route(RELAY); >> >> } else { >> >> t_suspend(); >> >> exit; >> >> } >> >> >> >> route(AWAKE) >> >> t_continue(); >> >> >> >> I see that the branch index ($T_branch_idx) is 0 at start. 1 after http >> query, +1 if there is forking or location. +1 after t_suspend. It looks >> like t_continue uses a branch with index after t_suspend. I tried with >> t_save_lumps() to carry over changes. >> >> >> >> Any idea how to do this? >> > __________________________________________________________ > Kamailio - Users Mailing List - Non Commercial Discussions > * [email protected] > Important: keep the mailing list in the recipients, do not reply only to > the sender! > Edit mailing list options or unsubscribe: > * https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users >
__________________________________________________________ Kamailio - Users Mailing List - Non Commercial Discussions * [email protected] Important: keep the mailing list in the recipients, do not reply only to the sender! Edit mailing list options or unsubscribe: * https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
