Hello,
I am using KSR.sdpops.keep_codecs_by_name to remove some codecs. When I make a call between two webrtc clients and I keep only VP8 video codec, the browser rejects the call with 488 Not Acceptable Here.
I notice the attributes a=rtcp-fb: of codecs removed are kept. I removed that attributes with: KSR.textops.replace_body_atonce("a=rtcp-fb:1.*\n", ""); KSR.textops.replace_body_atonce("a=rtcp-fb:98.*\n", ""); And the call worked.
There is another way to remove these attributes related to codec name? Or is it possible to get the ids of the codecs with dynamic payload type numbers from SDP?
Thanks for your attention.
Best regards, Jose Lopes
Hello,
can you give a sample SDP that exposes the issue so we can analyze with the code and be able to test?
Cheers, Daniel
On 05.05.20 15:55, José Lopes wrote:
Hello,
I am using KSR.sdpops.keep_codecs_by_name to remove some codecs. When I make a call between two webrtc clients and I keep only VP8 video codec, the browser rejects the call with 488 Not Acceptable Here.
I notice the attributes a=rtcp-fb: of codecs removed are kept. I removed that attributes with: KSR.textops.replace_body_atonce("a=rtcp-fb:1.*\n", ""); KSR.textops.replace_body_atonce("a=rtcp-fb:98.*\n", ""); And the call worked.
There is another way to remove these attributes related to codec name? Or is it possible to get the ids of the codecs with dynamic payload type numbers from SDP?
Thanks for your attention.
Best regards, Jose Lopes
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Hello Daniel,
Thanks for your reply.
On the next link, I put the original SDP from webrtc client and the SDP after kamailio that exposes the issue. I am using Kamailio version 5.3.3 with sdpops and rtpengine module.
Best Regards, Jose Lopes
On Tue, May 5, 2020 at 3:52 PM Daniel-Constantin Mierla miconda@gmail.com wrote:
Hello,
can you give a sample SDP that exposes the issue so we can analyze with the code and be able to test?
Cheers, Daniel On 05.05.20 15:55, José Lopes wrote:
Hello,
I am using KSR.sdpops.keep_codecs_by_name to remove some codecs. When I make a call between two webrtc clients and I keep only VP8 video codec, the browser rejects the call with 488 Not Acceptable Here.
I notice the attributes a=rtcp-fb: of codecs removed are kept. I removed that attributes with: KSR.textops.replace_body_atonce("a=rtcp-fb:1.*\n", ""); KSR.textops.replace_body_atonce("a=rtcp-fb:98.*\n", ""); And the call worked.
There is another way to remove these attributes related to codec name? Or is it possible to get the ids of the codecs with dynamic payload type numbers from SDP?
Thanks for your attention.
Best regards, Jose Lopes
Kamailio (SER) - Users Mailing Listsr-users@lists.kamailio.orghttps://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
-- Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
José Lopes writes:
Hello Daniel,
Thanks for your reply.
On the next link, I put the original SDP from webrtc client and the SDP after kamailio that exposes the issue. I am using Kamailio version 5.3.3 with sdpops and rtpengine module.
Perhaps it is this line that the webrtc UAS doesn't like:
m=audio 18184 RTP/AVP 111 103 104 9 0 8 106 105 13 110 112 113 126
If I remember correctly, webrtc mandates UDP/TLS/RTP/SAVPF media transport.
-- Juha
This 488 think reminds me that SIP over webrtc is broken.
Webrtc UAS (at least JsSIP) cannot issue 488 before the UAS has started to ring. It is very frustrating for the callee to get such a spam ring.
RFC3261 section "8.2 UAS Behavior" tells:
Note that request processing is atomic. If a request is accepted, all state changes associated with it MUST be performed. If it is rejected, all state changes MUST NOT be performed.
So it is against the standard to issue 180 and after that reject the request with 488.
-- Juha
Hello,
Sorry, I forgot to mention that, between the call of the two webrtc clients, there is a B2BUA that only supports SIP UDP and RTP, so I need to use rtpengine to translate from DTLS/SRTP to RTP. I will try to make a call between the two webrtc clients and only use kamailio without rtpengine to limit the issue.
Os melhores cumprimentos / Best regards,
*José Lopes* Research and Development Technician
Phone: +351 256 370 980 Email: jose.lopes@itcenter.com.pt
On Tue, May 5, 2020 at 5:15 PM Juha Heinanen jh@tutpro.com wrote:
This 488 think reminds me that SIP over webrtc is broken.
Webrtc UAS (at least JsSIP) cannot issue 488 before the UAS has started to ring. It is very frustrating for the callee to get such a spam ring.
RFC3261 section "8.2 UAS Behavior" tells:
Note that request processing is atomic. If a request is accepted, all state changes associated with it MUST be performed. If it is rejected, all state changes MUST NOT be performed.
So it is against the standard to issue 180 and after that reject the request with 488.
-- Juha
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Hello,
I am sending in attach a pcap with a call between two webrtc clients, that reproduces this scenario. I am using as example the configuration at https://github.com/havfo/WEBRTC-to-SIP . I apply this change on the kamailio configuration to reproduce this scenario:
@@ -350,6 +350,8 @@ request_route { # authentication route(AUTH);
+ sdp_keep_codecs_by_name("VP8","video"); + msg_apply_changes(); # record routing for dialog forming requests (in case they are routed) # - remove preloaded route headers remove_hf("Route");
Without this change, I can make calls between two webrtc clients.
Thanks for your help, so far.
Best regards, Jose Lopes
On Mon, May 11, 2020 at 10:21 AM José Lopes jose.lopes@itcenter.com.pt wrote:
Hello,
Sorry, I forgot to mention that, between the call of the two webrtc clients, there is a B2BUA that only supports SIP UDP and RTP, so I need to use rtpengine to translate from DTLS/SRTP to RTP. I will try to make a call between the two webrtc clients and only use kamailio without rtpengine to limit the issue.
Os melhores cumprimentos / Best regards,
*José Lopes* Research and Development Technician
Phone: +351 256 370 980 Email: jose.lopes@itcenter.com.pt
On Tue, May 5, 2020 at 5:15 PM Juha Heinanen jh@tutpro.com wrote:
This 488 think reminds me that SIP over webrtc is broken.
Webrtc UAS (at least JsSIP) cannot issue 488 before the UAS has started to ring. It is very frustrating for the callee to get such a spam ring.
RFC3261 section "8.2 UAS Behavior" tells:
Note that request processing is atomic. If a request is accepted, all state changes associated with it MUST be performed. If it is rejected, all state changes MUST NOT be performed.
So it is against the standard to issue 180 and after that reject the request with 488.
-- Juha
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
I did a patch over the SDPOPS module to do this.
If needed I can push it over git.
Kind regards.
Federico Santulli
NHM - S.R.L. Via Raffaello Sanzio, 88 81031 Aversa (CE) Italy
Il giorno 5 mag 2020, alle ore 15:55, José Lopes jose.lopes@itcenter.com.pt ha scritto:
Hello,
I am using KSR.sdpops.keep_codecs_by_name to remove some codecs. When I make a call between two webrtc clients and I keep only VP8 video codec, the browser rejects the call with 488 Not Acceptable Here.
I notice the attributes a=rtcp-fb: of codecs removed are kept. I removed that attributes with: KSR.textops.replace_body_atonce("a=rtcp-fb:1.*\n", ""); KSR.textops.replace_body_atonce("a=rtcp-fb:98.*\n", ""); And the call worked.
There is another way to remove these attributes related to codec name? Or is it possible to get the ids of the codecs with dynamic payload type numbers from SDP?
Thanks for your attention.
Best regards, Jose Lopes
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Hello,
sure, make a pull request for it.
To be easy to merge, here are some guidelines for contributions
* https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md#con...
Cheers, Daniel
On 11.05.20 12:48, Federico Santulli wrote:
I did a patch over the SDPOPS module to do this.
If needed I can push it over git.
Kind regards.
Federico Santulli
NHM - S.R.L. Via Raffaello Sanzio, 88 81031 Aversa (CE) Italy
Il giorno 5 mag 2020, alle ore 15:55, José Lopes jose.lopes@itcenter.com.pt ha scritto:
Hello,
I am using KSR.sdpops.keep_codecs_by_name to remove some codecs. When I make a call between two webrtc clients and I keep only VP8 video codec, the browser rejects the call with 488 Not Acceptable Here.
I notice the attributes a=rtcp-fb: of codecs removed are kept. I removed that attributes with: KSR.textops.replace_body_atonce("a=rtcp-fb:1.*\n", ""); KSR.textops.replace_body_atonce("a=rtcp-fb:98.*\n", ""); And the call worked.
There is another way to remove these attributes related to codec name? Or is it possible to get the ids of the codecs with dynamic payload type numbers from SDP?
Thanks for your attention.
Best regards, Jose Lopes
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Hello,
I can test the patch and give you feedback.
Best Regards, Jose
On Mon, May 11, 2020 at 12:18 PM Daniel-Constantin Mierla miconda@gmail.com wrote:
Hello,
sure, make a pull request for it.
To be easy to merge, here are some guidelines for contributions
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md#con...
Cheers, Daniel
On 11.05.20 12:48, Federico Santulli wrote:
I did a patch over the SDPOPS module to do this.
If needed I can push it over git.
Kind regards.
Federico Santulli
NHM - S.R.L. Via Raffaello Sanzio, 88 81031 Aversa (CE) Italy
Il giorno 5 mag 2020, alle ore 15:55, José Lopes <
jose.lopes@itcenter.com.pt> ha scritto:
Hello,
I am using KSR.sdpops.keep_codecs_by_name to remove some codecs. When I make a call between two webrtc clients and I keep only VP8 video
codec, the browser rejects the call with 488 Not Acceptable Here.
I notice the attributes a=rtcp-fb: of codecs removed are kept. I removed that attributes with: KSR.textops.replace_body_atonce("a=rtcp-fb:1.*\n", ""); KSR.textops.replace_body_atonce("a=rtcp-fb:98.*\n", ""); And the call worked.
There is another way to remove these attributes related to codec name? Or is it possible to get the ids of the codecs with dynamic payload
type numbers from SDP?
Thanks for your attention.
Best regards, Jose Lopes
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
-- Daniel-Constantin Mierla -- www.asipto.com www.twitter.com/miconda -- www.linkedin.com/in/miconda Funding: https://www.paypal.me/dcmierla
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Hello Federico,
did you managed to create a pull request for the this extension?
Thanks and regards,
Henning
-- Henning Westerholt – https://skalatan.de/blog/ Kamailio services – https://gilawa.comhttps://gilawa.com/
From: sr-users sr-users-bounces@lists.kamailio.org On Behalf Of José Lopes Sent: Friday, May 15, 2020 8:12 PM To: Daniel-Constantin Mierla miconda@gmail.com; Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org Subject: Re: [SR-Users] 488 Not Acceptable Here when remove codecs with rtcp-fb
Hello,
I can test the patch and give you feedback.
Best Regards, Jose
On Mon, May 11, 2020 at 12:18 PM Daniel-Constantin Mierla <miconda@gmail.commailto:miconda@gmail.com> wrote: Hello,
sure, make a pull request for it.
To be easy to merge, here are some guidelines for contributions
* https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md#con...
Cheers, Daniel
On 11.05.20 12:48, Federico Santulli wrote:
I did a patch over the SDPOPS module to do this.
If needed I can push it over git.
Kind regards.
Federico Santulli
NHM - S.R.L. Via Raffaello Sanzio, 88 81031 Aversa (CE) Italy
Il giorno 5 mag 2020, alle ore 15:55, José Lopes <jose.lopes@itcenter.com.ptmailto:jose.lopes@itcenter.com.pt> ha scritto:
Hello,
I am using KSR.sdpops.keep_codecs_by_name to remove some codecs. When I make a call between two webrtc clients and I keep only VP8 video codec, the browser rejects the call with 488 Not Acceptable Here.
I notice the attributes a=rtcp-fb: of codecs removed are kept. I removed that attributes with: KSR.textops.replace_body_atonce("a=rtcp-fb:1.*\n", ""); KSR.textops.replace_body_atonce("a=rtcp-fb:98.*\n", ""); And the call worked.
There is another way to remove these attributes related to codec name? Or is it possible to get the ids of the codecs with dynamic payload type numbers from SDP?
Thanks for your attention.
Best regards, Jose Lopes
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.orgmailto:sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.orgmailto:sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
-- Daniel-Constantin Mierla -- www.asipto.comhttp://www.asipto.com www.twitter.com/micondahttp://www.twitter.com/miconda -- www.linkedin.com/in/micondahttp://www.linkedin.com/in/miconda Funding: https://www.paypal.me/dcmierla
_______________________________________________ Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.orgmailto:sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users