15

我想在 java 中实现 SIP 协议,并且希望能够创建不同的客户端(5 个或更多)并使它们连接到代理服务器。这一切都是为了测试目的,所以我希望能够在相当低的水平上很好地看到正在发生的事情。
客户首先应该能够通过文本进行交流,然后也可以通过音频进行交流。(如果我能走到那一步)

我已经阅读了一些关于 JAIN 库的信息,我从中了解到它们并不适合服务器端?我也没有真正找到任何使用 JAIN 的代理服务器示例、教程。
我还找到了这本SIP Servlet 教程书,我过去使用过 HTTP servlet,但我应该更喜欢 servlet 还是 JAIN 还是...?

我对 SIP 很陌生,所以我真的不知道从哪里开始或结合 java 选择什么。

4

2 回答 2

13

如果打算将您的 SIP 堆栈合并到生产应用程序中,那么我对您的建议是尽一切可能避免从头开始编写您自己的堆栈。毫不夸张地说,您需要多年的时间才能让您的堆栈与所有不同的 SIP 设备和服务器顺利运行。如果您的集成要求非常有限,那么也许您可以更快地完成,但这仍然是一项艰巨的任务。

这是一个很好的可用SIP 堆栈列表。另一方面,如果您确实决定通过查看SIP RFC 列表来实施您自己的开始。RFC 3261是核心协议规范,但它已被许多其他 RFC 更新,因此您至少需要为核心 SIP 功能实现六个。在那之后,如果你想支持传输、存在、消息等待等内容,那么就需要更多的 RFC 来实现。这是SIP 堆栈的列表。

于 2010-04-23T05:29:49.460 回答
6

Sip Servlets 平台将帮助您构建融合应用程序,即 HTTP 和 SIP 应用程序。Sip 最终用户设备将与 Sip Servlet 应用程序交互。例如,Sip Servlet 应用程序可以是 B2BUA 或 SIP 代理。

我建议您尝试Mobicents Sip Servlet,它是基于 Java Servlet 的完整 Sip Servlet 平台,已通过 JSR289 规范认证并使用 Jain Sip 进行 SIP Stack。

该项目周围有一个活跃的社区,您会找到有用的示例来入门。

通过选择一个开始的平台,您可以专注于业务逻辑,而不必弄乱

于 2011-02-27T11:20:53.910 回答