2016-08-24 1 views
3

J'essaie d'entrer dans ASK et j'ai juste essayé un exemple factice avec SSML. J'utilise Amazon Lambda et Python. Si je teste mon code de la console Lambda je reçois la sortie attendue:Alexa SSML ne joue pas

{ 
    "version": "1.0", 
    "response": { 
    "outputSpeech": { 
     "text": "<speak><audio src='https://s3.amazonaws.com/aws-website-resources-1183x/dice-die-roll.mp3' />Three</speak>", 
     "type": "SSML" 
    }, 
    "shouldEndSession": true, 
    "card": { 
     "content": "Three.", 
     "type": "Simple", 
     "title": "Dice" 
    } 
    } 
} 

Quand je vais au simulateur de service Alexa et essayer toute demande, le texte dans le discours de sortie est parti, le bouton « Listen » dans la console est désactivée et si je l'essayer sur l'Echo, il ne joue rien:

{ 
    "version": "1.0", 
    "response": { 
    "outputSpeech": { 
     "type": "SSML" 
    }, 
    "card": { 
     "content": "Three.", 
     "title": "Dice", 
     "type": "Simple" 
    }, 
    "shouldEndSession": true 
    } 
} 

Si je copier/coller le SSML <speak><audio src='https://s3.amazonaws.com/aws-website-resources-1183x/dice-die-roll.mp3' />Three</speak> dans le simulateur de voix que je peux jouer et il est joué comme prévu. J'ai converti le fichier mp3 en utilisant ffmpeg: ffmpeg -y -i a.mp3 -ar 16000 -ab 48k -codec:a libmp3lame -ac 1 output.mp3 et je comprends que le S3 d'Amazon doit être approuvé, quel peut être le problème? J'ai essayé d'utiliser des guillemets simples et doubles dans le SSML et j'ai essayé d'échapper aux citations en vain. Quelqu'un sait ce que je devrais regarder?

+0

Pour votre information, même si je retire l'audio et je laisse seulement '' Trois la même chose se produit. –

Répondre

6

Erreur muette. La sortie doit être en ssml au lieu de text.

"outputSpeech": { 
     "ssml": "<speak><audio src='https://s3.amazonaws.com/aws-website-resources-1183x/dice-die-roll.mp3' />Three</speak>", 
     "type": "SSML" 
    },