Linphone如何支持Android / iOS上的推送通知
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linphone如何支持Android / iOS上的推送通知相关的知识,希望对你有一定的参考价值。
我对ios和android上的SIP VoIP的APNS和GCM推送通知分别感兴趣。
根据"Receive data from Internet" permission的说法,Linphone可能会支持GCM,根据其Android应用程序的http://www.linphone.org/eng/features/,可能还有APNS和GCM。
与推送通知集成(需要兼容的SIP服务器)
- 这是什么意思,“兼容的SIP服务器”?
- 我如何知道给定的SIP服务器是否兼容?
- 这些服务器是开源的吗?
- 这一切都仅限于Linphone自己的服务器吗?
我在StackOverflow上问这个,因为我从开发人员的角度对此感兴趣。
1)兼容的SIP服务器是指支持“延迟分叉”的SIP服务器,即在设备注册时可以分叉邀请的服务器,即使该设备在邀请被发送时没有注册。 (这是必需的,因为如果您使用iOS 10及更高版本要求的移动VoIP应用程序的推送通知策略,移动设备将在设备收到推送之后才会注册,并且推送将同时发送作为邀请)
2)询问服务器管理员,或者如果这不是一个选项,请尝试取消注册您的设备,拨打电话,重新注册您的设备,看看是否有邀请
3a)Kamillio有一个名为TSILO的模块支持后期分叉here是一个视频,它解释了推送通知策略是什么以及如何使用TSILO在Kamillio中实现它
3b)Linphone有一个名为Flexisip的开源代理服务器,支持延迟分叉,如果它不支持后期分叉,可以在当前服务器上使用。 Flexisip可以安装在您自己的服务器上或云平台上。与Linphone一样,Flexisip拥有双重许可,免费AGPL或商业许可
4)不,它不仅限于Linphone自己的服务器。
请记住,服务器仍然必须在邀请时发送推送通知(如果您正在使用Flexisip并正确配置它,Flexisip将负责发送推送通知)。
根据@ user8127814的回答:
我不认为Linphone与其他“后期分叉”支持的服务器兼容。推送服务需要为每个设备提供唯一的标识,这意味着您需要通过SIP协议传递此信息。 Linphone在联系头中发送它(在iOS推送服务中称为设备ID,名称可能在不同的推送服务中有所不同),并且它不是常规SIP标准的一部分。这意味着服务器必须精确设计才能识别此参数以支持推送功能,就像Flexisip一样。如我错了请纠正我。
以上是关于Linphone如何支持Android / iOS上的推送通知的主要内容,如果未能解决你的问题,请参考以下文章