A2P 10DLC Campaign Vetting Delays: Twilio cannot approve 10DLC Campaigns ourselves, and must rely on third parties who control our connections to carriers to sign off. These external processes are creating several week delays for our customers. We continue to escalate these issues and are working to reduce delays wherever possible. Further details will be shared in the Campaign Vetting Changes article as they become available.

Flexコールを着信したときにブラウザで着信音を鳴らす方法

本記事はオリジナルのヘルプ記事を翻訳したものになります。

Flexにて着信コールを受けた際、ブラウザで着信音を鳴らす最も良い方法は、reservationCreated eventを検知(Listen)し、オーディオを再生させる方法です。プラグインコードは以下のようになります。

let alertSound = new Audio("https://mysite.com/sounds/alert.mp3");
alertSound.loop = true;

const resStatus = ["accepted","canceled","rejected","rescinded","timeout"];

manager.workerClient.on("reservationCreated", function(reservation) {
  if (
reservation.task.taskChannelUniqueName === "voice" &&
reservation.task.attributes.direction === "inbound"
) {
alertSound.play();
} resStatus.forEach((e) => { reservation.on(e, () => { alertSound.pause() }); }); });

上記コードは、着信コールがFlex上でWokerに受電許可され応答されるまで、オーディオファイル※をリピートで再生します。(※: 本例ではalert.mp3)

このコードを実行するには、まず1行目用のオーディオファイルを用意し、またファイルのURLを書き換え後、コードをinit()関数に追加して下さい。ホストされたFlex Instanceへのコード追加については、こちらをご覧ください: Creating Plugins for Twilio Flex.

注意: オーディオファイルはTwilioのプロキシサーバからアクセス可能な必要があります。デスクトップ上のローカルファイルではこれらのメソッドは挙動しません。Twilio Assetsへオーディオファイルをアップロードしご利用頂くことも可能です。

ブラウザがどのオーディオデバイスを使っているか調べる方法

MediaDevices インターフェースのenumerateDevices()を利用することで、利用可能なオーディオ出力デバイス一覧をリクエストする事が可能です。

navigator.mediaDevices.enumerateDevices();

希望のデバイスIDを特定したら、HTMLMediaElement.setSinkId()により値を渡してください。

注意: これらのメソッドはChrome 49+ および Edge17+に対応しています。現時点では、その他のブラウザでの動作を保証するものではありません。

Have more questions? Submit a request
Powered by Zendesk