1. caller调用方法Call createCall(String callee),过程如下:
1)把String callee转换为javax.sip.Address;
2)创建请求,Request invite = protocolProvider.getMessageFactory ().createRequest(
toHeader.getAddress().getURI()
, Request.INVITE
, callIdHeader
, cSeqHeader
, fromHeader
, toHeader
, viaHeaders
, maxForwards);
3)创建sdp的ContentTypeHeader,contentTypeHeader=headerFactory.createContentTypeHeader(
"application", "sdp");
4)创建客户端事务ClientTransaction,clientTransaction=sipProvider.getNewClientTransaction(invite);
5)create the call,and creates a new call participant with participantAddress,
CallParticipantSipImpl callParticipant = new CallParticipantSipImpl(
containingTransaction.getDialog().getRemoteParty(), call)
,设置callParticipant状态为INITIATING_CALL,添加该新创建的Call;
6)创建双方具体的多媒体会话约定,设置请求消息的内容为该多媒体数据,然后发送出去。
invite.setContent(callSession.createSdpOffe (intendedDestination), contentTypeHeader);
2. callee端process inviteRequest,过程如下:
1)creates a new call participant,设置participant的sdp描述,
CallParticipantSipImpl callParticipant
= createCallParticipantFor(serverTransaction, sourceProvider);
callParticipant.setSdpDescription(
new String(invite.getRawContent()));
2)判断本地uri是否是远端caller要呼叫的uri
分享到:
相关推荐
深入研究这些文件,可以了解具体的实现细节和设计思路。 总结,SIP软电话源码的解析涵盖了SIP协议、JAIN SIP库的应用、SIP消息处理、网络连接及媒体处理等多个方面。通过理解并实践这些知识点,开发者可以构建自己...
随着支持SIP 的客户端软件和智能多媒体终端会越来越多。本文档按照一个实用电话的模拟设计思路, 实现了一个基于SIP 协议的IP 电话的软件模型。软件的开发环境为Window s 2000 平台, 开发工具采用Visual C+ + 6
为了构建一个高效且易于扩展的IP电话服务器,本文提出了采用插件式架构的设计思路。这种架构的好处在于: - **模块化**:每个功能都是一个独立的插件,可以根据需要轻松添加或删除。 - **可扩展性**:新增功能只需...
总的来说,本文的研究与设计揭示了基于DHT的P2P网络与SIP网络电话结合的潜力,并为未来构建更稳定、高效的网络电话系统提供了新的思路。随着技术的发展和应用的深入,我们可以期待P2P-SIP网络电话在通信领域发挥...
7. **论文撰写**:作为毕业设计的一部分,源码可能伴随着论文文档,详细阐述了设计思路、实现方法和遇到的问题,这为撰写技术报告提供了模板。 通过分析这份源码,不仅可以掌握Android应用开发的基本技能,还能深入...
5. **兼容性和扩展性**:系统设计时考虑到了未来可能加入的新技术和新设备,因此采用了模块化设计思路,便于后续升级和维护。 #### 结论 基于SIP的网络视频监控系统不仅解决了传统监控系统存在的问题,还提供了...
相比之下,SIP(Session Initiation Protocol)协议借鉴了互联网协议的设计思路,采用基于文本的简单消息格式。SIP系统采用了客户端/服务器结构,呼叫控制信息被封装在消息头中,通过消息传递来实现。这使得终端设备...
本文档旨在详细介绍SIP协议北向接口及其驱动开发的设计方案,包括对IPv6的支持、需求分析、设计思路、开发环境搭建、系统调试与测试等内容。 #### 二、IPv6支持 ##### 2.1 IPv6概述 IPv6是Internet Protocol ...
本文将深入分析该系统的关键技术和设计思路。 #### FreeSwitch概述 FreeSwitch是一个开源的电信级软交换平台,它能够提供强大的语音处理功能,并支持多种协议,包括SIP(Session Initiation Protocol)。...
综上所述,本文提出的基于区块链与人工智能的网络多服务器SIP信息加密系统设计,不仅响应了信息安全领域的重大需求,而且为网络通信提供了新的安全保障思路和技术手段。随着未来技术的不断进步,该加密系统有望得到...
- **高度可定制性**:由于oSIP采用了模块化的设计思路,开发者可以根据实际需求灵活选择所需的功能组件。 - **良好的性能表现**:通过优化算法和数据结构设计,oSIP能够在资源有限的环境中表现出色。 - **广泛的适用...
源代码的查阅可以帮助开发者更好地掌握API的设计思路,从而更高效地利用这些接口来实现特定的功能需求。 JainSipHtml1.0.zip可能包含了JAIN SIP 1.0的文档或教程,通常会包含API的详细说明、使用示例以及开发者指南...
其设计思路受到了HTTP的启发,支持多种通信方式,如多点传送和单点传送,并具备认证授权机制。 SIP家庭网关是系统的核心,它不仅负责家电管理,还承担协议转换和家庭网络监控的功能。通过SIP,家庭网关能够处理与...