SSML音频而不是单词

时间:2017-12-16 20:42:08

标签: node.js alexa-skills-kit alexa-skill

我目前刚进入nodejs,但我一直在尝试使用GitHub上提供的Nodejs Trivia Sample制作Alexa技能。

代码中没有修改任何内容,只修改内容(问题)。改变是,而不是问题(单词),我想播放音频MP3。应该/可以使用SSML音频

我试图这样做,但我的技能不会这样,甚至不会开始。

这是原始样本:

{
   'What Makes Santa\'s Reindeer Fly?': [
      'Magical Reindeer Dust',
      'Fusion',
      'Amanita muscaria',
      'Elves',
   ],
},

我做了什么,使用音频SSML:

{
   '<audio src="link_to_the.mp3' />": [
      'Magical Reindeer Dust',
      'Fusion',
      'Amanita muscaria',
      'Elves',
   ],
},

github来源:https://github.com/alexa/skill-sample-nodejs-trivia/tree/en-US/lambda/custom

我在这里做错了什么?它应该工作,对吗?

1 个答案:

答案 0 :(得分:1)

请检查您的音频长度(音频文件不能超过九十(90)秒),并确保已将mp3转换为正确的格式。

我希望您已阅读此文档 - Using Audio in Your Response

编辑: - 嘿,我刚试过并找到了解决方案。

  1. 在question.js文件中,单独添加mp3链接到问题。
  2.   

    {      &#39; https://mp3_link&#39; :[         &#39; Magical Reindeer Dust&#39;,         &#39;融合&#39 ;,         &#39; Amanita muscaria&#39;,         &#39;精灵&#39 ;,      ]   },

    1. 在index.js文件中,找到名为&#34; speakquestion&#34;的变量。并将音频标签添加到它。找到下面的例子

        const spokenQuestion = '<audio src="'+Object.keys(translatedQuestions[gameQuestions[currentQuestionIndex]])[0]+'" />';
      
    2. 注意:这仅在您包含所有问题的mp3链接时才有效。如果某些问题有mp3链接而某些问题有文字,请相应添加条件。找到下面的示例示例

       if(question.substring have https) then audio else text

      编辑2 : 1.在问题中添加音频文件名。

        

      {      &#39; name_of_the _audio_file&#39; :[         &#39; Magical Reindeer Dust&#39;,         &#39;融合&#39 ;,         &#39; Amanita muscaria&#39;,         &#39;精灵&#39 ;,      ]   },

      2.在音频标签中添加音频链接

      const spokenQuestion = '<audio src="https://s3.amazonaws.com/s3_bucket_name/'+Object.keys(translatedQuestions[gameQuestions[currentQuestionIndex]])[0]+'.mp3" />';