Python pjsua - 如何创建自定义消息?
我正在使用pjsua这个Python模块,但我不知道怎么创建像下面这样的自定义消息:
mY'0E@@b,%+&KEEPALIVE sip:user@192.168.0.10 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.10;rport;branch=z9hG4bKPjgdQdo8azxxwRZ9aCVJy5Wdr27fTgDBUy
Max-Forwards: 70
From: <sip:user@192.168.0.10>;tag=w0na7ZUHDVaB8QG38EGdH5f23W3fzKL6
To: <sip:server@192.168.0.10>
Contact: <sip:server@192.168.0.10>
Call-ID: -TtcAtmNnJM5uteQDgMmddoWx7IM1fDP
CSeq: 1 KEEPALIVE
Applier-ID: 24598
Expires: 2147483647
User-Agent: PU/1.0.0
Content-Length: 0
注意:服务器和客户端在同一台电脑上。
有没有办法做到这一点呢?谢谢。
1 个回答
1
我还没试过这个,但你可以试试用 py_pjsua
模块来实现:
http://trac.pjsip.org/repos/wiki/Py_PJSUA
pjsua_call_send_request
:这个功能可以用来发送任意请求给通话。这在发送 INFO 请求时特别有用。需要注意的是,应用程序不应该用这个功能去发送那些会改变邀请会话状态的请求,比如 re-INVITE、UPDATE、PRACK 和 BYE。
在 PJSIP 邮件列表 上有一条消息讨论了类似的情况,并指出可以使用 on_call_tsx_state()
回调来监控响应。
这似乎符合你的需求,因为我猜测 KEEPALIVE 不会改变会话状态。你可以查看 这里的文档。