Hi,

Thank you for your quick response. I had to upgrade to release 1.1.0,
instead of the rc1 to make it work. Otherwise I would've probably found
the option myself.

Nevertheless, making the internal logic wait for the 200 OK or timeout
would make the most sense and is by far the nicest solution.

Thanks!
Bert

-----Original Message-----
From: Stefan Sayer [mailto:[email protected]] 
Sent: woensdag 4 februari 2009 21:31
To: Bert Fraterman
Cc: [email protected]
Subject: Re: [Sems] AmSipDispatcher 'could not dispatch reply' error

Hello,

o Bert Fraterman [02/04/09 17:55]:
> I'm making a SEMS module in C++, and when I sent my bye, I also
> immediately stop the session:
> 
>       this->dlg.bye();
>       this->setStopped();
> 
> This pattern is also used in other modules, like the voicemail.
> 
> Unfortunately, when the SIP message 200 OK is received from the
client,
> the AmSipDispatcher gives an error:
>       ERROR: [42074940] handleSipMsg (AmSipDispatcher.cpp:48): could
> not dispatch reply: (Incoming 200 OK reply)
> 
> I suspect the AmSipDispatcher is trying to post an event to the
already
> stopped session. Clearly, I'm not
> interested in this event, otherwise I would've waited for it.
> Also, this is not a critical error (I believe the internal state
machine
> closes down the call properly), so I
> would suggest to demote the error to a warning, or even to a debug
> message (since it could be a very deliberate
> choice not to wait for the event).
set unhandled_reply_loglevel in sems.conf (see sems.conf.sample):

# optional parameter:
unhandled_reply_loglevel={error|warn|info|debug|no}
#
# the default application logic implemented in the applications is to
stop
# the session right after sending BYE, without waiting for a reply. this
# leads to many log entries of the form
# ERROR: [b6fa6bb0] handleSipMsg (AmSipDispatcher.cpp:48): unhandled
#    reply:  [code:200;phrase:[OK];... ]
#
# This parameter sets the log lovel of unhandled positive (200 class) 
replies.
#
# default: error
#
# unhandled_reply_loglevel=info

> 
> Is my statement correct, or am I closing down my session in the wrong
> way?
Well, I do it the same way, and have not run into problems, even though 
there is at least one case when it this is not correct: If BYE needs to 
be authenticated. but it would be nice to modify the default processing 
to wait until BYE is replied with FR or times out (is it on the tracker 
already?).

Regards
Stefan

> 
> Thanks,
> Bert
> _______________________________________________
> Sems mailing list
> [email protected]
> http://lists.iptel.org/mailman/listinfo/sems

-- 
Stefan Sayer
VoIP Services

[email protected]
www.iptego.com

IPTEGO GmbH
Am Borsigturm 40
13507 Berlin
Germany

Amtsgericht Charlottenburg, HRB 101010
Geschaeftsfuehrer: Alexander Hoffmann
_______________________________________________
Sems mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/sems

Reply via email to