Hi Tito,

Make sure to read all "rest_client" module parameters. In your case, the async() timeout would be accomplished with the "curl_timeout" parameter [1] If that were to happen, "rest_get()" would return a negative value, and you could catch it just like in the examples. [2]

[1]: http://www.opensips.org/html/docs/modules/2.2.x/rest_client.html#id249608 [2]: http://www.opensips.org/html/docs/modules/2.2.x/rest_client.html#id293823

Best regards,

Liviu Chircu
OpenSIPS Developer
http://www.opensips-solutions.com

On 18.06.2015 00:47, Tito Cumpen wrote:
Liviu,


Thanks for your reply. To preface my forthcoming I'd like to state at the current moment the reply to this query is pretty quick. If the request was to take X amount time the script would continue even though a condition is based on it advancing? The reason I ask is because I notice the async method was added with the intention of pausing the script until the reply is received. What is the timeout that would make opensips continue on with the script?


Thanks,
Tito

On Wed, Jun 17, 2015 at 3:36 AM, Liviu Chircu <[email protected] <mailto:[email protected]>> wrote:

    Hi Tito,

    A very interesting question. After a bit of research, I can tell
    you that $json and $var will behave quite similarly in terms of
    performance when using the simple "=" (assign) operator. A
    difference between them worth pointing out is that $var uses
    only-pkg memory, while $json uses both pkg and system memory
    (since it is based on the "json-c" library) - so the more $json's
    you fill up, the more "opensipsctl fifo get_statistics pkmem:"
    will be incorrect.

    If you really want to optimize something about that _specific_ code:

    $json(authbody) :=$json(authresponse);
    if ($json(authbody/message/AcceptCall) == "false") {
        ...
    }

    Best regards,

    Liviu Chircu
    OpenSIPS Developer
    http://www.opensips-solutions.com

    On 17.06.2015 02:18, Tito Cumpen wrote:
    Group,


    Is there a downside to casting responses from a rest response
    into a json object rather than a generic $var? Here is my
    function it works but I want to be aware if this will cost a
    considerable amount of resources.

                          if
    (!rest_get("http://myauthurl.com/authme/$fU/$rU
    <http://myauthurl.com/authme/$fU/$rU>", "$json(authresponse)",
    "$var(ct)", "$var(rcode)")) {


            xlog("Error code $var(rcode) in HTTP GET!\n");

    xlog("on account of admittance error we are sending the call to
    the AS server for processing");

            route(4);

    }


                    xlog("got this body response from authority on
    invite $json(authresponse) with response code $var(rcode)");

            xlog("response now casting to json  $json(authresponse) ");

            $json(authbody) :="{}";


            $json(authbody) :=$json(authresponse);

            xlog(" accessing the message $json(authbody/message)");


            $json(accept) :=$json(authbody/message);

            xlog(" casted message $json(accept)");

            if($json(accept/AcceptCall) == "false"){

            xlog("response equal false");

                            route(3);



            }else{



    Notice how the response is casted from $json(authresponse) to
     $json(authbody)  after it is initialized. I came to realize that
    I had to initialize a variable because I couldn't access keys in
    $json(authresponse).



    Thanks,

    Tito



    _______________________________________________
    Users mailing list
    [email protected]  <mailto:[email protected]>
    http://lists.opensips.org/cgi-bin/mailman/listinfo/users


    _______________________________________________
    Users mailing list
    [email protected] <mailto:[email protected]>
    http://lists.opensips.org/cgi-bin/mailman/listinfo/users




_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

Reply via email to