Are you sure t_relay() is not returning an error? Can you post somewhere the entire log for this scenario?

Best regards,

Răzvan Crainea
OpenSIPS Solutions
www.opensips-solutions.com

On 04/26/2017 12:00 PM, Mikhail Sidorov wrote:
I am sorry for spamming you, I missed subscription verification email.

Regarding my question, I understand that opensips could not recover connection and my client already reconnect. All I need is ability to catch this error to execute lookup and find reconnected client. And I could not find how to detect this kind of failure, because t_relay does not return error.
Do you have any suggestions?

ср, 26 апр. 2017 г. в 15:49, Răzvan Crainea <[email protected] <mailto:[email protected]>>:

    Hi, Mikhail!

    I've already replied to your question[1]. Please register to the
    opensips list if you want to get further emails.

    [1] http://lists.opensips.org/pipermail/users/2017-April/037179.html

    Best regards,

    Răzvan Crainea
    OpenSIPS Solutions
    www.opensips-solutions.com <http://www.opensips-solutions.com>

    On 04/26/2017 11:05 AM, Mikhail Sidorov wrote:
    Hi

    I am using opensips 2.2.3 to handle websocket connections from
    web client (sip.js).
    I just started testing recover after opensips restart and find
    that I could not handle t_relay() failure.

    Assume I have a call between 2 webrtc clients and I restart
    opensips during this call. Media handled by freeswitch, so call
    continue without problem.

    Then, one client send BYE. I use loose_route to find another
    party and send him message.
    But here I got error that I could not handle.
    t_on_failure trigger does not fire
    t_relay return success.

    Are there any special flags or triggers to handle this case?

    Opensips log:

    loose_route success
    INFO:core:probe_max_sock_buff: using snd buffer of 416 kb
    INFO:core:init_sock_keepalive: TCP keepalive enabled on socket 16
    ERROR:core:tcp_connect_blocking: poll error: flags 28 - 4 8 16 32
    ERROR:core:tcp_connect_blocking: failed to retrieve SO_ERROR
    [server=172.19.235.225:62594 <http://172.19.235.225:62594>] (111)
    Connection refused
    ERROR:proto_wss:ws_sync_connect: tcp_blocking_connect failed
    ERROR:proto_wss:ws_connect: connect failed
    ERROR:proto_wss:proto_wss_send: connect failed
    ERROR:tm:msg_send: send() for proto 6 failed
    ERROR:tm:t_forward_nonack: sending request failed

    My configuration:

    if (has_totag())
    {
    xlog("L_ERR", "Following ToTag: $tt $proto");
    # sequential requests within a dialog should
    # take the path determined by record-routing
    if (loose_route())
    {
    #if (is_method("INVITE"))
    #{
    #record_route();
    #}
    xlog("L_ERR", "loose_route success\n");
    route(relay);
    }
    --------------------------------
    route[relay]
    {
    t_on_failure("loose_route");
    if (!t_relay())
    {
    xlog("L_ERR", "t_relay error]");
    send_reply("500","Internal Error");
    }
    exit;
    }

    failure_route[loose_route]
    {
    xlog( "L_ERR", "loose_route failed" );
    ...
    }




    _______________________________________________
    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