私はtwilio-csharp ヘルパー ライブラリを使用しています。Twilio 番号があり、誰かがその番号に電話をかけたときに、複数の電話または Twilio クライアント エンドポイントなどのエンドポイントといくつかの電話番号に同時に電話をかけたいと考えています。これを達成するための最良の方法は何ですか?
1 に答える
この機能のワークフローは次のようになります。発信者が Twilio 電話番号に電話をかけ、Twilio がその電話番号に関連付けられた音声リクエスト URL を検索し、Twilio がその URL でリソースに TwiML リクエストを送信し、リソースが TwiML で応答して、Twilio に<Dial>
アウトを指示します。 Twilio が複数の電話番号に発信すると、その電話番号に発信し、発信者を最初に応答した人物に接続します。<Dial>
同時に番号を付けた場合、最初の電話が応答すると、残りの通話はキャンセルされることに注意してください。
<Dial>
twilio-csharp ライブラリ を使用して複数の電話番号に同時に電話をかける方法はいくつかあります。同時に行う最初の方法<Dial>
は、メソッドを使用するDialNumbers
ことです。名前が示すように、DialNumbers
電話番号のみをダイヤルし、文字列の配列のみを受け取ります。
同時に<Dial>
番号を付ける2 番目の方法は、Twilio.TwiML.TwilioResponse.Dial(params, Twilio.TwiML.IDialNoun[] dialTargets)
メソッドを使用することです。この方法を使用する利点の 1 つは、電話番号、sip アドレス、または Twilio クライアント インスタンスを呼び出すことができることです。action URL
、timeout
制限、またはその他のダイヤル属性を設定して、コール属性を変更することもできます。使用例を次に示します。
public ActionResult SimulDial()
{
var response = new TwilioResponse();
var dialAttributes = new { timeout = 10 };
var dialTargets = new IDialNoun[]
{
new Number("8021111111"),
new Number("8022222222"),
new Client("clientName")
};
response.Dial(dialAttributes, dialTargets);
return TwiML(response);
}
Twilio がこの TwiML を受信すると、Twilio は指定された 3 つのエンドポイント (2 つの番号と 1 つのクライアント) にダイヤルアウトします。10 秒以内に誰も応答しない場合、すべてのダイヤルがキャンセルされます。