[jitsi-dev] Jitsi ends call when receiving 488 response on reinvite


#1

Devs,

  I think I may have found a bug. I apologize if this has already
been addressed but I have been unable to find anything on Jira or
Google.

  I've been successfully using Jitsi for months (voice, video, XMPP,
SIP, etc, etc). Everything has always worked well and I've found it
to be an excellent piece of software (thanks to everyone)!

  However, I recently came across this situation:

Place call Jitsi -> PSTN provider (call is established)
Attempt to start video chat (reinvite with H.264, etc is sent to far end)
Far end responds to reinvite with 488 Not Acceptable Here (expected
for this scenario)
Jitsi ACKs 488 and the UI "ends" the call showing "Call failed" with
"Not Acceptable Here" (screenshot available)

  At this point the Jitsi UI closes the call dialog box and the call
is considered over. However, no BYE or any other signaling is
provided to the remote end and it is left in a lurch (call timer
continues to increment). One must wait for session timers or RTP
inactivity timers to eventually clear the call.

  It seems to me that Jitsi should:

1) ACK the 488, give up on the reinvite and keep the call active.

or at least

2) Send a BYE to clear the call before the UI clears the call.

  I am using Jitsi build 3560 on Mac OS X. I have screenshots and SIP
traces available if anyone needs them.

Thanks!

···

--
Kristian Kielhofner


#2

Hey Kristian,

На 24.06.11 15:32, Kristian Kielhofner написа:

Devs,

  I think I may have found a bug. I apologize if this has already
been addressed but I have been unable to find anything on Jira or
Google.

Right, this hasn't been discussed so far. Thanks for bringing it up!

  I've been successfully using Jitsi for months (voice, video, XMPP,
SIP, etc, etc). Everything has always worked well and I've found it
to be an excellent piece of software (thanks to everyone)!

Thank you for your kind words!

  However, I recently came across this situation:

Place call Jitsi -> PSTN provider (call is established)
Attempt to start video chat (reinvite with H.264, etc is sent to far end)
Far end responds to reinvite with 488 Not Acceptable Here (expected
for this scenario)
Jitsi ACKs 488 and the UI "ends" the call showing "Call failed" with
"Not Acceptable Here" (screenshot available)

  At this point the Jitsi UI closes the call dialog box and the call
is considered over. However, no BYE or any other signaling is
provided to the remote end and it is left in a lurch (call timer
continues to increment). One must wait for session timers or RTP
inactivity timers to eventually clear the call.

  It seems to me that Jitsi should:

1) ACK the 488, give up on the reinvite and keep the call active.

It should indeed. This would probably be tricky though (i.e. not just a
30 minute fix), so could you please open an issue?

or at least

2) Send a BYE to clear the call before the UI clears the call.

Right (and we should still ack the invite). This would probably be
easier to implement as a short term fix.

Thanks again,
Emil


#3

Done:

http://java.net/jira/browse/JITSI-966

···

On Mon, Jul 4, 2011 at 8:16 AM, Emil Ivov <emcho@jitsi.org> wrote:

Hey Kristian,

На 24.06.11 15:32, Kristian Kielhofner написа:

Devs,

I think I may have found a bug. I apologize if this has already
been addressed but I have been unable to find anything on Jira or
Google.

Right, this hasn't been discussed so far. Thanks for bringing it up!

I've been successfully using Jitsi for months (voice, video, XMPP,
SIP, etc, etc). Everything has always worked well and I've found it
to be an excellent piece of software (thanks to everyone)!

Thank you for your kind words!

However, I recently came across this situation:

Place call Jitsi -> PSTN provider (call is established)
Attempt to start video chat (reinvite with H.264, etc is sent to far end)
Far end responds to reinvite with 488 Not Acceptable Here (expected
for this scenario)
Jitsi ACKs 488 and the UI "ends" the call showing "Call failed" with
"Not Acceptable Here" (screenshot available)

At this point the Jitsi UI closes the call dialog box and the call
is considered over. However, no BYE or any other signaling is
provided to the remote end and it is left in a lurch (call timer
continues to increment). One must wait for session timers or RTP
inactivity timers to eventually clear the call.

It seems to me that Jitsi should:

1) ACK the 488, give up on the reinvite and keep the call active.

It should indeed. This would probably be tricky though (i.e. not just a
30 minute fix), so could you please open an issue?

or at least

2) Send a BYE to clear the call before the UI clears the call.

Right (and we should still ack the invite). This would probably be
easier to implement as a short term fix.

Thanks again,
Emil

--
Kristian Kielhofner