I tried using s.replace to replace the control characters, but I don't think it
recognises them:
$avp(sdp) = $(avp(sdp){s.replace,#015#012,\r\n});
It's the "#015#012" which is coming from sdp_get("$avp(sdp)");
that is the problem.
On Sunday, 21 April 2019, 20:40:34 BST, David Dean <just_bytesize(a)yahoo.co.uk>
wrote:
Agreed. Unfortunately Janus doesn't accept base64 at this time.
I'll ask Lorenzo whether he can add base64 support, but in the interim I need to find
a way in Kamailio of parsing $avp(sdp) as shell escaped plain text with the control
characters replaced.
Thanks.
On Sunday, 21 April 2019, 19:21:13 BST, Alex Balashov
<abalashov(a)evaristesys.com> wrote:
A common solution to these problems is to base64-encode SIP data, so as
to avoid any part of SIP grammar violating JSON encoding specs or
conflicting with a JSON delimiter.
However, I'm not sure if whatever Janus is will accept that.
On Sun, Apr 21, 2019 at 06:15:22PM +0000, David Dean wrote:
I'm trying to send an SDP from a SIP client to
Janus using JSON over HTTP.
The problem is that Janus is erroring on the SDP content with the following error:
JANUS HTTP: Get SDP for echo plugin: {#012 "janus": "error",#012
"error": {#012 "code": 454,#012 "reason":
"JSON error: on line 9: control character 0xd near '\"v=0'"#012
}#012} Result code 200
I tried using {s.escape.common} to escape any quotations, commas etc but it doesn't
appear to replace the control characters with newlines.
Any suggestions on how best to remove these control characters so that Janus will accept
the SDP over JSON?
Here is the relevant section of kamailio.cfg:
# HTTP: Request SDP for echo test plugin sdp_get("$avp(sdp)");
$var(res) = http_connect("janus",
"/janus/$var(JANUS-ID)/$var(ECHO-ID)", "application/json", "{
\"janus\" : \"message\", \"transaction\" :
\"testtesttest99\", \"body\" : {
\"audio\" : true }, \"jsep\" : {
\"type\" : \"offer\", \"sdp\" :
\"$(avp(sdp){s.escape.common})\" }}",
"$avp(janus-pluginsession)"); xlog("L_INFO",
"JANUS HTTP: Get SDP for echo plugin: $avp(janus-pluginsession) Result code
$var(res)\n");
_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users(a)lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
--
Alex Balashov | Principal | Evariste Systems LLC
Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free)
Web:
http://www.evaristesys.com/,
http://www.csrpswitch.com/
_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users(a)lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users