【发布时间】:2012-03-14 13:51:57
【问题描述】:
我遇到了 RTC 中的配置文件漫游问题。所以让我描述一下我的程序以便更好地理解它。
我基于 sip 协议编写软电话,为了使用 Sip,我决定使用 RTC 库进行通信。这款软电话完美地完成了这些功能,例如保持、重定向、接听、挂断等。我使用 C# 和 Interop.RTCCORELib dll 进行 RTC。在将这款手机与任何类型的 PBX 服务器(如星号、星号窗口和 Elestisk)一起使用太多时间后,我的软电话遇到了神秘的问题。
问题:
当操作员登录并使用电话时,我创建IRTCProfile2 Propety 以在服务器上注册此配置文件。接线员用电话完成他/她的工作后,接线员关闭电话。在这一刻,我运行方法来禁用服务器上的配置文件。我检查了个人资料,个人资料状态更改为“未注册”。 但是 sip 用户仍然在服务器上登录。我检查了 msdn 并找到了这个article。
在这篇文章中描述了如何在服务器上禁用配置文件。我也这样做。这是我的代码:
public void unregisterProfile()
{
if (_rtcProvisioning.Profiles.Count > 0 &&
((IRTCProfile)_rtcProvisioning.Profiles[1]).State == RTC_REGISTRATION_STATE.RTCRS_REGISTERED)
{
_rtcProvisioning.DisableProfile(_rtcProfile);
_rtcPresence.DisablePresence();
_rtcClient.PrepareForShutdown();
Thread.Sleep(2000);
_rtcClient.Shutdown();
}
}
在这篇文章中还说调用IRTCClientPresence2.DisablePresence 方法。
那么有什么解决办法吗?有小费吗?我错过了什么吗?
【问题讨论】: