我一直在寻找一种方法来设置Android SIP堆栈,以便能够以ad-hoc方式在同一网络上的两个设备之间建立SIP呼叫.即无需注册到SIP服务器.
我无法让这个工作,因为SIP演示包括服务器注册,如果没有这一步,我无法让它发出或接听电话.
我甚至不确定这是否应该是可能的.我能找到的这一点很少提及是有冲突的(有人说它可以用特定的设置来完成,他们没说什么,有些人说Android SIP API不适合这个).
我想知道是否有人有这个工作或有任何关于如何为此配置API的线索,因为我想在查看第三方之前使用内置的SIP API.
我正在开发的应用程序是一个内部应用程序,它将始终在相同的设备上运行,因此所有设备上都没有SIP API这一事实对我来说不是问题.
我一直陷入同样的问题.
如果你可以在没有android sip api的情况下制作它,你可以查看rtp api,它为你提供了一些较低级别的工具来制作P2P VOIP应用程序而无需服务器.
要支持音频会议和类似用法,您需要将两个类实例化为流的端点:
AudioStream指定远程端点,包括网络映射和已配置的AudioCodec.AudioGroup表示一个或多个AudioStream的本地端点.AudioGroup混合所有AudioStream,并可选择同时与设备扬声器和麦克风进行交互.
对应的是你必须编写自己的设备发现协议,以便知道audiostream peer使用的端口,如本答案中所述
如果你只打算进行一对一的谈话,但如果你想进行一对一的谈话,那么问题就不那么难了.
对于一对一会话,会议主持人必须为他想要呼叫的每个远程设备实现n audiostream.每个远程对等体只有一个音频流链接到主机音频流之一.
小智 5
您可以使用CSipSimple(开放源代码)来做到这一点:http : //code.google.com/p/csipsimple/
您设置本地帐户,注册自己而不是服务器,然后使用TXT模式拨打电话并拨打remote_account_name @ remote_ip_address。
| 归档时间: |
|
| 查看次数: |
5769 次 |
| 最近记录: |