【发布时间】:2017-10-12 11:06:18
【问题描述】:
我必须使用 Android SIP 客户端实现聊天消息传递,但找不到任何相关的类或侦听器。我已经使用 SIP 实现了呼叫功能。
【问题讨论】:
标签: android chat sip messaging
我必须使用 Android SIP 客户端实现聊天消息传递,但找不到任何相关的类或侦听器。我已经使用 SIP 实现了呼叫功能。
【问题讨论】:
标签: android chat sip messaging
要在 Android 应用中同时实现 call 和 messaging 功能,您可以通过 PJSIP 实现。它有几组库来实现新功能。 它具有在 android 应用程序中实现的所有 VOIP 功能。
在Android中实现PJSIP的文档,
https://trac.pjsip.org/repos/wiki/Getting-Started/Android
以上链接说明了如何在android平台上实现PJSIP。
【讨论】:
使用 pjsip 或 Linphone 开源项目。这两个库都是使用 c 代码编写的,并且有据可查,可以使用示例应用程序为 android 构建。
如果你想要纯java实现sip IM,去jainsip stack based implementation。实际上android默认sip客户端是基于jainsip的,但它不支持Im,只能在wifi下工作。
jainsip 的 Telestax 实现有助于为 android 创建应用程序。您可以阅读此documentation 了解更多详细信息。您还可以找到一个示例 android 实现 here.
【讨论】:
Android 目前不支持..你能检查一下吗 检查这个https://telestax.com/jain-sip-stack-for-android/
为什么要这样做? 本机 sip 堆栈的限制。 原生 android sip 堆栈建立在 JAIN SIP 之上,但它不具备所有功能,目前不支持 IM、在线状态和视频通话。 Google 分叉了 SIP Stack,并且从未真正更新默认提供的 SIP API,并使用与原始 JAIN SIP 项目相同的包名称。事实证明,对于想要在全球范围内添加 SIP 功能的开发人员来说,这是一个主要的麻烦,因为他们无法开箱即用地使用 JAIN SIP。
JAIN SIP 是基于 Java 的 可以在此处找到堆栈的开源实现。它是一个基于 Java 的 SIP 堆栈,可让您将 sip 堆栈无缝集成到您的 android 应用程序中,而无需使用 NDK。
完整的 SIP 堆栈 JAIN SIP 是 RFC 3261 规范的完整实现,并且支持多个 SIP RFC。
【讨论】:
Android SIP 客户端似乎没有实现 SIP IM。
但是您应该能够自己轻松实现。
您只需检查RFC 3428。 只需检查示例(搜索“MESSAGE sip”),从这里应该很明显。
另一种解决方案是使用其他一些支持 SIP MESSAGE 的开源 SIP 堆栈。
【讨论】: