#google-assistant-sdk #google-assistant #actionbuilder
Вопрос:
Привет, я работаю с помощником Google, я использую Конструктор действий в консоли действий Google. И я работаю с редактором функций Google Cloud, предоставленным в консоли действий, чтобы протестировать свой веб-крючок. Я хотел бы использовать медиаплеер для чтения mp3-песни, которую я предоставляю с URL-адресом. я следовал документации здесь : https://developers.google.com/assistant/conversational/prompts-media и я использовал этот код :
app.handle('media', (conv) => {
conv.add('This is a media response');
conv.add(new Media({
mediaObjects: [
{
name: 'Media name',
description: 'Media description',
url: 'https://storage.googleapis.com/automotive-media/Jazz_In_Paris.mp3',
image: {
large: JAZZ_IN_PARIS_IMAGE,
}
}
],
mediaType: 'AUDIO',
optionalMediaControls: ['PAUSED', 'STOPPED'],
startOffset: '2.12345s'
}));
});
Проблема в том, что этот код работает, когда я удаляю изображение, но если я сохраню его, я получу ошибку :
Unsuccessful webhook call due to client issue: Error querying agent endpoint. State: URL_UNREACHABLE, reason: UNREACHABLE_5xx.
и в ответе на веб-крючок я получил :
"error": "JAZZ_IN_PARIS_IMAGE is not defined"
Мой вопрос в том, как отправить изображение в объекте MediaObject с помощью веб-крючка? Где я должен хранить свое изображение и как добавить его в ответ?
Ответ №1:
В фрагменте кода JAZZ_IN_PARIS_IMAGE
не определяется напрямую, но предполагается, что это объект изображения, например png
или jpg
. МедиаОбъект может иметь большое изображение и/или значок.
Для целей тестирования вы можете загрузить файл в свое облачное хранилище или просто взять любое изображение из Интернета. Но когда вы продвигаетесь вперед, вам действительно следует исправить этот URL-адрес изображения и предоставить исправленный текст alt.
conv.add('This is a media response');
conv.add(new Media({
mediaObjects: [
{
name: 'Media name',
description: 'Media description',
url: 'https://storage.googleapis.com/automotive-media/Jazz_In_Paris.mp3',
image: {
large: {
url: 'https://serebii.net/pokearth/sprites/green/025.png',
alt: 'This is a sprite of Pikachu!',
},
}
}
],
mediaType: 'AUDIO',
optionalMediaControls: ['PAUSED', 'STOPPED'],
startOffset: '2.12345s'
}));
});