アスタリスクARIを使用してWebフロントエンドから実行できるアスタリスクのミュート機能を現在開発中です。ARI JSクライアントのミュートエラー
しかし、私はそれは私に次のエラーを与えるミュート機能を呼び出す/実行しようとするたび:
Error: {
"message": "Channel not in Stasis application"
}
しかし、それは限り承知していますと、この関数ではなく直接チャネルデータを渡しています、です役立たず。
ARI JSクライアントのご提案はありますか?
ミュートボタンがクリックされる
クライアント側はサーバ側にTDで見つかったデータを発します。
$(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に、クライアント側から受信し、その後停滞関数を呼び出します。
io.sockets.on('connection', function (socket) {
updateSip();
socket.on('muting', function (data) {
mute(data);
console.log("Reached listener for muting")
});
});
うっ滞機能ミュートあなただけのARIクライアントコマンドを使用してサーバ側にクライアントから渡されているチャンネルは、ユーザーがミュートされ、うっ滞アプリケーションで表示されます。
チャネルがアプリケーション内にあり、ミュート機能に渡されているため、現在動作していない方法はわかりません。
EDIT:ハングアップ/キック機能が同じ方法で処理されており、正常に動作します。以下はすべて私のデバッグです。
私はsocket.ioを介してそれを実行しようとしましたが、その結果は同じで、私は他の機能を持っていて、すべてうまく動作します。
ARIでは矛盾していません。操作では、パスではなく名前でチャネルIDが必要です。一般的には、実際には、IDはチャネルに対するより良い扱いです。なぜなら、(1)あいまいなケースでは名前を再利用することができます。 (2)IDは常に自動的に生成されますが、アプリによってIDを提供することができます。 歴史的なアスタリスクと矛盾していることに同意しますが、新しいAPI /機能ではときどき発生します。 –