From the official kamailio documentation of the function http_async_query(url, route_name)

Sends HTTP(S) request asynchronously to the URL given in “url” parameter, which is a string that may contain pseudo variables.

Parameter “route_name” defines the route to be executed upon reception of HTTP reply, on error or on timeout. If a transaction exists before calling http_async_query(), it will be paused and resumed in this route, while the routing script execution will be stopped. If executed in a transactionless context, or if $http_req(suspend) is used not to suspend the transaction, the routing script execution will continue and the query result will be available in “route_name”.

Because the routing script execution will be stopped it's quite difficult for some advanced usages to restore the previous variables and logic and to continue with the execution.

The problem of resuming the work is delegated to the user and not Kamailio itself. I think Kamailio should freeze the execution and store all needed data in memory to resume execution after the http response like for a normal http sync query.

So the stopping will become pausing/resuming.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.