入力ワークフローアクティビティ

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:4分
  • 入力アクティビティでは、Notify コールにオプションのリストを提示することによって、電話メニューを作成します。

    Input Variables (入力変数)

    アクティビティの初期動作が、入力変数によって決まります。

    表 : 1. 入力変数
    変数 説明
    桁数 発信者が入力できる最大桁数を指定します。発信者は最大数よりも小さい桁数を入力し、[終了] キーを押してエントリを完了します。
    終了キー メニュー オプションの選択が終了したら、発信者が電話で押すことができるキーを指定します。
    タイムアウト (秒) 発信者がメニューオプションを選択していない場合に、自動的にメニューを閉じるまでに待機する時間を指定します。
    詳細 アクティビティ条件を使用する代わりに、スクリプトを使用して電話メニューを作成するには、このチェック ボックスをオンにします。
    スクリプト 電話メニューを作成するためのスクリプトを定義します。スクリプトは、次の形式で JavaScript オブジェクトとして answer 変数を返す必要があります。
     answer = {
      “1": {
          “play”: “https://some_url.com/options/one.mp3“,
          “myCustomData”: “some data here”
      },
      “2”: {
          “play”: “https://some_url.com/options/two.mp3”,
          “myCustomData”: “some other data here”
      },
    “3”: {
          “speak”: “type 3 to speak to a representative”,
          “language”: “en-US”,
          “myCustomData”: “some more data here”
      }
    };

    スクリプトは、speak 属性を使用してテキスト読み上げ文字列と言語コードを指定するか、play 属性を使用して再生する音楽の URL を指定することができます。上記の例の myCustomData のようにオプションの属性を追加して、関連する情報を保存することもできます。

    注:
    スクリプトオブジェクトは、下位互換性のために say 属性を引き続きサポートします。

    条件

    条件によって、このアクティビティの後に来る移行が決定されます。

    入力アクティビティでは、デフォルトで条件が指定されていません。電話メニューを作成する条件を定義する必要があります。各条件は、電話メニュー上のオプションの 1 つになります。通知では、条件ごとに最大 100 文字まで、各条件の 名前から発信者までテキストを読み取ります。

    メッセージの先頭に xx-XX:<メッセージ> の形式で言語コードをプレフィックスとして付けることで、各条件の言語を指定することができます。たとえば、フランス語 (カナダ) の場合「fr-CA:」を付けます。利用可能な言語は、通知言語 [notify_language] テーブルに格納されています。

    アクティビティが移行する条件は、発信者が入力した数字に依存します。parseInt(workflow.scratchpad.digits) == <想定される数字> に、条件 [条件] 値を設定します。たとえば、発信者が番号「3」を押したときの条件で移行するには、[条件]parseInt(workflow.scratchpad.digits) == 3 を設定します。

    このアクティビティには、エラー条件を追加することができます。詳細スクリプトが無効な値を返した場合、または条件のテキスト読み上げが空の場合、アクティビティはエラー条件で移行します。

    スクラッチパッドエントリー

    このアクティビティでは、ワークフロー スクラッチパッドを使用して永続的な値の書き込みを行います。

    表 : 2. スクラッチパッドに書き込まれた値
    エントリ 説明
    workflow.scratchpad.digits 文字列として発信者によって入力された数字。
    workflow.scratchpad.menu<アクティビティ名> 詳細スクリプトオプションを使用している場合の、完全な answer 変数。このアクティビティが正常に実行されると、このメニューに他のアクティビティからアクセスすることができます。
    たとえば、アクティビティ名が choice の場合、以下を使用してメニューから値にアクセスできます。
    var previousActivity = "choices";
    var choicesMenu = workflow.scratchpad.menu[previousActivity];
    var menuItem = choicesMenu[workflow.scratchpad.digits];  // Selects the menu item based on the caller's input.
    var selectedValue = menuItem.myCustomData; //get the custom data for the selected menu item.