フェイルオーバーでSMSを送信する

この例では、SMSの送信にフェイルオーバーできるSMSを送信します。

ワークフロー・オブジェクトの中で、メッセージ・オブジェクトは、ユースケースに適するように、どのような順序でも配置することができます。各メッセージ・オブジェクトにはフェイルオーバー・オブジェクトが含まれていなければなりませんが、最後のメッセージは例外です。

例

以下の変数が、便利な方法で必要な値に設定されていることを確認してください:

キー説明
VONAGE_APPLICATION_ID

The Vonage Application ID.

FROM_NUMBER

Replace with number you are sending from. E.g. 447700900002

TO_NUMBER_1

The phone number you are sending the SMS to.

TO_NUMBER_2

The phone number of the second phone. In this example, the workflow will failover to this number if the first message is not read in 60 seconds.

注: 先頭の + または 00 電話番号を入力する場合は、447700900000のように国番号から入力してください。

前提条件

申込書をお持ちでない場合は、ひとつ作る 。ウェブフックの設定 もご確認ください。

コードを書く

send-sms-with-failover.sh に以下を追加する:

curl -X POST https://api.nexmo.com/v0.1/dispatch \
  -H 'Authorization: Bearer '$JWT\
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -d $'{
    "template":"failover",
    "workflow": [
      {
        "from": { "type": "sms", "number": '$FROM_NUMBER' },
        "to": { "type": "sms", "number": '$TO_NUMBER_1' },
        "message": {
          "content": {
            "type": "text",
            "text": "Dispatch API: Message 1"
          }
        },
        "failover":{
          "expiry_time": 60,
          "condition_status": "read"
        }
      },
      {
        "from": {"type": "sms", "number": '$FROM_NUMBER'},
        "to": { "type": "sms", "number": '$TO_NUMBER_2'},
        "message": {
          "content": {
            "type": "text",
            "text": "Dispatch API: Message 2"
          }
        }
      }
    ]
  }'

全文を見る

コードを実行する

このファイルをあなたのマシンに保存し、実行する:

bash send-sms-with-failover.sh

試してみる

コードを実行すると、電話機1にSMSを送信しようとします。これが失敗すると、SMSで携帯電話2にメッセージが送信されます。

注: このコード・スニペットが正しく機能するかどうかは、基盤となるネットワークが提供するサポートに依存する。例えば、配送や読み取り受信の可用性などである。