[SR-Users] MWI notification through pua.publish
Володимир Іванець
volodyaivanets at gmail.com
Tue Jan 22 17:58:00 CET 2019
Hello Serge,
Thank you for clarifying this for me. But there is different issue when I
change format. It appears that Kamailio indeed expects *body* under
parameters
https://www.kamailio.org/docs/modules/5.2.x/modules/pua_rpc.html#pua_rpc.r.pua.publish
.
I run:
*# curl -H "Content-Type: application/json" -X POST -d '{"jsonrpc": "2.0",
"method": "pua.publish", "params": {"presentity_uri":
"sip:jh at test.tutpro.com <sip%3Ajh at test.tutpro.com>", "expires": "600",
"event package": "message-summary", "content type":
"application/simple-message-summary", "id": "4ce8c647a7b947c at 172.16.30.151
<4ce8c647a7b947c at 172.16.30.151>", "ETag": ".", "outbound proxy":
"sip:127.0.0.1:5060;transport=udp", "extra_headers": "P-Flags: 0"}, "body":
1}' http://172.16.30.151:5060/JSON_RPC <http://172.16.30.151:5060/JSON_RPC>*
Result:
*{*
* "jsonrpc": "2.0",*
* "error": {*
* "code": 400,*
* "message": "Body is missing"*
* }*
*}*
Debug:
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: <script>: == TRACE.
xhttp:request*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: <script>: == TRACE.
xhttp:request. /JSON_RPC*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: <core>
[core/parser/msg_parser.c:185]: get_hdr_field(): content_length=355*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: <core>
[core/parser/msg_parser.c:89]: get_hdr_field(): found end of header*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: pua_rpc [pua_rpc.c:155]:
pua_rpc_publish_mode(): rpc publishing ...*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: pua_rpc [pua_rpc.c:178]:
pua_rpc_publish_mode(): presentity uri 'sip:jh at test.tutpro.com
<sip%3Ajh at test.tutpro.com>'*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: pua_rpc [pua_rpc.c:193]:
pua_rpc_publish_mode(): expires '600'*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: pua_rpc [pua_rpc.c:195]:
pua_rpc_publish_mode(): event 'message-summary'*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: pua_rpc [pua_rpc.c:197]:
pua_rpc_publish_mode(): content type 'application/simple-message-summary'*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: pua_rpc [pua_rpc.c:199]:
pua_rpc_publish_mode(): id '4ce8c647a7b947c at 172.16.30.151
<4ce8c647a7b947c at 172.16.30.151>'*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: pua_rpc [pua_rpc.c:201]:
pua_rpc_publish_mode(): ETag '.'*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: pua_rpc [pua_rpc.c:203]:
pua_rpc_publish_mode(): outbound_proxy 'sip:127.0.0.1:5060;transport=udp'*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: pua_rpc [pua_rpc.c:205]:
pua_rpc_publish_mode(): extra headers 'P-Flags: 0'*
*Jan 22 18:41:36 test kamailio: 14(27146) ERROR: pua_rpc [pua_rpc.c:211]:
pua_rpc_publish_mode(): body is missing, but content type is not .*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: jsonrpcs
[jsonrpcs_mod.c:423]: jsonrpc_send(): sending response with body:
0x7ffc3b0e2290 - 400 Body is missing*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: xhttp [xhttp_mod.c:429]:
xhttp_send_reply(): response with content-type: application/json*
*Jan 22 18:41:36 test kamailio: 14(27146) DEBUG: xhttp [xhttp_mod.c:439]:
xhttp_send_reply(): response with body: {*
*Jan 22 18:41:36 test kamailio: "jsonrpc":#011"2.0",*
*Jan 22 18:41:36 test kamailio: "error":#011{*
*Jan 22 18:41:36 test kamailio: "code":#011400,*
*Jan 22 18:41:36 test kamailio: "message":#011"Body is missing"*
*Jan 22 18:41:36 test kamailio: }*
*Jan 22 18:41:36 test kamailio: }*
вт, 22 січ. 2019 о 17:05 Serge S. Yuriev <me at nevian.org> пише:
> Hi
>
> id is not inside params but must to be at top-level.
>
> You have to read JSONRPC specs %)
> https://www.jsonrpc.org/specification
>
> On 22/01/2019 13:47, Володимир Іванець wrote:
> > Hello Henning,
> >
> > Thank you for your message. I tried setting *id* too but got same result.
> >
> > /# curl -H "Content-Type: application/json" -X POST -d '{"jsonrpc":
> > "2.0", "method": "pua.publish", "params": {"presentity_uri":
> > "sip:h at test.tutpro.com <mailto:sip%3Ah at test.tutpro.com>", "expires":
> > "600", "event package": "message-summary", "content type":
> > "application/simple-message-summary", "id":
> > "NmU0MjI0NWM4ZjI3MWI3NTNlMTJhOWNlZWJlMWE0Yzg.", "ETag": ".",
> > "outbound proxy": "sip:127.0.0.1:5060;transport=udp",
> > "extra_headers": "P-Flags: 0", "body": "."}}'
> > http://172.16.30.151:5060/JSON_RPC/
> > /{/
> > / "jsonrpc": "2.0",/
> > / "error": {/
> > / "code": 500,/
> > / "message": "Internal error: failed to create
> > context"/
> > / }/
> > /}/
> >
> >
> >
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: <script>: == TRACE.
> > xhttp:request/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: <script>: == TRACE.
> > xhttp:request. /JSON_RPC/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: <core>
> > [core/parser/msg_parser.c:185]: get_hdr_field(): content_length=372/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: <core>
> > [core/parser/msg_parser.c:89]: get_hdr_field(): found end of header/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: pua_rpc
> > [pua_rpc.c:155]: pua_rpc_publish_mode(): rpc publishing .../
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: pua_rpc
> > [pua_rpc.c:178]: pua_rpc_publish_mode(): presentity uri
> > 'sip:jh at test.tutpro.com <mailto:sip%3Ajh at test.tutpro.com>'/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: pua_rpc
> > [pua_rpc.c:193]: pua_rpc_publish_mode(): expires '600'/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: pua_rpc
> > [pua_rpc.c:195]: pua_rpc_publish_mode(): event 'message-summary'/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: pua_rpc
> > [pua_rpc.c:197]: pua_rpc_publish_mode(): content type
> > 'application/simple-message-summary'/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: pua_rpc
> > [pua_rpc.c:199]: pua_rpc_publish_mode(): id
> > 'NmU0MjI0NWM4ZjI3MWI3NTNlMTJhOWNlZWJlMWE0Yzg.'/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: pua_rpc
> > [pua_rpc.c:201]: pua_rpc_publish_mode(): ETag '.'/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: pua_rpc
> > [pua_rpc.c:203]: pua_rpc_publish_mode(): outbound_proxy
> > 'sip:127.0.0.1:5060;transport=udp'/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: pua_rpc
> > [pua_rpc.c:205]: pua_rpc_publish_mode(): extra headers 'P-Flags: 0'/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: pua_rpc
> > [pua_rpc.c:207]: pua_rpc_publish_mode(): body '.'/
> > /Jan 22 12:40:54 test kamailio: 16(26145) ERROR: jsonrpcs
> > [jsonrpcs_mod.c:1010]: jsonrpc_delayed_ctx_new(): id attribute is
> > missing/
> > /Jan 22 12:40:54 test kamailio: 16(26145) ERROR: pua_rpc
> > [pua_rpc.c:256]: pua_rpc_publish_mode(): internal error: failed to
> > create context/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: jsonrpcs
> > [jsonrpcs_mod.c:423]: jsonrpc_send(): sending response with body:
> > 0x7ffd167c0ef0 - 500 Internal error: failed to create context/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: xhttp
> > [xhttp_mod.c:429]: xhttp_send_reply(): response with content-type:
> > application/json/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: xhttp
> > [xhttp_mod.c:439]: xhttp_send_reply(): response with body: {/
> > /Jan 22 12:40:54 test kamailio: "jsonrpc":#011"2.0",/
> > /Jan 22 12:40:54 test kamailio: "error":#011{/
> > /Jan 22 12:40:54 test kamailio: "code":#011500,/
> > /Jan 22 12:40:54 test kamailio: "message":#011"Internal error:
> > failed to create context"/
> > /Jan 22 12:40:54 test kamailio: }/
> > /Jan 22 12:40:54 test kamailio: }/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: xhttp
> > [xhttp_mod.c:441]: xhttp_send_reply(): sending out response: 500
> > Internal error: failed to create context/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: <core>
> > [core/msg_translator.c:162]: check_via_address(): (172.16.30.151,
> > 172.16.30.151, 0)/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: <core>
> > [core/tcp_main.c:2226]: tcpconn_send_put(): send from reader (26145
> > (16)), reusing fd/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: <core>
> > [core/tcp_main.c:2460]: tcpconn_do_send(): sending.../
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: <core>
> > [core/tcp_main.c:2494]: tcpconn_do_send(): after real write: c=
> > 0x7f8b7f314f68 n=297 fd=8/
> > /Jan 22 12:40:54 test kamailio: 16(26145) DEBUG: <core>
> > [core/tcp_main.c:2495]: tcpconn_do_send(): buf=/
> > /Jan 22 12:40:54 test kamailio: HTTP/1.1 500 Internal error: failed
> > to create context/
> > /Jan 22 12:40:54 test kamailio: Sia: SIP/2.0/TCP 172.16.30.151:44226
> > <http://172.16.30.151:44226>/
> > /Jan 22 12:40:54 test kamailio: Content-Type: application/json/
> > /Jan 22 12:40:54 test kamailio: Server: kamailio (5.2.1
> (x86_64/linux))/
> > /Jan 22 12:40:54 test kamailio: Content-Length: 108/
> > /Jan 22 12:40:54 test kamailio: {/
> > /Jan 22 12:40:54 test kamailio: "jsonrpc":#011"2.0",/
> > /Jan 22 12:40:54 test kamailio: "error":#011{/
> > /Jan 22 12:40:54 test kamailio: "code":#011500,/
> > /Jan 22 12:40:54 test kamailio: "message":#011"Internal error:
> > failed to create context"/
> > /Jan 22 12:40:54 test kamailio: }/
> > /Jan 22 12:40:54 test kamailio: }/
> >
> >
> > пн, 21 січ. 2019 о 23:16 Henning Westerholt <hw at kamailio.org
> > <mailto:hw at kamailio.org>> пише:
> >
> > Am Montag, 21. Januar 2019, 19:10:11 CET schrieb Володимир Іванець:
> > > Are you able to generate PUBLISH message with jsonrpcs? I can
> > only do it
> > > with xmlrpc. Kamailio version is 5.2.1.
> > >
> > > When I use jsonrpc:
> >
> > Hello,
> >
> > not looked that deep into it, but have you tried to set an id (as
> > reported
> > from this error message?
> >
> > Jan 21 19:37:58 test kamailio: 13(25583) ERROR: jsonrpcs
> > [jsonrpcs_mod.c:
> > 1010]: jsonrpc_delayed_ctx_new(): id attribute is missing
> >
> > Best regards,
> >
> > Henning
> >
> >
> > > *# curl -H "Content-Type: application/json" -X POST -d
> > '{"jsonrpc": "2.0",
> > > "method": "pua.publish", "params": {"presentity_uri":
> > > "sip:jh at test.tutpro.com <mailto:sip%3Ajh at test.tutpro.com>
> > <sip%3Ajh at test.tutpro.com <mailto:sip%253Ajh at test.tutpro.com>>",
> > "expires": "600",
> > > "event package": "message-summary", "content type":
> > > "application/simple-message-summary", "id": ".", "ETag": ".",
> > "outbound
> > > proxy": "sip:127.0.0.1:5060;transport=udp", "extra_headers":
> > "P-Flags: 0",
> > > "body": "."}}' http://172.16.30.151:5060/JSON_RPC
> > > <http://172.16.30.151:5060/JSON_RPC>*
> > >
> > > I get:
> > >
> > > *{*
> > > * "jsonrpc": "2.0",*
> > > * "error": {*
> > > * "code": 500,*
> > > * "message": "Internal error: failed to
> > create context"*
> > > * }*
> > >
> > >
> > > Debug output:
> > >
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: <script>: ==
> TRACE.
> > > xhttp:request*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: <script>: ==
> TRACE.
> > > xhttp:request. /JSON_RPC*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: <core>
> > > [core/parser/msg_parser.c:185]: get_hdr_field():
> content_length=329*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: <core>
> > > [core/parser/msg_parser.c:89]: get_hdr_field(): found end of
> header*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: pua_rpc
> > [pua_rpc.c:155]:
> > > pua_rpc_publish_mode(): rpc publishing ...*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: pua_rpc
> > [pua_rpc.c:178]:
> > > pua_rpc_publish_mode(): presentity uri 'sip:jh at test.tutpro.com
> > <mailto:sip%3Ajh at test.tutpro.com>
> > > <sip%3Ajh at test.tutpro.com <mailto:sip%253Ajh at test.tutpro.com>>'*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: pua_rpc
> > [pua_rpc.c:193]:
> > > pua_rpc_publish_mode(): expires '600'*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: pua_rpc
> > [pua_rpc.c:195]:
> > > pua_rpc_publish_mode(): event 'message-summary'*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: pua_rpc
> > [pua_rpc.c:197]:
> > > pua_rpc_publish_mode(): content type
> > 'application/simple-message-summary'*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: pua_rpc
> > [pua_rpc.c:199]:
> > > pua_rpc_publish_mode(): id '.'*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: pua_rpc
> > [pua_rpc.c:201]:
> > > pua_rpc_publish_mode(): ETag '.'*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: pua_rpc
> > [pua_rpc.c:203]:
> > > pua_rpc_publish_mode(): outbound_proxy
> > 'sip:127.0.0.1:5060;transport=udp'*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: pua_rpc
> > [pua_rpc.c:205]:
> > > pua_rpc_publish_mode(): extra headers 'P-Flags: 0'*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: pua_rpc
> > [pua_rpc.c:207]:
> > > pua_rpc_publish_mode(): body '.'*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) ERROR: jsonrpcs
> > > [jsonrpcs_mod.c:1010]: jsonrpc_delayed_ctx_new(): id attribute is
> > missing*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) ERROR: pua_rpc
> > [pua_rpc.c:256]:
> > > pua_rpc_publish_mode(): internal error: failed to create context*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: jsonrpcs
> > > [jsonrpcs_mod.c:423]: jsonrpc_send(): sending response with body:
> > > 0x7fffc28e6e80 - 500 Internal error: failed to create context*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: xhttp
> > [xhttp_mod.c:429]:
> > > xhttp_send_reply(): response with content-type: application/json*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: xhttp
> > [xhttp_mod.c:439]:
> > > xhttp_send_reply(): response with body: {*
> > > *Jan 21 19:37:58 test kamailio: "jsonrpc":#011"2.0",*
> > > *Jan 21 19:37:58 test kamailio: "error":#011{*
> > > *Jan 21 19:37:58 test kamailio: "code":#011500,*
> > > *Jan 21 19:37:58 test kamailio: "message":#011"Internal error:
> > failed to
> > > create context"*
> > > *Jan 21 19:37:58 test kamailio: }*
> > > *Jan 21 19:37:58 test kamailio: }*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: xhttp
> > [xhttp_mod.c:441]:
> > > xhttp_send_reply(): sending out response: 500 Internal error:
> > failed to
> > > create context*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: <core>
> > > [core/msg_translator.c:162]: check_via_address(): (172.16.30.151,
> > > 172.16.30.151, 0)*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: <core>
> > > [core/tcp_main.c:2226]: tcpconn_send_put(): send from reader
> > (25583 (13)),
> > > reusing fd*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: <core>
> > > [core/tcp_main.c:2460]: tcpconn_do_send(): sending...*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: <core>
> > > [core/tcp_main.c:2494]: tcpconn_do_send(): after real write: c=
> > > 0x7f7af5a39888 n=297 fd=8*
> > > *Jan 21 19:37:58 test kamailio: 13(25583) DEBUG: <core>
> > > [core/tcp_main.c:2495]: tcpconn_do_send(): buf=*
> > > *Jan 21 19:37:58 test kamailio: HTTP/1.1 500 Internal error:
> > failed to
> > > create context*
> > > *Jan 21 19:37:58 test kamailio: Sia: SIP/2.0/TCP
> > 172.16.30.151:44122 <http://172.16.30.151:44122>
> > > <http://172.16.30.151:44122>*
> > > *Jan 21 19:37:58 test kamailio: Content-Type: application/json*
> > > *Jan 21 19:37:58 test kamailio: Server: kamailio (5.2.1
> > (x86_64/linux))*
> > > *Jan 21 19:37:58 test kamailio: Content-Length: 108*
> > > *Jan 21 19:37:58 test kamailio: {*
> > > *Jan 21 19:37:58 test kamailio: "jsonrpc":#011"2.0",*
> > > *Jan 21 19:37:58 test kamailio: "error":#011{*
> > > *Jan 21 19:37:58 test kamailio: "code":#011500,*
> > > *Jan 21 19:37:58 test kamailio: "message":#011"Internal error:
> > failed to
> > > create context"*
> > > *Jan 21 19:37:58 test kamailio: }*
> > > *Jan 21 19:37:58 test kamailio: }*
> > >
> > > Thanks!
> > >
> > > пн, 17 вер. 2018 о 09:18 Juha Heinanen <jh at tutpro.com
> > <mailto:jh at tutpro.com>> пише:
> > > > willy writes:
> > > > > Have anyone tried to use pua.publish to send MWI
> > notification? Can it
> > > > > work at all?
> > > > >
> > > > > I'm sending request through jsonrpc server, but it is not
> > dispatched by
> > > > > handle_publish.
> > > >
> > > > It works fine here. Last week I noticed an issue with
> > pua.publish over
> > > > jsonrpc and it was fixed. Even before the fix, pua.publish
> > worked, but
> > > > an error message was issued.
> >
> >
> >
> >
> > _______________________________________________
> > Kamailio (SER) - Users Mailing List
> > sr-users at lists.kamailio.org
> > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
> >
>
> --
> Serge S. Yuriev
> Senior VoIP engineer
>
>
> _______________________________________________
> Kamailio (SER) - Users Mailing List
> sr-users at lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20190122/369ac056/attachment.html>
More information about the sr-users
mailing list