2017-11-28 2 views
0

Ich erstelle einen normalen HTTPS-Web-Service für die Interaktion mit Alexa. Ich bin in der Lage, die Anfrage im Service zu erhalten und wenn ich Antwort zurückgebe, in der gleichen Struktur wie Alexa erwartet! Ich erhalte einen Fehler. Ich bin nicht in der Lage, zu bekommen, was das Problem ist .. der JSON-Körper und die Überschriften werden entsprechend den Standards eingestellt. I am not using lambda, aber versuchen, mit Alexa mit einem normalen HTTPS-Dienst zu interagieren.Kann ich einen normalen HTTPS-Ruhe-Service für Anfrage/Antwort für Alexea verwenden, nicht mit dem Alexa SDK

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

wie erwarten Sie uns Ihre Frage mit dieser Menge an Informationen zu beantworten. Laden Sie zumindest den JSON-Text der Anfrage zusammen mit dem Header hoch. –

+0

Die Antwort hinzugefügt, die ich an die Anfrage zurücksende. – Ashwin

+0

sollte es 'sessionAttributes' sein –

Antwort

0

Ich fand, was das Problem mit meinen Antwortcodes war. Die Felder sessionAttributesspeechletResponse sind optionale Felder. Das tatsächliche Feld, das in der obigen JSON-Antwort fehlte, ist der Schlüsselwert type in der Kartenantwort. Auch wenn das Objekt card selbst optional ist. Wenn Sie es verwenden, müssen Sie ein Feld haben, das als Typ in demselben aufgerufen wird. Arbeits json Antwort unten. Hoffe, das hilft den Leuten, die versuchen, in den Alexa-Raum einzudringen.

{ 
 
"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" 
 
    } 
 
} 
 
}

Verwandte Themen