首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从刚刚发出的电话中获得UniqueId和频道名称?

如何从刚刚发出的电话中获得UniqueId和频道名称?
EN

Stack Overflow用户
提问于 2014-03-06 13:29:40
回答 2查看 2.3K关注 0票数 1

我正在尝试从一个旧版本的AsterNet升级到最新版本的Asterisk.Net。我们过去常常用AsteriskManager.OriginateCall()发起调用,后者返回一个Call对象。这个调用对象有一个UniqueId和ChannelName。

现在,我用SendAction()发起调用,并向它发送一个OriginateAction。所以我的第一个问题是:这是正确的方法吗?因为在我得到的结果中,UniqueId是空的,而且它没有ChannelName。我认为通道名可能在属性中,但属性也是空的。

那么,我如何获得我刚刚发起的电话的频道名称和唯一标识?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-21 15:46:35

下面是我所做的工作:我创建了一个OriginateAction。在OriginateAction中,我将Asynch设置为true。然后,我用带超时的SendEventGeneratingAction()发送了它。我检查我得到的ResponseEvents不是null,responseEvents.Events.Count > 0,responseEvents.Events是OriginateResponseEvent。然后,responseEvents.Events得到了我需要的所有信息。

票数 3
EN

Stack Overflow用户

发布于 2014-03-07 12:42:25

请查阅行动起源页面。也可以检查你库的源代码。

触发启动后,您将得到事件OriginateResponse,其中包含actoion id信息。在此之后,它将产生更多的事件(取决于版本),这将提供更多基于actionid的信息。

其他解决方案是发送一些变量,然后在拨号播放UserEvent命令中使用它返回所需的所有信息。

PS。在星号中创建没有经验的拨号核心是非常糟糕的想法,因为它会在负载下产生问题。使用已经写好的核心或聘请专家。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22225998

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档