2014-05-15 56 views
0

我想尝试在我的Xamarin应用程序(包括Android和iOS)中实现非常简单的VoIP电话功能。非常简单,我的意思是没有用户字典,没有“保留”,没有地址(如SIP)。非常简单的手机功能 - 我真正需要什么?

一个基本的情况是:该应用程序有按钮“呼叫支持”。该应用程序知道对方的IP,因此只需尝试与已知IP的UDP连接,并且如果有人按“接受”按钮,则可以互相对话,直到有人点击“挂断”按钮。现在

,我在整个VoIP的全新的,所以基本上我的问题是,我应该怎么找?我是否需要“SIP协议栈”和“RTP协议栈”(不管它是什么,我justed问这个问题:)

或者,我可以做一个更简单的方法之前,GOOGLE了一下?例如,我发现这个Xamarin论坛页面: http://forums.xamarin.com/discussion/2526/udpclient-in-background - 使用IAX2,我以为是这样的人:http://www.voip-info.org/wiki/view/IAXClient,但在C#包装的链接现在似乎无效:/

+0

要在RTP上面回答你的问题:SIP是设置'呼叫'的协议 - 即它说我是约翰,我想和玛丽说话。 RTP是在呼叫建立时双方之间实际携带语音的协议 - 即包含编码语音的分组。 – Mick

回答

0

我会倾向于“顺其自然”这里简单地使用SIP - VoIP在理论上相对简单,但在细节上有很多复杂性。而且,虽然说SIP已经成长为一个庞大复杂的野兽,但使用许多其他人正在使用的标准方法,意味着您不仅可以从其他人那里获益,也可以充分利用低级别工作一个大型的开发者和用户社区。

您也可能会发现,你只需使用情况下,从通常的功能蔓延或提升请求一段时间(例如不同的服务台以不同的支持团队或当用户移动到不同的区域)受到影响。如果您的实现基于标准SIP方法之一构建,那么处理这些新需求可能会更容易。

对于Android的你可能还可以使用内置的SIP API如果在你的市场支持/携带,如果你并不需要支持旧版本的Android。无论哪种方式,Andorid和iOS最近都有很多有据可查的SIP库。

相关问题