如果你通过UCMA程序和别人在同一个会话里同时使用了IM和语音,说不定有时候会遇见以下异常:
Microsoft.Rtc.Signaling.OperationFailureException: Application must register for ConversationChanged event when a call is moved to a derived conversation.
尤其是当你想要在只有IM或者应用共享的会话里增加语音选项时异常总会发生,远端会重定向语音给一个PSTN通话。也许是因为对方没有耳麦设备,或者是使用了无线设备导致通话质量太差,也可能他根本不能进行语音聊天。
这里发生的就是会话里的语音通话被通过Mediation服务器路由给了PSTN,而不是目标用户。这样语音呼叫就被从原始会话里剥离出来到了一个新的,称为derived conversation的会话里,并且这个会话有独立的ID。你可以看一下这时候的原始Conversation对象,是没有AudioVideoCall的,或者你可能看见多了一个PSTN与会者。你没有办法控制这个语音通话。基本上,UCMA为了保护你会要求你绑定一个事件Call.ConversationChanged。
如果当derived conversation被创建时你希望收到通知,可以像这样订阅ConversationChanged事件:
avCall.ConversationChanged += new EventHandler<ConversationChangedEventArgs>(OnAvCallConversationChanged);
我希望它能把详细信息输出到控制台,所以我这样:
void OnAvCallConversationChanged(object sender, ConversationChangedEventArgs e) { Console.WriteLine("Call moved to derived conversation! Old ID: {0}. New ID: {1}. Reason: {2}.", e.PreviousConversation.Id, e.NewConversation.Id, e.Reason); }
这样异常就被控制了。
相关推荐
在MySQL数据库操作中,"Every derived table must have its own alias" 是一个常见的错误提示,意味着在你的SQL查询语句中,使用了派生表(也称为子查询)但没有为它们分配唯一的别名。这个错误通常发生在试图从子...
derivedclass.layout
某绿色三角校徽,大二下,c++,课后作业。没差的话一积分搞下来,错了找我!欢迎私聊。其他作业可以看我的上传资源。收积分单纯为了替大伙查看高分资源再低价转出,请多多支持!
GNSS Logger 是谷歌公司于2019年开发的一款可以提取手机端GNSS原始观测数据的软件,而derived文件是从手机端将数据导出后导入电脑端软件处理后获得的(详情看软件说明书),它相当于rinex版本的观测数据文件,但内容...
在C++编程语言中,继承(Inheritance)是面向对象编程的一个核心概念,它允许一个类(称为子类或派生类)从另一个类(称为基类或父类)继承特性。这种特性使得代码重用变得简单,同时也能实现多态性。"inheritance--...
通过大量的实验数据对比分析,研究者证明了他们的方法与主观视觉评估之间存在非常高的相关性(相关系数r=0.9)。这意味着该方法能够在很大程度上反映出人眼对图像质量的真实感知,从而为图像质量评估提供了一种可靠...
"derived.zip"中的内容似乎聚焦于SIP(Soft Input Panel,软输入面板)的开发,这是一个与Windows操作系统紧密相关的技术,用于在没有物理键盘的设备上提供文本输入功能。下面,我们将深入探讨SIP开发以及它在...
通过对健康医美相关的专业调研报告的分析,我们可以总结出以下几个重要的知识点: 1. celular culture-derived vaccine viruses:报告中提到使用certified cell line(如MDCK 33016 PF)来isolating和propagating人...
《utils-apl-derived-core-0.2.11.zip与nan21.dnet.modules_oss.i18n.zip:开源项目中的语言包解析》 在IT行业中,开源项目扮演着至关重要的角色,它们推动技术创新,促进社区协作,并为全球开发者提供了丰富的资源...
用法import 'package:derived_colors/derived_colors.dart' ;final color = Color ( 0xFFFF0000 );final light = color.variants.light;final dark = color.variants.dark;final invert = color.variants.invert;...
有研究表明,脑源性神经营养因子(Brain-derived Neurotrophic Factor,简称BDNF)在FM的病理生理过程中起着重要作用。患者体内BDNF的血液和脑脊液水平发生变化,这暗示了BDNF可能与FM的发病有关。 方法:本研究是...
在MySQL数据库操作中,"Every derived table must have its own alias"是一个常见的错误提示,它意味着在你的SQL查询语句中,所有的子查询结果(也称为派生表)都需要被赋予一个唯一的别名。这个错误通常发生在多表...
定义一个基类BaseClass,从它派生出类DerivedClass。BaseClass有成员函数fn1(),fn2(),DerivedClass也有成员函数fn1(),fn2()。在主函数中声明一个DerivedClass的对象,分别用DerivedClass的对象以及BaseClass和...
derived-unique-token-per-transaction - APT”这一主题,深入探讨工控安全、数据泄露、勒索软件、大数据以及高级持续性威胁(APT)等关键知识点,同时也会提及安全集成、企业安全策略以及零信任模型等相关概念。...
以上是对"Plant derived nanoparticles and their biotechnological applications"的详细阐述,涵盖了植物源纳米颗粒的合成、表征及其在生物技术中的多样应用。这些研究进展不仅体现了绿色化学的理念,也为可持续...
在这个场景中,我们看到有三个类:Base类、Derived类和testData类,它们将被用作测试包和访问权限控制符的应用。 首先,让我们深入理解Java中的包。包是一种命名空间,可以包含类、接口和其他包。例如,`java.util`...
MySQL中的派生表(Derived Table)是一种在SELECT语句中嵌套使用SELECT子查询的方式,它在查询过程中创建一个临时的、内部的工作表,用于进一步处理。派生表的使用可以简化复杂的查询逻辑,尤其在需要对数据进行...
【健康医美相关的专业调研报告】中提到了多个与医疗、医药及美容产业相关的主题,尤其是手术机器人、生物制造、罕见皮肤疾病、高血压以及中国大健康产业的发展和医保药物的使用。这些领域在近年来都取得了显著的进步...