免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2091 | 回复: 0

asterisk与xlite、eyebeam的mwi问题 [复制链接]

论坛徽章:
0
发表于 2008-09-19 23:20 |显示全部楼层
在用xlite\eyebeam与asterisk测试mwi时,发现存在一个问题,软phone在正确响应(发送200 ok)第一个收到的mwi notify后,对后续的notify皆回复错误的200 ok,直到下一次subsribe。但是响应一次notify后,又再错误处理后续的notify。
分析sip信令包发现,软phone回复后续notify的200 ok中的cseq与notify的不对应,而是与第一个notify的一致,而且对notify的message body并不处理,似乎xlite或者eyebeam对同一个dialog内的后续notify都误认为是重发。
根据rfc3265,典型的消息流程如下:
   Subscriber          Notifier
       |-----SUBSCRIBE---->|     Request state subscription
       ||
       ||
明显,xlite的处理有问题。
再看看asterisk是怎么做的。在sip channel的handle subscibe里,回复200 ok后会马上发送mwi给subscriber。这个似乎没什么必要,但是
   Upon successfully accepting or refreshing a subscription, notifiers
   MUST send a NOTIFY message immediately to communicate the current
   resource state to the subscriber.  This NOTIFY message is sent on the
   same dialog as created by the SUBSCRIBE response.  If the resource
   has no meaningful state at the time that the SUBSCRIBE message is
   processed, this NOTIFY message MAY contain an empty or neutral body.
   See section 3.2.2. for further details on NOTIFY message generation.
   Note that a NOTIFY message is always sent immediately after any 200-
   class response to a SUBSCRIBE request, regardless of whether the
   subscription has already been authorized.
好吧,asterisk是对的,不过为了测试mwi,只能先注掉发送第一次notify的代码,果然xlite、eyebeam就能正确处理notify的message body了。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/1251/showart_1210955.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

SACC2021中国系统架构师大会

【数字转型 架构重塑】2021年5月20日-22日第十三届中国系统架构师大会将在云端进行网络直播。

大会为期3天的议程,涉及20+专场,近120个主题,完整迁移到线上进行网络直播对会议组织来说绝非易事;但考虑到云端会议的直播形式可以实现全国各地技术爱好者的参与,也使ITPUB作为技术共享交流平台得到更好的普及,我们决定迎难而上。
http://sacc.it168.com/


大会官网>>
  

北京盛拓优讯信息技术有限公司. 版权所有 16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP