首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ARI JS客户端静音错误

ARI JS客户端静音错误
EN

Stack Overflow用户
提问于 2015-10-19 09:32:35
回答 1查看 501关注 0票数 7

目前正在为星号开发一个静音功能,我可以使用asterisk ARI从我的web前端运行它。

但是,每次我尝试运行/调用静音函数时,它都会给出以下错误:

代码语言:javascript
复制
Error: {
  "message": "Channel not in Stasis application"
}

但据我所知,它是直接将信道数据传递给这个函数,但没有用。

是否有任何建议或习惯于与ARI客户端合作?

客户端

单击静音按钮时,将td中找到的数据发送到服务器端。

代码语言:javascript
复制
   $(document).on('click', '.mute', function () {
        var mute = $(this).closest('td').siblings(':first-child').text();
        socket.emit('muting', mute);
        if ($(this).hasClass('mute')) {
            $(this).removeClass('mute').addClass('unmute').find('span').text('Unmute');
        } else {
            console.log("Error");
        }
    });

服务器端

将从客户端接收的数据存储到var中,然后调用stasis函数。

代码语言:javascript
复制
    io.sockets.on('connection', function (socket) {
    updateSip();
    socket.on('muting', function (data) {
        mute(data);
        console.log("Reached listener for muting")
    });
});

瘀证功能

使用ARI客户端命令静音您刚刚从客户端传递到服务器端的通道,用户将被静音,并将显示在停滞应用程序中。

代码语言:javascript
复制
function mute(mutval) {
    console.log("Muting:" + mutval);
    client.channels.mute
    ({
        channelId : mutval
    },
        function (err) {
        if (err) {
            throw err;
        }
    });

}

通道在应用程序中,并被传递到静音函数中,因此不确定其当前不工作的方式。

编辑:我有一个挂断/踢的功能被以同样的方式处理,它工作的很好。下面是我所有的调试。

信道转储

免费PBX日志

星号CLI调试级别5

Socket.io错误

我也尝试过通过socket.io运行它,没有它,结果是一样的,我还有其他函数,它们都工作得很好,这只是静音函数。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-27 17:21:34

结果表明,它不会运行,因为它需要通道ID而不是通道名称,但是函数将使用通道名称运行。

它与星号ARI不一致,因为它应该使用通道名称,而不仅仅是像其他函数那样的通道ID,比如挂断和起始函数。

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

https://stackoverflow.com/questions/33211069

复制
相关文章

相似问题

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