Отправить аудиофайл в DialogFlow с помощью Python - PullRequest
0 голосов
/ 24 мая 2018

Я знаю, что могу отправить данные (в данном случае текст) в DialogFlow с помощью Python следующим образом:

ai = apiai.ApiAI(CLIENT_ACCESS_TOKEN)
request = ai.text_request()
request.lang = 'de'  # optional, default value equal 'en'
request.session_id = "<SESSION ID, UNIQUE FOR EACH USER>"
request.query = "Hello"
response = request.getresponse()
print (response.read())

Но я не уверен, что смогу отправить аудиофайл в DialogFlow, кто-нибудь знает об этом?

1 Ответ

0 голосов
/ 25 мая 2018

Существует два способа использования аудиофайлов в ответах Google Action / Dialogflow: SSML с тегом <audio> и ответы Media.Оба ожидают, что аудиофайл будет предоставлен через URL-адрес HTTPS, сам файл обычно хранится в облачном хранилище, таком как Google Cloud Storage или Amazon S3.

SSML (Язык разметки синтеза речи) является языком разметки для вывода звука, также как HTML для визуального вывода.Он поддерживается действиями Google и может использоваться в качестве замены для обычного текстового ответа. Вместо включения текста ответа, подобного этому:

{
    "speech": "This is the text that the users hears",
    ...
}

, вы бы пометили его с помощью SSML следующим образом:

{
    "speech": "<speak><audio src="https://some_cloud_storage.com/my_audio_file.ogg"></audio></speak>",
    ...
}

Обратите внимание, что теги <speak> должны всегда окружать весь ответ, поэтому Google теперь должен отображать текст с использованием SSML (как тег <html> на веб-сайтах).Тег <audio> может принимать несколько необязательных атрибутов, подробности см. В документации.

Преимущество SSML в том, что он очень прост в использовании для вас, как для разработчика, но длина аудиофайлов ограничена 120.секунд и размером файла 5 МБ, и это не дает пользователю никакого контроля воспроизведения.

Медиа-ответы не имеют этих ограничений и отображаются как карта с изображением и элементами управления воспроизведением, но онив настоящее время работает только на устройствах Google Home и Android.

...