A-A+

UCMA开发-SipEndPoint

2015年12月31日 技术, 默认 暂无评论 阅读 3,418 次

索引请点击这里

本文的目的在于讲解如何创建、使用SipEndPoint,为之后构建自动应答机器人做准备。

1. Constructors

名称 说明
SipEndpoint(String, SipAuthenticationProtocols, SipTransportType, String) 创建SipEndpoint的新实例。这个端点是基于服务器的。默认情况下,该平台将为TCP使用端口5060 ,为TLS使用端口5061。要使用一个在这些之外的端口,调用方应尝试注册之前设置端口属性。
SipEndpoint(String, SipAuthenticationProtocols, SipTransportType, String, Int32, Boolean, RealTimeConnectionManager, String) 创建SipEndpoint的新实例。这个端点是基于服务器的。

2. Methods

名称 说明
BeginRegister(AsyncCallback, Object) 为当前EndPoint启动异步注册操作。
BeginRegister(
IEnumerable<SignalingHeader>, AsyncCallback, Object)
为当前EndPoint启动异步注册操作
Register() 同步注册当前的EndPoint,此方法将等待,直到注册完成,不推荐在UI线程内使用
Register(IEnumerable<SignalingHeader>) 同步注册当前的EndPoint,此方法将等待,直到注册完成,不推荐在UI线程内使用
BeginUnregister 开始异步注销当前EndPoint,这个方法总是成功
Unregister 同步注销当前的EndPoint,不推荐在UI线程使用
BeginTerminate 开始终止EndPoint,并且清理活动的会话和资源。端点不再可用(继承自RealTimeEndpoint)
Terminate 终止EndPoint和清理活动的会话和资源,端点不再可用(继承自RealTimeEndpoint)

3. Properties

名称 说明
CredentialCache 获取凭证缓存
RegistrationState 获取当前EndPoint的注册状态

4. Events

名称 说明
MessageReceived 收到消息时触发(继承自RealTimeEndpoint)
SessionReceived 收到新的邀请时触发(继承自RealTimeEndpoint)

5. Example

  1. SipEndpoint sipEndPoint;
  2. try
  3. {
  4.     //strUri为EndPoint地址,必须以“sip:”开始
  5.     sipEndPoint = new SipEndpoint(strUri,
  6.                     SipAuthenticationProtocols.None,
  7.                     SipTransportType.Tls,
  8.                     _strServerName,
  9.                     5061,
  10.                     true,
  11.                     _connectionManager,
  12.                     null);
  13.     sipEndPoint.CredentialCache.Add(
  14.         SipEndpoint.DefaultRtcRealm,
  15.         CredentialCache.DefaultNetworkCredentials);
  16. }
  17. catch (Exception ex)
  18. {
  19.     throw ex;
  20. }
  21. //创建信号头
  22. List<SignalingHeader> headers = new List<SignalingHeader>();
  23. headers.Add(SignalingHeader.MicrosoftSupportedForking);
  24. //如果是未注册状态则注册
  25. if (sipEndpoint.RegistrationState == RegistrationState.Unregistered)
  26. {
  27.     sipEndpoint.Register(headers);
  28. }

给我留言

Copyright © 字痕随行 保留所有权利.   Theme  Ality

用户登录

分享到: