public final class SipSession
extends Object
java.lang.Object | |
↳ | android.net.sip.SipSession |
表示与SIP对话相关联的SIP会话或不在对话内的独立事务。
你可以得到一个 SipSession
从 SipManager
与 createSipSession()
(发起呼叫时)或 getSessionFor()
(接听电话时)。
Nested classes |
|
---|---|
class |
SipSession.Listener 监听器用于与SIP会话相关的事件,例如会话正在注册(“正在注册”)或正在呼出(“正在呼叫”)时。 |
class |
SipSession.State 定义SIP会话状态,如“注册”,“拨出电话”和“通话中”。 |
Public methods |
|
---|---|
void |
answerCall(String sessionDescription, int timeout) 用指定的会话描述解答来电。 |
void |
changeCall(String sessionDescription, int timeout) 在通话过程中更改会话描述。 |
void |
endCall() 结束已建立的呼叫,结束呼出或拒绝来电。 |
String |
getCallId() 获取会话的呼叫标识。 |
String |
getLocalIp() 获取运行此SIP会话的本地主机的IP地址。 |
SipProfile |
getLocalProfile() 获取此会话与之关联的SIP配置文件。 |
SipProfile |
getPeerProfile() 获取此会话连接到的SIP配置文件。 |
int |
getState() 获取会话状态。 |
boolean |
isInCall() 检查会话是否在通话中。 |
void |
makeCall(SipProfile callee, String sessionDescription, int timeout) 发起对指定配置文件的呼叫。 |
void |
register(int duration) 执行注册到由关联的本地配置文件指定的服务器。 |
void |
setListener(SipSession.Listener listener) 将侦听器设置为侦听会话事件。 |
void |
unregister() 对相关本地配置文件指定的服务器执行注销。 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
void answerCall (String sessionDescription, int timeout)
用指定的会话描述解答来电。 该方法仅在会话状态为INCOMING_CALL
时才有效。
Parameters | |
---|---|
sessionDescription |
String : the session description to answer this call |
timeout |
int : the session will be timed out if the call is not established within timeout seconds. Default value (defined by SIP protocol) is used if timeout is zero or negative. |
void changeCall (String sessionDescription, int timeout)
在通话过程中更改会话描述。 该方法仅在会话状态为IN_CALL
时才有效。
Parameters | |
---|---|
sessionDescription |
String : the new session description |
timeout |
int : the session will be timed out if the call is not established within timeout seconds. Default value (defined by SIP protocol) is used if timeout is zero or negative. |
void endCall ()
结束已建立的呼叫,结束呼出或拒绝来电。 该方法仅当有效的会话状态是在调用IN_CALL
, INCOMING_CALL
, OUTGOING_CALL
或者OUTGOING_CALL_RING_BACK
。
String getLocalIp ()
获取运行此SIP会话的本地主机的IP地址。
Returns | |
---|---|
String |
the IP address of the local host |
SipProfile getLocalProfile ()
获取此会话与之关联的SIP配置文件。
Returns | |
---|---|
SipProfile |
the SIP profile that this session is associated with |
SipProfile getPeerProfile ()
获取此会话连接到的SIP配置文件。 仅当会话与SIP对话框关联时才可用。
Returns | |
---|---|
SipProfile |
the SIP profile that this session is connected to |
int getState ()
获取会话状态。 返回的值必须是SipSession.State
中的SipSession.State
州。
Returns | |
---|---|
int |
the session state |
boolean isInCall ()
检查会话是否在通话中。
Returns | |
---|---|
boolean |
true if the session is in a call |
void makeCall (SipProfile callee, String sessionDescription, int timeout)
发起对指定配置文件的呼叫。 会话监听器在定义的会话事件后被回调。 该方法只有在会话状态为READY_TO_CALL
时才有效。
Parameters | |
---|---|
callee |
SipProfile : the SIP profile to make the call to |
sessionDescription |
String : the session description of this call |
timeout |
int : the session will be timed out if the call is not established within timeout seconds. Default value (defined by SIP protocol) is used if timeout is zero or negative. |
也可以看看:
void register (int duration)
执行注册到由关联的本地配置文件指定的服务器。 会话侦听器在注册成功或失败时被回调。 该方法只有在会话状态为READY_TO_CALL
时才有效。
Parameters | |
---|---|
duration |
int : duration in second before the registration expires |
也可以看看:
void setListener (SipSession.Listener listener)
将侦听器设置为侦听会话事件。 一个SipSession
一次只能容纳一个听众。 随后对此方法的调用将覆盖先前的侦听器。
Parameters | |
---|---|
listener |
SipSession.Listener : to listen to the session events of this object |
void unregister ()
对相关本地配置文件指定的服务器执行注销。 注销在技术上与零注册期限的注册相同。 会话监听器在注销成功或失败时被回叫。 该方法只有在会话状态为READY_TO_CALL
时才有效。
也可以看看: