【Android开发API】通信 - SIP协议 - SIP
- 格式:pdf
- 大小:408.63 KB
- 文档页数:6
SIP协议主要消息协议名称:SIP协议主要消息一、引言本协议旨在详细描述SIP(Session Initiation Protocol,会话初始协议)的主要消息,包括其定义、结构和功能。
SIP是一种用于建立、修改和终止多媒体味话的应用层协议,广泛应用于VoIP(Voice over Internet Protocol,互联网语音通信)和实时通信系统中。
二、协议概述SIP协议主要通过请求和响应的方式进行通信,使用文本格式的消息进行交互。
SIP消息由起始行、头部字段和消息体组成,其中起始行包含请求或者响应的方法、URI(Uniform Resource Identifier,统一资源标识符)和SIP版本信息。
头部字段包含了关于消息的元数据,而消息体则携带了具体的数据内容。
三、主要消息类型1. INVITE:该消息用于建立会话,发起方向被叫方发送INVITE请求,包含了被叫方的SIP地址和媒体描述信息。
2. ACK:该消息用于确认INVITE请求的接收,发起方在收到200 OK响应后发送ACK请求,表示会话建立成功。
3. BYE:该消息用于终止会话,可以由任意一方发送,对方收到BYE请求后会发送200 OK响应,表示会话终止。
4. CANCEL:该消息用于取销未完成的请求,普通用于取销INVITE请求,以便重新发起新的请求。
5. REGISTER:该消息用于注册用户地址,用户向服务器发送REGISTER请求,以便在服务器上注册自己的SIP地址。
6. OPTIONS:该消息用于查询服务器的能力,普通用于检测对方是否在线或者支持特定功能。
7. INFO:该消息用于传输非实时信息,如传输DTMF(Dual-tone Multi-frequency)信号等。
四、消息格式和示例1. INVITE消息格式:```INVITE sip:alice@example SIP/2.0Via: SIP/2.0/UDP 192.0.2.1;branch=z9hG4bK776asdhdsMax-Forwards: 70To: <sip:alice@example>From: <sip:bob@example>;tag=1928301774Call-ID: a84b4c76e66710CSeq: 314159 INVITEContact: <sip:bob@example>Content-Type: application/sdpContent-Length: 142v=0o=bob 2890844526 2890844526 IN IP4 192.0.2.1s=-c=IN IP4 192.0.2.1t=0 0m=audio 49172 RTP/AVP 0a=rtpmap:0 PCMU/8000```2. ACK消息格式:```ACK sip:alice@example SIP/2.0Via: SIP/2.0/UDP 192.0.2.1;branch=z9hG4bK776asdhds Max-Forwards: 70To: <sip:alice@example>From: <sip:bob@example>;tag=1928301774Call-ID: a84b4c76e66710CSeq: 314159 ACKContact: <sip:bob@example>Content-Length: 0```3. BYE消息格式:```BYE sip:alice@example SIP/2.0Via: SIP/2.0/UDP 192.0.2.1;branch=z9hG4bK776asdhds Max-Forwards: 70To: <sip:alice@example>From: <sip:bob@example>;tag=1928301774Call-ID: a84b4c76e66710CSeq: 314160 BYEContact: <sip:bob@example>Content-Length: 0```4. CANCEL消息格式:```CANCEL sip:alice@example SIP/2.0Via: SIP/2.0/UDP 192.0.2.1;branch=z9hG4bK776asdhds Max-Forwards: 70To: <sip:alice@example>From: <sip:bob@example>;tag=1928301774Call-ID: a84b4c76e66710CSeq: 314159 CANCELContact: <sip:bob@example>Content-Length: 0```5. REGISTER消息格式:```REGISTER sip:example SIP/2.0Via: SIP/2.0/UDP 192.0.2.1;branch=z9hG4bK776asdhds Max-Forwards: 70To: <sip:bob@example>From: <sip:bob@example>;tag=1928301774Call-ID: a84b4c76e66710CSeq: 314161 REGISTERContact: <sip:bob@example>Expires: 3600Content-Length: 0```6. OPTIONS消息格式:```OPTIONS sip:example SIP/2.0Via: SIP/2.0/UDP 192.0.2.1;branch=z9hG4bK776asdhds Max-Forwards: 70To: <sip:alice@example>From: <sip:bob@example>;tag=1928301774Call-ID: a84b4c76e66710CSeq: 314162 OPTIONSContact: <sip:bob@example>Content-Length: 0```7. INFO消息格式:```INFO sip:alice@example SIP/2.0Via: SIP/2.0/UDP 192.0.2.1;branch=z9hG4bK776asdhds Max-Forwards: 70To: <sip:alice@example>From: <sip:bob@example>;tag=1928301774Call-ID: a84b4c76e66710CSeq: 314163 INFOContact: <sip:bob@example>Content-Type: application/dtmf-relayContent-Length: 18Signal=1Duration=100```五、总结SIP协议的主要消息包括INVITE、ACK、BYE、CANCEL、REGISTER、OPTIONS和INFO。
什么是SIP协议2007年9月3日 13:30 通信世界网评论( 0) 阅读:次什么是SIP协议会话起始协议SIP(SessionInitiationProtocol)被描述用来生成,修改和终结一个或多个参与者之间的会话,是由IETF于1999年提出的一个基于IP网络中实现实时通信应用的一种信令控制协议。
它打破了传统电信业务的传输模式,采用基于因特网的准则,将蜂窝系统与因特网应用融合在一起提供基于IP的多媒体业务,具有开放性,可扩展性,安全性的特点。
3G PP已将SIP作为第三代移动通信系统多媒体域的控制协议。
经常出现这种情况,一个用户在多个位置之间移动,如一个公司职员,可能处在公司,家里或是咖啡厅等位置。
为了给用户提供方便的移动性,SIP 使用统一资源定位符URI(UniformResourceIdentifier)来表示用户。
通常由一个域名加上用户名组成,例如SIP:John@ ,类似于电子邮件地址。
SIP URI只是用来唯一标示用户的逻辑标记符,用户注册时它将与用户的IP地址绑定并记录到定位服务器。
在SIP中,系统采用了因特网常用的客户机/服务器结构,由用户代理和服务器两大部分组成。
其中用户代理又分为用户代理客户(UAC:UserAgentClient)和用户代理服务器(UAS:UserAgent Server)两种。
UAC用来发起会话请求,UAS用来接受并响应会话请求。
这两者只是逻辑上的功能,实际上网络终端应同时具备这两种功能,既能发起会话,又能接受、相应会话。
服务器分为代理服务器(Proxy Server)、重定向服务器(Redirected Server)和注册服务器(Registrar)。
图1 SIP的网络体系结构图1描述了SIP的基本网络体系结构。
用户接入网络后首先要向注册服务器注册,注册信息写入定位服务器中(定向服务器不属于SIP网元,只是一个数据库)。
当用户代理客户UAC要发起呼叫时,它一般将呼叫请求消息发送给本域的出向代理服务器。
SIP协议深入介绍网络事业部软交换开发部王笑蓉1.SIP简介SIP(Session Initiation Protocol)是应用层控制协议,可以创建,修改,以及终止一个多媒体会话。
它具有以下几个主要功能:Userlocation:确定通信中的终端位置availability:确定被叫方是否愿意进行通信Usercapabilities:确定用于通信的媒体类型及参数Usersetup:建立会话各方的会话参数Sessionmanagement:终止会话,修改会话参数SessionSIP协议需要和其他IETF协议一起来构成一个完整的多媒体通信构架。
这些协议有:RTP(Real Time Transport):传输实时数据,提供QoS反馈信息Streamingprotocol):控制流媒体的传送TimeRTSP(RealMEGACO(Media Gateway Control Protocol):控制媒体网关SDP(Session Description Protocol):描述多媒体会话1.1SIP协议结构SIP协议的行为模型可以用几个分层的相对独立处理阶段来描述:1.语法及编码层2.传输层定义了客户端如何通过网络发送请求及接收响应,以及服务器端如何接收请求并发送响应。
所有SIP逻辑实体都包含此层。
3.事务层事务层处理应用层请求或响应消息的重发,响应与请求的匹配以及应用层的超时。
一个SIP事务由一个请求和对该请求的所有响应构成,这些响应分临时响应(provisional response)和最终响应(final response)。
对于INVITE事务,对应于非2xx响应的ACK确认消息也属于该事物,而对应于2xx响应的ACK确认消息则不属于该INVITE事物。
UA以及stateful proxy均包含事务层,而stateless proxy 不包含事务层一个事物根据逻辑功能分为客户事务(client transaction)和服务器事务(server transaction)。
主题:基于Android平台Sip协议的会话通信第一次评审报告开发主机平台:WindowsXP目标平台:Android 2.3会话终端或更高版本一、项目需求:1. 会话终端(双向)1> 会话终端向目标终端发起呼叫/监听被叫,经服务器验证注册,采用Sip协议实现语音通信。
2> 呼叫、被叫双向通过建立UDP或TCP/IP连接发送、接受视频数据,通过边采集边上传功能,实现视频会话。
二、成果演示:搭建Sip服务器,分配sip账号,由中兴V880端9003呼叫PC机9001,可实现语音视频会话。
三、开发思路及问题处理:会话终端:1> 简单流程图2> 开发思路2.1 实现终端之间的语音通信功能,.sip包中有几个类和接口,用来实现基于sip协议的语音会话功能,如下SDK API:创建SharedPreferences,用来存放sip账号、服务器等信息;创建一个SipProfile,用来配置管理sip账号、服务器等信息;创建一个SipManager实例,用来访问、打开sip相关服务,注册验证,根据sipAddress 建立音频电话;注册监听:sipmanager.setRegistrationListener(sipprofile.getUriString(), new SipRegistrationListener(){与服务器交互触发以下三个方法:a:登记请求发送,与服务器验证信息b:注册成功c: 注册失败});监听呼叫:SipAudioCall.Listener listener=new SipAudioCall.Listener(){a:会话建立时调用(启动音频、调整为可讲话模式、切换静音等语音设置)b:会话结束时调用}监听被叫:c:来电显示2.2直接从Android的MediaRecorder里面已经生成好的视频数据中提取出H263/H264数据,然后将传递的RTP视频数据流封装成RTSP数据流传递给终端的videoview实现视频会话。
sip协议详解SIP协议详解。
SIP(Session Initiation Protocol)是一种应用层控制协议,用于建立、修改和终止多媒体会话,如VoIP电话、视频会议和即时消息。
它是一种基于文本的协议,采用类似HTTP的请求-响应模型。
SIP协议的设计目标是简单、灵活、可扩展和易于实现。
SIP协议的核心功能包括会话管理、用户定位、呼叫建立和终止。
它使用统一资源标识符(URI)来标识终端用户或终端设备,允许用户在不同网络之间进行无缝切换。
SIP还支持呼叫保持、呼叫转移、多方通话和媒体协商等高级功能。
SIP协议的消息格式包括请求消息和响应消息。
请求消息由方法、URI、协议版本和消息头组成,用于向服务器发起请求。
响应消息由协议版本、状态码、原因短语和消息头组成,用于对请求进行响应。
常见的SIP方法包括INVITE(邀请)、ACK(确认)、BYE(结束)、CANCEL(取消)和REGISTER(注册)等。
SIP协议的工作流程可以简单描述为,用户代理向代理服务器发送请求,代理服务器根据用户的请求进行路由选择,最终找到被叫用户的位置并向其发送请求,被叫用户接受请求后进行响应,双方建立会话并进行媒体传输,会话结束后发送BYE消息进行终止。
SIP协议的可扩展性是其设计的重要特点之一。
SIP允许通过扩展头字段和方法来支持新的功能和应用,因此可以满足不断变化的通信需求。
此外,SIP还与其他协议如SDP(Session Description Protocol)、RTP(Real-time Transport Protocol)和RTCP(Real-time Control Protocol)等配合使用,实现多媒体会话的建立和传输。
总的来说,SIP协议作为一种开放、灵活的多媒体会话控制协议,被广泛应用于VoIP、视频会议、即时消息等通信领域。
它的设计简单、功能丰富、可扩展性强,为多媒体通信提供了可靠的基础。
随着通信技术的不断发展,SIP协议将继续发挥重要作用,推动通信行业的进步和创新。
————SIP协议详解————超全超清精编版目录第3章SIP协议3.1 概述3.1.1 基本概念3.1.2 相关术语3.1.3 协议栈结构3.1.4 SIP协议的应用3.2 协议消息3.2.1 消息类型3.2.2 消息结构3.3 基本消息流程3.3.1 SIP用户注册流程3.3.2 成功的SIP用户呼叫流程3.3.3 成功的SIP中继呼叫流程3.3.4 成功的SIP-T中继呼叫流程第3章SIP协议3.1 概述3.1.1 基本概念会话启动协议SIP(Session Initiation Protocol)是由IETF提出并主持研究的一个在IP网络上进行多媒体通信的应用层控制协议,它被用来创建、修改、和终结一个或多个参加者参加的会话进程。
这些会话包括Internet 多媒体会议、Internet电话、远程教育以及远程医疗等。
即所有的因特网上交互式两方或多方多媒体通信活动,统称为多媒体会话。
参加会话的成员可以通过组播方式、单播联网方式或者两者结合的方式进行通信。
SIP协议是一个正在发展和不断研究中的协议。
一方面,它借鉴了其他Internet标准和协议的设计思想,在风格上遵循因特网一贯坚持的简练、开放、兼容和可扩展等原则,并充分注意到因特网开放而复杂的网络环境下的安全问题。
另一方面,它也充分考虑了对传统公共电话网的各种业务,包括IN 业务和ISDN业务的支持。
利用带有会话描述的SIP邀请消息来创建会话,以使参加者能够通过SIP交互进行媒体类型协商。
它通过代理和重定向请求用户当前位置,以支持用户的移动性。
用户也可以登记它们的当前位置。
SIP协议独立于其他会议控制协议,它在设计上独立于下面的传输层协议,因此可以灵活方便地扩展其他附加功能。
SIP作为一个应用层的多媒体会话信令协议,可以被用来发起一个会话进程、在会话中邀请其他参加者加入会议,会话本身可以通过基于组播协议的会话通告协议(SAP)、电子邮件、网页通告、以及轻量级号薄访问协议(LDAP)等方式预先通告各个可能的参加者。
几种开源SIP协议栈对比1.PJSIP:PJSIP是一个强大而灵活的开源SIP协议栈,提供了全面的SIP协议支持以及音频、视频、实时通信等功能。
它使用C语言编写,具有跨平台的特性,支持多种操作系统和开发环境,如Windows、Linux、macOS等。
PJSIP提供了简单易用的API,使开发者能够快速构建VoIP应用程序。
2. Linphone:Linphone是一个流行的开源SIP协议栈,支持语音、视频、实时消息等多媒体通信功能。
它使用C语言编写,可跨平台运行于多种操作系统和设备,如Windows、Linux、iOS和Android。
Linphone具有丰富的功能和友好的用户界面,让开发者和用户能够轻松地构建和使用VoIP应用程序。
3. Doubango:Doubango是一个高性能的开源SIP协议栈,专注于提供低延迟和高质量的音频和视频通信服务。
它使用C++语言编写,提供了跨平台的支持,可运行于不同的操作系统和设备。
Doubango提供了可扩展的API,使开发者能够快速构建各种实时通信应用程序。
4. Sofia-SIP:Sofia-SIP是一个轻量级的开源SIP协议栈,专注于提供简单和可移植的SIP协议支持。
它使用C语言编写,具有可扩展性和灵活性,可适应不同的应用需求。
Sofia-SIP支持多种操作系统和开发环境,如Linux、Windows、macOS和iOS等。
5.JsSIP:JsSIP是一个基于JavaScript的开源SIP协议栈,专为Web应用程序而设计。
它使用纯粹的JavaScript语言编写,运行于现代的Web浏览器环境中。
JsSIP提供了易于使用的API,使开发者能够在Web应用程序中集成SIP功能,实现浏览器间的实时通信。
综上所述,开源SIP协议栈提供了各种选择,适用于不同的应用需求和开发环境。
无论是构建VoIP应用程序还是实现WebRTC等实时通信功能,开发者都可以根据自身需求选择适合的开源SIP协议栈来实现他们的目标。
SIP协议简介SIP(Session Initiation Protocol ,RFC 3261)是由IETF (国际互联网标准制定组织)制定的面向Internet 会议和电话的信令协议。
SIP是一个应用层的协议,可以建立,修改或者中止多媒体会话或者呼叫。
它是一个基于ASCII的端到端的协议,它实际上是在因特网上提供“约会”服务。
用来实现VoIP的开放协议,最常用的有三种,SIP、MGCP(Media Gateway Control Protocol)和H.323。
SIP协议是专门为IP 电话,尤其是结合Internet 设计的协议,同传统的H.323 协议相比,SIP 拥有明显的优越性:优异的可扩展性--大大提高了系统的处理能力;与Internet 紧密结合--使通讯更加轻松便捷的;卓越的开放性--不仅能够对手机、PDA 等移动设备提供良好的支持,对于在线即时交流、语音和视频数据传输等多媒体应用也能够很好地完成。
SIP协议的特性和优势特性优势简洁性SIP的协议栈比其它的VoIP协议都要小。
SIP可以看作是一个简单的工具箱,利用它便于实现智能终端、网关、进程和客户端软件。
可扩展性端到端(点到点)的结构,使得它比较容易扩展。
当要增加新的用户到基于SIP协议的系统中时,与其它的VoIP协议相比,需要增加的软件和硬件要少得多。
分布式的功能非集中式的智能,这样可以在每个组件中实现更多的功能。
而要修改某个组件时,对系统其余部分的影响很小。
在以太网上,两个SIP电话机可以直接互相呼叫,而不需要系统中任何其它服务模块的帮助。
当网络中有多于二个电话机时,系统中的其它模块就发挥作用了。
支持因特网基于SIP的系统,可以利用因特网不断增长的优势。
转换网关可以将基于SIP的系统连接到公众电话网(PSTN)上去,而不用被历史遗留的标准所阻碍。
与SIP兼容的协议SIP协议可以单独地工作,也可以与下面的协议一起工作。
协议缩写协议名字描述DHCPDynamic Host Configuration Protocol动态主机配置协议,帮助系统自动地配置网络IP地址。
原文地址:/intl/ja/guide/topics/connectivity/sip.html翻译:tyutNo4更新:2012.06.06Android提供了⼀个支持会话发起协议(SIP)的API,这可以让你添加基于SIP的网络电话功能到你的应用程序。
Android 包括⼀个完整的SIP协议栈和集成的呼叫管理服务,让应用轻松无需管理会话和传输层的沟通就可设置传出和传⼊的语音通话,或直接音频记录或播放。
以下类型的应用程序可能使用SIP API:视频会议。
即时消息。
* 条件和限制*以下是开发⼀个SIP应用程序的条件: * 你必须有⼀个运行Android2.3或者更高版本的移动设备。
* SIP是通过无线数据连接来运行的,所以你的设备必须有⼀个数据连接(通过移动数据服务或者Wi-Fi)。
这意味着你不能在模拟器(AVD)上进行测试,只能在⼀个物理设备上测试。
详情请参见应用程序测试(Testing SIP Applications)。
* 每⼀个参与者在应用程序的通信会话过程中必须有⼀个SIP账户。
有很多不同的SIP服务提供商提供SIP账户。
* SIP API类和接⼝*以下是Android SIP API中包含的⼀些类和⼀个接⼝(SipRegistrationListener)的概述: {|style="border-spacing:0px;margin: 4px 4px; width: 90%; border-left:1px solid #ccc;border-top:1px solid #ccc; "|-style="background:#DEE8F1; " ! style="border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px;" | 类/接⼝ ! style="border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px;" | 描述|- style=" vertical-align:top;" | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | SipAudioCall | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | 通过SIP处理网络音频电话 |- style=" vertical-align:top;" | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | SipAudioCall.Listener | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " |关于SIP电话的事件监听器,比如接受到⼀个电话(on ringing)或者呼出⼀个电话(on calling)的时候 |- style=" vertical-align:top;" | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | SipErrorCode | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | 定义在SIP活动中返回的错误代码 |- style=" vertical-align:top;" | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | SipManager | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | 为SIP任务提供APIs,比如初始化⼀个SIP连接。
提供相关SIP服务的访问。
|- style=" vertical-align:top;" | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | SipProfile | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | 定义了SIP的相关属性,包含SIP账户、域名和服务器信息 |- style=" vertical-align:top;" | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | SipProfile.Builder | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | 创建SipProfile的帮助类 |-style=" vertical-align:top;" | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | SipSession | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | 代表⼀个SIP会话,跟SIP对话框或者⼀个没有对话框的独立事务相关联 |- style=" vertical-align:top;" | style=" border-right:1px solid#ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | SipSession.Listener | style=" border-right:1px solid#ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | 关于SIP会话的事件监听器,比如注册⼀个会话(on registering)或者呼出⼀个电话(on calling)的时候 |- style=" vertical-align:top;" | style=" border-right:1px solid#ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | SipSession.State | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | 定义SIP会话的声明,比如“注册”、“呼出电话”、“打⼊电话” |- style=" vertical-align:top;" | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | SipRegistrationListener | style=" border-right:1px solid #ccc;border-bottom:1px solid #ccc; padding:5px 15px; " | ⼀个关于SIP注册事件监听器的接⼝ |}* 创建Manifest文件*如果你开发⼀个用到SIP API的应用程序,记住它需要Android2.3(API9)或者更高版本的平台的支持。
所以在你的设备上要运行Android2.3(API9)或者更高的版本,并不是所有的设备都提供SIP的支持。
为了使用SIP,需要添加以下权限到你的manifest文件: * E_SIP * android.permission.INTERNET 为了确保你的应用程序能够安装到支持SIP的设备上,你需要添加以下内容到你应用程序的manifest文件里: * . 这个设置表明你的应用程序需要Android2.3或者更高版本的平台。
详情请参考API Levels和元素相关的文档。
为了控制你的应用程序被那些不支持SIP的设备过滤掉(比如:在Google Play),你需要添加以下内容到你应用程序的manifest文件里: * . 这个设置声明了你的应用程序用到了SIP API。
这个声明还应该包含⼀个android:required 属性来表明你是否想让你的应用程序被那些不提供SIP支持的设备过滤掉。
其他声明你也可能需要,具体取决于你的实现,详情请参考元素相关的文档。
如果你的应用程序设计用来接受呼叫,那么你还必须在应用程序的manifest文件里定义⼀个接收器(BroadcastReceiver 的⼦类): * 以下是从SipDemo项目manifest文件中摘录的内容: ...... ...* 创建⼀个SipManager对象*要想使用SIP API,你的应用程序需要创建⼀个SipManager对象,这个SipManager对象在你的应用程序里负责以下内容:* 发起SIP会话 * 发起和接受呼叫 * 在SIP provider里进行注册和注销 * 验证会话的连通性你可以像下面⼀样实例化⼀个新的SipManager对象: public SipManager mSipManager = null; ... if(mSipManager == null) { mSipManager = SipManager.newInstance(this); }* 在SIP服务器上进行注册*⼀个典型的Android SIP应用中包含⼀个或多个用户,他们中的每个⼈都有⼀个SIP账户。