Hi,
did you create the transaction before calling http_async_query?
If not, the function switch to non-transactional context, the script execution is not stopped (you should notice it in your logs if the log line after the function call is printed) and the callback function creates a fake message to be processed in the callback route. 
You should call t_newtran() before calling http_async_query.

Cheers,

Federico

On Thu, Sep 15, 2016 at 5:44 PM, Jonathan Hunter <hunterj91@hotmail.com> wrote:
Hi Guys,

I am just testing with jansson and http_async_query.

Essentially I sent an INVITE into kamailio ,it hits CALL_START_REQUEST (see below) and the query allows the http site I send to, to provide routing details for kamailio.

Logging the $rm that hits CALL_START_ REQUEST, it shows as INVITE, however when CALL_START_REQUEST_REPLY is hit, the message type is OPTIONS, is this expected behaviour?

Essentially I want it to continue in the script with the same $ci,$rm so I can onwards route it for termination, but all I get are options messages being sent, any hints please?

As Ideally I want the transaction to continue to a route where I can forward on modified request for termination.

Thanks

Jon



Routes;


# Send to FreeSWITCH
route[CALL_START_REQUEST]{
xlog("L_INFO","route[CALL_START_REQUEST] Call received $ci,$rm,$ru,$du\n");

###Build JSON request to send to MAP
$var(params) = $null;
jansson_set("string", "username", "xxx", "$var(params)");
jansson_set("string", "password", "xxx", "$var(params)");
jansson_set("string", "source", "$fU", "$var(params)");
jansson_set("string", "route", "$var(carriername)", "$var(params)");
jansson_set("string", "destination", "$rU", "$var(params)");
/// other fields set here
http_set_timeout(5000);
http_set_method("POST");
http_append_header("Content-Type: application/json");
http_async_query("http://test.com", "$var(params)", "CALL_START_REQUEST_REPLY");
xlog("L_INFO", "Checking here we have status=$var(status)\n");
xlog("L_INFO", "Current Destination is $du\n");
#return;
#exit;
}
#########################
route[CALL_START_REQUEST_REPLY]{
xlog("L_INFO", "route[CALL_START_REQUEST_REPLY]: $ci,$rm,$ru,$du\n");


Logs show;

 route[CALL_START_REQUEST] Call received b087fa53-f5fc-1234-94ac-f68eb8da94f7,INVITE,sip:441624891676@8.8.8.8:5060;user=phone,<null>

 route[CALL_START_REQUEST_REPLY]: 123,OPTIONS,sip:G711A-282951200@kamailio.org,sip:G711A-282951200@8.8.8.8:5080


_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users