У меня есть mp3, воспроизводящий приветственное сообщение, например. «Добро пожаловать в приложение», но как изменить текст, отображаемый в Google Assistant?
const ssml =
'<speak>' +
'<audio src="https://steven96813.000webhostapp.com/audio/welcome%20to%20bowville.mp3"></audio>' +
'</speak>';
conv.ask(ssml);
У вас есть несколько хороших вариантов.
Хороший способ — добавить тег <desc>
внутрь тега <audio>
. Этот текст не будет произноситься, но будет отображаться. Это может выглядеть примерно так:
const ssml =
'<speak>' +
'<audio src="https://steven96813.000webhostapp.com/audio/welcome%20to%20bowville.mp3">'+
'<desc>Welcome to Bowville</desc>'+
'</audio>' +
'</speak>';
Вы также можете создать объект Простой ответ, который вы передаете conv.ask()
вместо SSML. Для этого потребуется как свойство speech
с SSML, так и свойство text
с тем, что должно отображаться. Это может выглядеть примерно так:
conv.ask(new SimpleResponse({
speech: ssml,
text: 'Welcome to Bowville'
});
Спасибо, что ответили на мой вопрос, у меня все заработало, и все было нормально в течение 2 дней, а затем внезапно я получаю эту ошибку о том, что обработчик не является функцией в файле .js. Я никогда не редактировал диалоговое окноFirebaseFulfillment TypeError: handler is not a функция в cloudFunction (/srv/node_modules/firebase-functions/lib/providers/https.js:57:9) в /worker/worker.js:783:7 в /worker/worker.js:766:11 в _combinedTickCallback (internal/process/next_tick.js:132:7) в process._tickDomainCallback (internal/process/next_tick.js:219:9) Связано ли это с запросом https на загрузку mp3?
Во-первых, здорово, что у вас все заработало. Если ответ помогает, его принятие и/или голосование всегда приветствуются.
Ошибка, которую вы там показываете, не имеет отношения ни к чему, что вы упомянули в этом вопросе, ни к обслуживанию mp3. Я бы предложил начать новый вопрос StackOverflow, показывающий информацию о том, как у вас настроен веб-перехватчик, поскольку это похоже на настройку функции Firebase.
Вы можете использовать ssml только для своих медиафайлов и SimpleResponse для текста. Developers.google.com/actions/assistant/responses