我一直在寻找一种方法来设置 Android SIP 堆栈,以便能够以临时方式在同一网络上的两个设备之间建立 SIP 呼叫。即无需注册到 SIP 服务器。
我无法让它工作,因为 SIP 演示包括服务器注册,如果没有此步骤,我无法让它拨打或接听电话。
我什至不确定这是否可能。我发现的关于这一点的很少提及是相互冲突的(有些人说可以通过特定的设置来完成,但他们没有说明是什么,有些人说 Android SIP API 不适用于此)。
我想知道是否有人已经让它工作或者有任何关于如何为此配置 API 的线索,因为我想在查看第三方 API 之前使用内置的 SIP API。
我正在开发的应用程序是一个内部应用程序,它将始终在相同的设备上运行,因此 SIP API 并不存在于所有设备上这一事实对我来说不是问题。
我一直被同样的问题困扰。
如果你可以在没有android sip api的情况下完成它,你可以看看rtp api http://developer.android.com/reference/android/net/rtp/package-summary.html它为您提供了一些较低级别的工具来制作 P2P VOIP 应用程序,而无需服务器。
要支持音频会议和类似用途,您需要
实例化两个类作为流的端点:
AudioStream指定远程端点并由网络组成
映射和配置的音频编解码器。 AudioGroup代表本地
一个或多个音频流的端点。 AudioGroup 混合了所有
AudioStreams 并可选择与设备扬声器和
同时麦克风。
对应的是,您必须编写自己的设备发现协议才能了解音频流对等方使用的端口,如此处所述answer https://stackoverflow.com/a/19996334/4408021
如果您只想进行一对一的对话,这个问题并不难,但如果您想进行一对多的对话,这个问题就有点棘手了。
对于一对多的对话,会议主持人必须为他想要呼叫的每个远程设备实例化 n 个音频流。每个远程对等点只有一个音频流链接到主机音频流之一。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)