Hello, have you run with debug=3 in kamailio.cfg? You should see more log messages about what happens, maybe the transaction is destroyed for some reason, there are debug messages when that happens.
Cheers, Daniel On 07.01.21 17:58, Jeremy McNamara wrote: > Hi - > > route[RELAY] { > if (!t_relay()) { > sl_reply_error(); > } > } > > I also call SETUP_ROUTES separately before RELAY: > > route[SETUP_ROUTES] { > # enable additional event routes for forwarded requests > if (is_method("INVITE|BYE|SUBSCRIBE|UPDATE")) { > if (!t_is_set("branch_route")) { > t_on_branch("MANAGE_BRANCH"); > } > } > if (is_method("INVITE|SUBSCRIBE|UPDATE")) { > if (!t_is_set("onreply_route")) { > t_on_reply("MANAGE_REPLY"); > } > } > } > > > On Thu, Jan 7, 2021 at 11:48 AM Jurijs Ivolga <jurijs.ivo...@gmail.com > <mailto:jurijs.ivo...@gmail.com>> wrote: > > Hi, > > What happens in the route[RELAY]? > > Maybe code after "route(RELAY)" is not executed? > > When there is only 1 device what value is inside $var(hstored) > when the register hits Kamailio? > > Jurijs > > > On Wed, Jan 6, 2021 at 4:27 AM Jeremy McNamara > <mcnamara.jer...@gmail.com <mailto:mcnamara.jer...@gmail.com>> wrote: > > Hi Folks - I am attempting to set up a mobile push > configuration, by following the published example(s). > > If we have more than one endpoint registered, this > configuration works as expected (via the ts_store() path below). > > If we do not have another registered endpoint the transaction > seems to be suspended but then cannot be resumed (t_suspend) > after REGISTER arrives. > > > INFO: <script>: [R-LOG]: INVITE from IP:[24.XXX.XXX.XXX:62665] > [sip:jeremy2@stage][<null>] > NFO: <script>: [R-SUSPEND]: Suspended transaction > [41359:415220139] > INFO: <script>: [R-SUSPEND]: fU:[jeremy] rU:[jeremy2] tU:[jeremy2] > INFO: <script>: [R-SUSPEND]: fU:[jeremy] => tU:[jeremy2] > INFO: <script>: [R-SUSPEND]: vtp:[41359:415220139] > INFO: <script>: [R-SENDPUSH]: Push sent > > [(55516cc061038f1283104abb39072a59107b7d8e13a1fd166b1704a315d07f78][com][hq01gt5utegi18ipkh1b] > [Node-Push]: About to push: > 55516cc061038f1283104abb39072a59107b7d8e13a1fd166b1704a315d07f78 > INFO: <script>: R-REGISTER]: jeremy2 registered > INFO: <script>: [R-REGISTER]: Contact: > > [<sip:ilyartjr@qjwhdafxlbtk.invalid;transport=ws>;expires=10;app-id=stage;pn-voip-tok=55516cc061038f1283104abb39072a59107b7d8e13a1fd166b1704a315d07f78] > INFO: <script>: [R-REGISTER]: App id: stage > INFO: <script>: [R-REGISTER]: Expires: 10 > INFO: <script>: [R-JOIN]: jeremy2 > INFO: <script>: [R-JOIN]: Resuming trasaction > [41359:415220139] jeremy2 (41359:415220139) > WARNING: tm [t_suspend.c:197]: t_continue_helper(): > transaction is not suspended [41359:415220139] > WARNING: tmx [tmx_mod.c:847]: w_t_continue(): resuming the > processing of transaction [41359:415220139] failed > > > Relvant kamailio.cfg > [Note: I did notice we had to switch things up a bit if calls > come from a PSTN number via SBC] > > > modparam("htable", "htable", "vtp=>size=10;autoexpire=300") > > ... > if (!lookup("location")) { > send_reply("100", "Suspending"); > route(SUSPEND); // *testing this path here * > } else { > route(RELAY); > ts_store("$tu"); > $sht(vtp=>stored::$tU) = 1; > xlog("L_INFO", "[R-LOCATION]: Stored transaction > [$T(id_index):$T(id_label)] $fU => $tU\n"); > } > ... > > route[SUSPEND] { > if (!t_suspend()) { > xlog("L_ERROR", "[R-SUSPEND]: Failed to suspend > transaction [$T(id_index):$T(id_label)]\n"); > send_reply("501", "Unknown Destinaton"); > exit; > } > xlog("L_INFO", "[R-SUSPEND]: Suspended transaction > [$T(id_index):$T(id_label)]\n"); > xlog("L_INFO", "[R-SUSPEND]: fU:[$fU] rU:[$rU] tU:[$tU]\n"); > if (isbflagset(FLB_PSTN)) { > $sht(vtp=>join::$rU) = "" + $T(id_index) + ":" + > $T(id_label); > xlog("L_INFO", "[R-SUSPEND]: fU:[$fU] => rU:[$rU]\n"); > xlog("L_INFO", "[R-SUSPEND]: > vtp:[$sht(vtp=>join::$rU)]\n"); > } else { > $sht(vtp=>join::$tU) = "" + $T(id_index) + ":" + > $T(id_label); > xlog("L_INFO", "[R-SUSPEND]: fU:[$fU] => tU:[$tU]\n"); > xlog("L_INFO", "[R-SUSPEND]: > vtp:[$sht(vtp=>join::$tU)]\n"); > } > } > > route[REGISTER] { > if (!is_method("REGISTER")) { > return; > } > if (isflagset(FLT_NATS)) { > setbflag(FLB_NATB); > } > if (!save("location")) { > sl_reply_error(); > } > route(JOIN); > } > > # Append branches or resume the transaction > route[JOIN] { > xlog("L_INFO","[R-JOIN]: $tU\n"); > $var(hjoin) = 0; > lock("$tU"); > $var(hjoin) = $sht(vtp=>join::$tU); > $var(hstored) = $sht(vtp=>stored::$tU); > $sht(vtp=>join::$tU) = $null; > unlock("$tU"); > if ($var(hjoin)==0) { > if ($var(hstored)) { > xlog("L_INFO","[R-JOIN]: Appending transaction > ($tu)\n"); > ts_append("location", "$tu"); > exit; > } > xlog("L_INFO","[R-JOIN]: No INVITE to resume\n"); > exit; > } > $var(id_index) = $(var(hjoin){s.select,0,:}{s.int > <http://s.int>}); > $var(id_label) = $(var(hjoin){s.select,1,:}{s.int > <http://s.int>}); > xlog("L_INFO", "[R-JOIN]: Resuming trasaction > [$var(id_index):$var(id_label)] $tU ($var(hjoin))\n"); > t_continue("$var(id_index)", "$var(id_label)", "RESUME"); > exit; > } > > # Lookup and relay after resuming transaction > route[RESUME] { > xlog("L_INFO", "[R-RESUME]: ru: [$ru] tu: [$tu]\n"); > lookup("location"); > route(SETUP_ROUTES); > route(RELAY); > ts_store("$tu"); > $sht(vtp=>stored::$tU) = 1; > xlog("L_INFO", "[R-RESUME]: Stored transaction > [$T(id_index):$T(id_label)] $fU => $tU\n"); > exit; > } > > > What did I miss? > > > > > _______________________________________________ > Kamailio (SER) - Users Mailing List > sr-users@lists.kamailio.org <mailto:sr-users@lists.kamailio.org> > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users > <https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users> > > _______________________________________________ > Kamailio (SER) - Users Mailing List > sr-users@lists.kamailio.org <mailto:sr-users@lists.kamailio.org> > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users > <https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users> > > > _______________________________________________ > Kamailio (SER) - Users Mailing List > sr-users@lists.kamailio.org > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users -- Daniel-Constantin Mierla -- www.asipto.com www.twitter.com/miconda -- www.linkedin.com/in/miconda Funding: https://www.paypal.me/dcmierla
_______________________________________________ Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users