[SR-Users] Peculiar Kamailio Asterisk behavior on outbound calls

Pan Christensen pan.christensen at phonect.no
Fri Jun 8 23:12:07 CEST 2018


Dear Steve.

Asterisk is a B2BUA. It doesn't just route SIP messages like Kamailio does. Most of the time, it answers the call, sets up a new call to the other party and then bridges the two calls, making two separate call IDs (depending on your configuration).

Additional comments in blue inline below:


  *   INVITE from Caller to Kamailio (this is where the Caller is Registered) offering VP8
  *   Kamailio will relay the INVITE to Asterisk
  *     Asterisk probably sends 183/200 back to callee, finalizing this codec negotiation. VP8 is chosen for this call leg.
  *   Asterisk will INVITE Called
  *   Called sends '200 OK' to Asterisk requesting H264
  *     yes
  *   Asterisk Sends '200 OK' back to Kamailio to be relayed to Caller accepting VP8
  *     No. I assume that the callee didn't accept VP8 because it doesn't support it. It instead chose the highest priority codec it supported among the codecs that Asterisk advertised.
  *     Asterisk accepts this codec because it supports it. There is no test checking which codec was chosen on the caller side and there is no renegotiation. Hence, video is broken forever.

Again, if you could show us the details (like attaching the SDPs that I asked for previously), then we wouldn't have to guess what's happening. We could tell you for sure.


Med vennlig hilsen
Pan B. Christensen

From: sr-users <sr-users-bounces at lists.kamailio.org> On Behalf Of Wilkins, Steve
Sent: fredag 8. juni 2018 22:27
To: Kamailio (SER) - Users Mailing List <sr-users at lists.kamailio.org>
Subject: Re: [SR-Users] Peculiar Kamailio Asterisk behavior on outbound calls

Hi Pan,

If the Registered caller is a WebRTC client (Caller) whose preferred coded is VP8, calls a Phone (Called) whose preferred Video is H264, I should see


  *   INVITE from Caller to Kamailio (this is where the Caller is Registered) offering VP8
  *   Kamailio will relay the INVITE to Asterisk
  *   Asterisk will INVITE Called
  *   Called sends '200 OK' to Asterisk requesting H264
  *   Asterisk Sends '200 OK' back to Kamailio to be relayed to Caller accepting VP8

Is this correct?  Then I think one of the issues is that there is no fmtp line in the VP8.  The only codecs that have fmtp lines is for the H264 codecs.

Thank you,
-Steve

From: sr-users [mailto:sr-users-bounces at lists.kamailio.org] On Behalf Of Pan Christensen
Sent: Friday, June 8, 2018 11:06 AM
To: Kamailio (SER) - Users Mailing List <sr-users at lists.kamailio.org<mailto:sr-users at lists.kamailio.org>>
Subject: Re: [SR-Users] Peculiar Kamailio Asterisk behavior on outbound calls

That's not strange. The soft phone probably doesn't advertise support for VP8, so it's not chosen.
Calling from WebRTC, I assume that VP8 is the preferred codec and Asterisk accepts it. Asterisk then finds out that the soft phone doesn't support VP8 and negotiates a different codec with that client.

If you show us the SDPs of INVITE and 183/200 on both sides of Asterisk (in the order they are sent), we can tell you exactly what happens. Failing that, I'd say that the culprit is Asterisk, which probably negotiates two different codecs without the ability to transcode.

With kind regards
Pan B. Christensen
Developer
Phonect AS
From: sr-users <sr-users-bounces at lists.kamailio.org<mailto:sr-users-bounces at lists.kamailio.org>> On Behalf Of Wilkins, Steve
Sent: fredag 8. juni 2018 15:09
To: Kamailio (SER) - Users Mailing List <sr-users at lists.kamailio.org<mailto:sr-users at lists.kamailio.org>>
Subject: Re: [SR-Users] Peculiar Kamailio Asterisk behavior on outbound calls

Yes, for example a WebRTC Client (VP8) calls a Soft-Phone (H264).  What is strange is that if it is the other way around and the Soft-Phone calls the WebRTC client, it works.

Thank you

From: sr-users [mailto:sr-users-bounces at lists.kamailio.org] On Behalf Of Pan Christensen
Sent: Friday, June 8, 2018 9:00 AM
To: Kamailio (SER) - Users Mailing List <sr-users at lists.kamailio.org<mailto:sr-users at lists.kamailio.org>>
Subject: Re: [SR-Users] Peculiar Kamailio Asterisk behavior on outbound calls

Hello Steve.

Does Asterisk negotiate different codecs with each client? If so, it needs to transcode, which I believe is currently not supported for video. What does Asterisk send back to device A?

With kind regards
Pan B. Christensen
Developer
Phonect AS

From: sr-users <sr-users-bounces at lists.kamailio.org<mailto:sr-users-bounces at lists.kamailio.org>> On Behalf Of Wilkins, Steve
Sent: fredag 8. juni 2018 14:03
To: Kamailio (SER) - Users Mailing List <sr-users at lists.kamailio.org<mailto:sr-users at lists.kamailio.org>>
Subject: [SR-Users] Peculiar Kamailio Asterisk behavior on outbound calls

Hi All,

Issue: when a Call is made through Kamailio and Asterisk.  Asterisk uses incorrect Video RTP Payload Type when sending Video packets.

I have a situation where I make a call from Device A to Device B and Device A is Registered in Kamailio.  When Device A Calls Device B, Kamailio sends an 'INVITE' to Asterisk, Asterisk then  'INVITES' Device B.  I get two-way Audio, the call stays connected, however, when Video packets are sent to Device B, the RTP Payload Type is incorrect.  The port is correct, but just not the Payload Type.

Here is where I think Kamailio is involved. In the first Invite from Kamailio to Asterisk, one of the offered Video codecs is '100 H264'; interesting enough, Device B wants to use '115 H264' and when Asterisk sends out Video packets, it is using '100' instead of '115', and of course I have no Video.  I don't know if this is just a coincidence but it sure seems like that is where the issue may lie.

Has anyone ever seen this behavior?  The Asterisk teams does not think it's an Asterisk issue.

Thank you,
-Steve
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20180608/fc9d3638/attachment.html>


More information about the sr-users mailing list