2017-11-28 12 views
0

Alexaとやりとりするための通常のHTTPS Webサービスを作成しています。私はサービスの要求を受け取ることができますし、私はAlexaが期待しているのと同じ構造で応答を返すでしょう!私はエラーが発生しています。私は問題が何かを得ることができません.JSON本体とヘッダーは標準に従って設定されています。 I am not using lambdaが、通常のHTTPSサービスでAlexaと対話しようとしています。私はalexa SDKを使用せずに、通常のHTTPSレストサービスをalexaのリクエスト/レスポンスに使用できます。

Header: 
    HTTP/1.1 200 ok 
    content-type = application/json;charset=UTF-8 

//Response JSON which is not been identified by alexa 
{ 
"version": "1.0", 
"sessionAttribute": {}, 
"response": { 
    "outputSpeech": { 
     "ssml": "<speak> Donut and Coffeee Aussie Style</speak>", 
     "type": "SSML" 
    }, 
    "card": { 
     "content": "to the world", 
     "title": "Ava" 
    }, 
    "speechletResponse": { 
     "outputSpeech": { 
      "ssml": "<speak>Donut and Coffee Aussie Style</speak>" 
     }, 
     "card": { 
      "content": "to the world", 
      "title": "Ava" 
     }, 
     "shouldEndSession": "true" 
    } 
} 
} 
+0

。リクエストのJSON本体とヘッダーを少なくともアップロードしてください。 –

+0

リクエストに返信しているレスポンスを追加しました。 – Ashwin

+0

それは 'sessionAttributes'であるべきです –

答えて

0

私のレスポンスコードの問題点を発見しました。フィールドsessionAttributesspeechletResponseはオプションフィールドです。上記のJSONレスポンスで実際に見つからなかったフィールドは、カードレスポンスのキー値であるtypeです。たとえcardオブジェクト自体がオプションであるとも考えられます。あなたがそれを使用している場合、同じタイプのフィールドと呼ばれるフィールドを持っている必要があります。下のjsonの応答を作業しています。これは、アレクサの空間に侵入しようとしている人々に役立つことを願っています。あなたは私たちが、この情報の量とあなたの質問に答えることを期待しますか

{ 
 
"version": "1.0", 
 
"sessionAttribute": {}, 
 
"response": { 
 
    "outputSpeech": { 
 
     "ssml": "<speak> Donut and Coffeee Aussie Style</speak>", 
 
     "type": "SSML" 
 
    }, 
 
    "card": { 
 
     "type":"Standard", 
 
     "content": "to the world", 
 
     "title": "Ava" 
 
    }, 
 
    "speechletResponse": { 
 
     "outputSpeech": { 
 
      "ssml": "<speak>Donut and Coffee Aussie Style</speak>" 
 
     }, 
 
     "card": { 
 
      "content": "to the world", 
 
      "title": "Ava" 
 
     }, 
 
     "shouldEndSession": "true" 
 
    } 
 
} 
 
}

関連する問題