如何辨别Alexa是否一无所获?

如果我告诉Alexa以某些语言(中文,俄文等)或表情符号发出文本,它将对用户说不出话来. Alexa API是否有办法在发出之前或之后指示字符串将被转换为无/静音?或者,有没有办法测试Alexa之外的字符串? 最佳答案 您可以在开发人员控制台的测试部分中检查设备日志,以获取Alexa响应的字符串或SSML.

对于我的情况,它是Directive.DeviceSpeechSynthesizer.Speak日志.

{
    "header": {
        "namespace": "SpeechSynthesizer",
        "name": "Speak",
        "messageId": "0a290293-fe8d-40a5-835e-25f2b2e605eb",
        "dialogRequestId": "aa432cda-079a-4e46-a831-55d9f212bb6c"
    },
    "payload": {
        "caption": "ok",
        "url": "some url",
        "format": "AUDIO_MPEG",
        "token": "some token",
        "ssml": "<speak><prosody volume=\"x-loud\">ok</prosody><metadata><promptMetadata><promptId>ExecuteAction.CommandExecuted</promptId><namespace>HomeAutomation</namespace><locale>en_US</locale><overrideId>default</overrideId><variant>a836f358-a86c-4e3f-94e9-fe2f3bb24c7d</variant><condition/><weight>1</weight><stageVersion>Adm-20170215_180306-27</stageVersion></promptMetadata></metadata></speak>"
    }
}

您会注意到ssml包含转换后的文本.

还有一个关于在ssml响应中支持另一种语言的discussion.

点赞