Web API リファレンス|Tropo Web API

{"result":} オブジェクト

   

Tropo Web APIでは、いつでもリクエストを返すことができます。以下に通話フローを例示します。

  • ユーザーがTropo WebAPIのアプリケーションに電話をかけます。
  • TropoがsessionJSONを指定されたウェブサーバーに送り、命令を要求します。
  • ウェブサーバーのアプリケーションがJSONに応答し、Tropoにcallerに対して質問をするように要求します。
  • Tropoが質問をし、ユーザーが応答します。
  • Tropoは、ユーザーの応答と一緒にresult JSONをウェブサーバーに返します。
 

パラメータ

actions
データの種類:Array型またはObject型 デフォルト:なし 任意
actionsには、Array型またはObject型のどちらかが含まれ、actionsの結果はaskやrecordのような前のペイロード(データ本体)を要求します。 複数の入力が要求された場合、このフィールドはArray型になり、単一の入力しか要求されなかった場合にはObject型になります。 下記のキーを含みます。  
  • 「name」[String型] - 要求の結果として、このアクションに提供された名前です。
  • 「attempts」[Integer型] - 結果を得るために試みる回数のことです。
  • 「disposition」 [String型] - 要求の最終的な結果です。値には、SUCCESS、FAILED、EXTERNAL_EVENT、TIMEOUT、BUSY、REJECTEDがあります。
  • 「confidence」 [Integer型] - 結果が正しいと信頼度エンジンから返ってくる結果です。
  • 「interpretation」 [String型] - 発言した内容だと認識しているものです。
  • 「value」 [String型] - これがグラマの結果です。
  • 「concept」[String型] - シンプルグラマ認識の結果です。
  • 「xml」 [String型] - 未加工のNLSML出力を含みます
  • Object型の場合
"actions": { "name": "account_number", "attempts": 1, "disposition": "SUCCESS", "confidence": 100, "interpretation": "12345", "utterance": "1 2 3 4 5", "concept": "12345" }
  • Array型の場合
"actions": [{ "name": "account_number", "attempts": 1, "disposition": "SUCCESS", "confidence": 100, "interpretation": "12345", "utterance": "1 2 3 4 5", "concept": "12345" }, { "name": "pin", "attempts": 1, "disposition": "SUCCESS", "confidence": 100, "interpretation": "9876", "utterance": "9 8 7 6", "concept": "9876" }]
callId
データの種類:String型 デフォルト:なし 任意
通話のIDです。callerIDでもcalledIDでもありません。これは実際の通話を識別する値です。
required
データの種類:Boolean型 デフォルト:true 任意
これにより、Tropoが次の動詞に移動すべきかどうかを決めます。もし、要求が「true」と設定されて、 現在の作業が完全に成功していれば、Tropoは次の動詞に移動します。
calledID
データの種類:String型 デフォルト:なし 任意
発信通話(callでもtransferでも)において、このcalledIDは通話を受ける側の番号が設定されます。 同時に複数の電話番号に電話をかける場合、calledIDは応答した電話番号を表示します。
complete
データの種類:Boolean型 デフォルト:なし 任意
これは全ての必須フィールドが埋められたかどうかを示します。
error
データの種類:String型 デフォルト:なし 任意
resultの状態がerrorである場合には、エラーメッセージがないかどうか、このフィールドを参照してください。
sequence
データの種類:Integer型 デフォルト:0 任意
お使いのアプリケーションから戻ってきたTropoのペイロードの数を表わします。 たとえば、お使いのアプリケーションが1つのセッションペイロードを受け取り、 askのようにTropoにペイロードを戻す場合、このシーケンスは1です。 それからTropoから結果を受け取り、sayを返すと、このシーケンスが2です。
duration
データの種類:Integer型 デフォルト:0 任意
transferにしか設定できません。通話の転送の合計時間のことで、通話に応答されるまでの呼び出し時間も含まれ、秒単位で表わされます。
connectedDuration
データの種類:Integer型 デフォルト:0 任意
transferにしか設定できません。宛先の通信局が応答してから開始される、転送通話の期間のことで秒単位で表わされます。
sessionDuration
データの種類:Integer型 デフォルト:0 任意
現在のセッションが実行されてからの総時間のことで、秒単位で表わされます。
sessionId
データの種類:String型 デフォルト:なし 任意
これは各セッションとresultペイロードに使用可能な固有の識別子です。
state
データの種類:String型 デフォルト:なし 任意
resultが生成されたときの、セッションの状態を表わします。 値には、ANSWERED、DISCONNECTED、FAILEDがあります。
 

インバウンドのaskに対するJSONのresultの例

{
   "result":{
      "sessionId":"f4140488a0036e725e112f4c74c12345",
      "callId":"9a9cd46c961fc631068557eb7b812345",
      "userType":"NONE",
      "state":"ANSWERED",
      "sessionDuration":6,
      "sequence":1,
      "complete":true,
      "error":null,
      "calledid":"0901234XXXX",
      "actions":{
         "name":"color",
         "attempts":1,
         "disposition":"SUCCESS",
         "confidence":46,
         "interpretation":"blue",
         "utterance":"blue",
         "concept":"blue",
         "value":"blue",
         "xml":"<?xml version=\\\\"         1.0         \\\\"?>\\\\r\\\\n<result
         grammar=\\\\"0@dde9c50f.vxmlgrammar\\\\">\\\\r\\\\n    <interpretation
         grammar=\\\\"0@dde9c50f.vxmlgrammar\\\\" confidence=\\\\"46\\\\">\\\\r\\\\n        \\\\r\\\\n
         <input mode=\\\\"speech\\\\">blue<\\\\/input>\\\\r\\\\n
         <\\\\/interpretation>\\\\r\\\\n<\\\\/result>\\\\r\\\\n"
      }
   }
}
 

アウトバウンドのcallとaskに対するJSONのresultの例

{
   "result":{
      "sessionId":"be9610c12d60ae8c99f0fbf554212345",
      "callId":"8986b9d9252c0b0ea6acf76fdb212345",
      "userType":"NONE",
      "state":"ANSWERED",
      "sessionDuration":12,
      "sequence":1,
      "complete":true,
      "error":null,
      "calledid":"0901234XXXX",
      "_call":{
         "sessionId":"be9610c12d60ae8c99f0fbf554212345",
         "callId":"8986b9d9252c0b0ea6acf76fdb212345",
         "userType":"NONE",
         "state":"ANSWERED",
         "sessionDuration":12,
         "sequence":1,
         "complete":true,
         "error":null,
         "calledid":"0901234XXXX"
      },
      "actions":[
         {
            "name":"call-bf1c3e59-7779-422a-b0d1-f43f01212345",
            "sessionId":"be9610c12d60ae8c99f0fbf554212345",
            "callId":"8986b9d9252c0b0ea6acf76fdb212345",
            "userType":"NONE",
            "state":"ANSWERED",
            "sessionDuration":12,
            "sequence":1,
            "complete":true,
            "error":null,
            "calledid":"0901234XXXX",
            "_call":{
               "sessionId":"be9610c12d60ae8c99f0fbf554212345",
               "callId":"8986b9d9252c0b0ea6acf76fdb212345",
               "userType":"NONE",
               "state":"ANSWERED",
               "sessionDuration":12,
               "sequence":1,
               "complete":true,
               "error":null,
               "calledid":"0901234XXXX"
            }
         },
         {
            "name":"color",
            "attempts":1,
            "disposition":"SUCCESS",
            "confidence":33,
            "interpretation":"blue",
            "utterance":"blue",
            "concept":"blue",
            "value":"blue",
            "xml":"<?xml version=\\\\"            1.0            \\\\"?>\\\\r\\\\n<result
            grammar=\\\\"0@23806e29.vxmlgrammar\\\\">\\\\r\\\\n    <interpretation
            grammar=\\\\"0@23806e29.vxmlgrammar\\\\" confidence=\\\\"33\\\\">\\\\r\\\\n        \\\\r\\\\n
            <input mode=\\\\"speech\\\\">blue<\\\\/input>\\\\r\\\\n
            <\\\\/interpretation>\\\\r\\\\n<\\\\/result>\\\\r\\\\n"
         }
      ]
   }
}
 

CPAがactiveであるアウトバウンドのcallとaskに対するJSONのresultの例

{
    "result": {
        "sessionId": "863ec8a756fe3b10dac6b6d1f6712345",
        "callId": "ee0d0f9f33d876ead7d33c1395612345",
        "userType": "HUMAN",
        "state": "ANSWERED",
        "sessionDuration": 34,
        "sequence": 1,
        "complete": true,
        "error": null,
        "calledid": "0901234XXXX",
        "_call": {
            "sessionId": "863ec8a756fe3b10dac6b6d1f6712345",
            "callId": "ee0d0f9f33d876ead7d33c1395612345",
            "userType": "HUMAN",
            "state": "ANSWERED",
            "sessionDuration": 34,
            "sequence": 1,
            "complete": true,
            "error": null,
            "calledid": "0901234XXXX"
        },
        "actions": [
            {
                "name": "call-8cdf73ea-40da-47c4-a040-b2b814e12345",
                "sessionId": "863ec8a756fe3b10dac6b6d1f6712345",
                "callId": "ee0d0f9f33d876ead7d33c1395612345",
                "userType": "HUMAN",
                "state": "ANSWERED",
                "sessionDuration": 34,
                "sequence": 1,
                "complete": true,
                "error": null,
                "calledid": "0901234XXXX",
                "_call": {
                    "sessionId": "863ec8a756fe3b10dac6b6d1f6712345",
                    "callId": "ee0d0f9f33d876ead7d33c1395612345",
                    "userType": "HUMAN",
                    "state": "ANSWERED",
                    "sessionDuration": 34,
                    "sequence": 1,
                    "complete": true,
                    "error": null,
                    "calledid": "0901234XXXX"
                }
            },
            {
                "name": "color",
                "attempts": 1,
                "disposition": "SUCCESS",
                "confidence": 59,
                "interpretation": "blue",
                "utterance": "blue",
                "concept": "blue",
                "value": "blue",
                "xml": "<?xml version=\\\\"1.0\\\\"?>\\\\r\\\\n<result
                grammar=\\\\"0@37c12891.vxmlgrammar\\\\">\\\\r\\\\n    <interpretation
                grammar=\\\\"0@37c12891.vxmlgrammar\\\\" confidence=\\\\"59\\\\">\\\\r\\\\n        \\\\r\\\\n
                <input mode=\\\\"speech\\\\">blue<\\\\/input>\\\\r\\\\n
                <\\\\/interpretation>\\\\r\\\\n<\\\\/result>\\\\r\\\\n"
            }
        ]
    }
}
   
reject say