#bixby
#биксби
Вопрос:
Как я могу выполнить вычисляемый ввод из ответа javascript? Так что, просто выберите ОДИН звук из ответа??? Я не хочу, чтобы пользователь выбирал некоторые — он скажет воспроизвести звук — я получаю звуки с помощью вызова API, и они начинают воспроизводиться
Например, у меня есть функция javascript:
module.exports.function = function CommandContext(userInput, $vivContext){
return {
audioInfo: {
category: 'SINGLE',
displayName: res.audio.name,
repeatMode: 'ALL',
doNotWaitForTTS: true,
audioItem: [{...}]
}
};
}
Модель действия:
action (CommandContext) {
description ('Context')
type(Search)
collect {
input (userInput) {
type (commandUser)
}
computed-input (sound) {
type (audioPlayer.Result)
compute {
intent {
goal: audioPlayer.PlayAudio
value: CommandResult.audioInfo
}
}
hidden
}
}
output (CommandResult)
}
Комментарии:
1. Можете ли вы уточнить некоторые детали в фактическом высказывании? Например, произнесение «play Beatles» приведет к поиску и списку песен, возвращаемых API, обычно это будет последующее диалоговое окно: «Я нашел эти песни Beatles на XYZ, какую из них вы хотите сыграть?» И это единственный выбор мощности. Так ли это?
2. Я просто уже возвращаю какой-то ОДИН результат из API на стороне API, я принимаю решение, что искать — так что вы можете сказать «play bwah», но я верну какое-то значение по умолчанию! Мне не нужно выбирать из user 🙂
3. 1. Хорошо, так кажется по демонстрации github.com/bixbydevelopers/capsule-samples-collection/tree/… Я могу позвонить, чтобы получить некоторый список аудиозаписей с одним или несколькими аудиозаписями по какой-либо фразе, такой как «play bethoven», и обученная модель НЕ может уловить какое-либо значение в NL с помощью ввода этой схемы — потому что его вход audioInfo? Значит, у меня есть только возможность использовать некоторые статические действия в зависимости от каждого звукового имени? 2. Также, если я верну это audioInfo — result_view вообще не работает? 3. Как я могу проверить с помощью emu или реального устройства, работает ли это?
4. пожалуйста, смотрите Обновленный ответ ниже
5. Хорошо, я попробовал result_view с вашей демонстрацией и создал новые дополнительные файлы для просмотра — pastebin.com/abVvYaGT Он не показывает вид, просто кажется аудио (у меня еще нет устройства) — pasteboard.co/IbKtH0e.png Не могли бы вы проверить, пожалуйста?
Ответ №1:
Рад слышать, что вы решили проблему на стороне API.
Вот некоторая дополнительная информация, которая может быть полезна:
- Bixby также может «принимать решение за пользователя»,
default-select
хотя оно должно быть илиselect-first
илиselect-min
, вы можете прочитать больше здесь. - Если в будущем вам потребуется реализовать выбор пользователя или какое-либо интерактивное действие с пользователем после поиска, вы можете попробовать
followup
илиconversation-divers
дочерний ключ внутриresult-view
. Проверьте нашу справочную страницу здесь.
Дайте нам знать, если это поможет, и получайте удовольствие от Bixby!
Вот ответы на дополнительный вопрос в комментариях:
- Эта демонстрация предназначена только для воспроизведения Мяу, как вы можете видеть в файле JS. Цель демонстрации — показать, как использовать библиотеку bixby.AudioPlayer. В реальной капсуле вы должны иметь возможность находить аудиофайлы с помощью вызовов API в соответствии с вводом NL пользователем и превращать это в правильную структуру audioInfo.
- представление результатов должно работать, потому что все еще в Биксби.
- Вы определенно можете протестировать на устройстве после личных сообщений.
- Как сделать приватную отправку
- Как загрузить личное представление на устройство
- Поскольку функция AudioPlayer в настоящее время не поддерживается в симуляторе, выполнение высказывания в симуляторе приведет к появлению «ожидающего ввода» в окне отладки. Сейчас команда рассматривает возможность добавления функции AudioPlayer в предстоящие версии.
- Таким образом, чтобы протестировать example.meow, вам нужно выполнить приватную отправку, а затем загрузить на устройство. Вам также необходимо изменить имя капсулы, поскольку оно может не разрешить
example
пространство имен при частной отправке.
Комментарии:
1. Я протестировал через emu и ввел сообщение «Мяу» — получил просто пустой экран и без звука. Как я могу увидеть где-нибудь в журналах, что происходит? кроме того, почему не работает double from-ouput? совпадение: CommandResult (commandResult) { из-output: CommandContext из-output: PlayContext }
2. Да, вы правы, на симуляторе Meow не выдает звук, это должно быть на тестировании устройства, поскольку аудиопроигрыватель не включен в симулятор. Пожалуйста, сделайте следующее: 1. Сделайте приватную отправку загруженного примера.meow capsule. 2. Загрузите отправку на устройство с поддержкой Bixby, такое как телефон S9. 3. Выполните тестирование устройства на высказывании. К сожалению, нет простого способа протестировать функцию AudioPlayer, кроме как загрузить в устройство. Я добавлю некоторую ссылку в ответ.