论坛风格切换切换到宽版
  • 1139阅读
  • 3回复

[求助]ami  主叫被叫显示同号  ami如何创建会议室 [复制链接]

上一主题 下一主题
离线申缘
 

只看楼主 倒序阅读 使用道具 楼主  发表于: 2016-12-13
        问题1:  主叫被叫显示同号。如何让主叫分机显示被叫分机号码,被叫分机显示主叫分机号码?
        问题2:  如何使用ami管理接口会议室',this.id)" style="cursor:pointer;border-bottom: 1px solid #FA891B;" id="rlt_2">创建会议室,并邀请其他用户加入到会议室当中?

        各位Asterisk-help好友大家好,最近在学习ami管理接口,目前遇到两个棘手的问题,想请教一下:
问题1:主叫被叫显示同号。如何让主叫分机显示被叫分机号码,被叫分机显示主叫分机号码?
部分代码如下:
          originateAction = new OriginateAction();
          originateAction.setChannel("SIP/1001");                        //呼叫连接通道,呼叫时,先呼通自己   主叫用户
          originateAction.setContext("internal");                        //设置路由器
          originateAction.setPriority(new Integer(1));        //设置优先级
          originateAction.setExten("1002");                                //被呼叫号码,  被叫
          originateAction.setTimeout(new Long(30000));        //设置呼叫等待时间

          originateAction.setCallerId("1234");                        //呼叫号码
呼叫结果:
          由于不能插入图片,我就只能文字描述了。
          主叫1001先被呼叫,接通之后,呼叫1002分机。但是主叫和被叫都显示来电号码为1234
代码修改:
          鉴于 originateAction.setCallerId("1234");   这段代码是用来显示被叫号码,但是将主叫和被叫统统显示为1234同一个号码,实际应用肯定不行。
          将此代码屏蔽之后再编译运行。
          结果主叫显示“Anonymous”号码, 被叫显示“Asterisk”号码

          想请教各位一下,如何设置让其主叫分机显示被叫分机号码,被叫分机显示主叫分机号码????

问题2:如何使用ami管理接口创建会议室,并邀请其他用户加入到会议室呢?
         我在看了ami管理接口之后有个疑问想请教一下:
         Originate接口可以实现电话呼叫。
         Confbridge系列的接口可以实现会议管理,
         那么创建一个会议室,邀请其他用户加入到会议室这些最基本操作在哪个接口?

        非常期待您的解惑,感激不尽!!






评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
欢迎来到“Asterisk资源分享-互助学习社区”——-Asterisk工程师的家园
请记住我们的网址 www.Asterisk-help.com [这是默认签名,更换签名点这里<<]
离线Asterisk

只看该作者 沙发  发表于: 2016-12-13
1:originateAction.setCallerId("1234");  这里肯定没有问题!你代人到dialplan流程中不知是怎样的!
你可以设置一个变量代人到流程中,当1001接通后呼叫1002之前设置一下主叫号,而这个主叫号是那个变量代人进来就OK了!不知道我的意思表达清楚没有?
2:会议室这个两三句是说不清楚的,熟练dialpan 会议室怎样用,并且结合originate来实现。
例如originate发起一个呼叫给1002,1002接通后就会到你指定的context  流程,而这个context  流程正是创建会议室的流程。大概思想是这样的
商城》》http://url.cn/BRR04s  此签名档文字广告位出售
离线申缘

只看该作者 板凳  发表于: 2016-12-14
回 Asterisk 的帖子
Asterisk:1:originateAction.setCallerId("1234");  这里肯定没有问题!你代人到dialplan流程中不知是怎样的!
你可以设置一个变量代人到流程中,当1001接通后呼叫1002之前设置一下主叫号,而这个主叫 .. (2016-12-13 18:32) 


  ok,非常感谢“Asterisk”的回复。这样一指点,最起码有了思路,知道如何去做。再一次感谢你的回复,祝好!!
欢迎来到“Asterisk资源分享-互助学习社区”——-Asterisk工程师的家园
请记住我们的网址 www.Asterisk-help.com [这是默认签名,更换签名点这里<<]
离线申缘

只看该作者 地板  发表于: 2016-12-14
问题2:如何使用ami管理接口创建会议室,并邀请其他用户加入到会议室呢?

        自己解决了使用ami管理接口创建会议室,用户可以主动申请加入到会议室当中。但是没有解决系统如何申请用户加入到会议室当中,还需高人指点,谢谢!!
        先将代码贴出来。

参考资料:http://stackoverflow.com/questions/16539295/can-i-create-a-new-conference-room-asterisk-confbridge-through-ami

代码功能,1001和1002分别主动申请加入到会议室1234中。启动ami server,登录之后,
分别执行下面两组命令:
----------------------------------
Action: Originate
ActionID: 1234
context: internal
Channel: SIP/1001        //将1001分机加入到会议室中
Timeout: 30000
CallerID: ConferenceRoom   //显示号码
Application: ConfBridge       //执行app,
Data: 1234                       //会议室号码为1234
Async: true

Action: Originate
ActionID: 1233
context: internal
Channel: SIP/1002      //将1002分机加入到会议室中
Timeout: 30000
CallerID: ConferenceRoom
Application: ConfBridge
Data: 1234
Async: true
----------------------------------
本帖提到的人: @Asterisk
欢迎来到“Asterisk资源分享-互助学习社区”——-Asterisk工程师的家园
请记住我们的网址 www.Asterisk-help.com [这是默认签名,更换签名点这里<<]
快速回复
限100 字节
>> 支持Asterisk-help社区, 谢绝无意义字符回复
批量上传需要先选择文件,再选择上传
 
上一个 下一个