0
Answered

Яндекс Алиса

Дмитрий Марков 6 years ago in Tips and Tricks updated by Aleksandr Romanov (CTO) 4 years ago 119

Добрый день!


Есть ли поддержка Яндекс Станции?

Нет ответа или проверятся возможность?

-1
Answered

Добрый день.

Станция сейчас не поддерживается, т. к. навык должен пройти дополнительную проверку в Яндексе и быть полностью управляем голосом. Сейчас пока ни первое, ни второе не сделано.

-2

Когда планируется?

Основная ценность голосового управления заключается в том, что зайдя в дом, ты говоришь "ему" сделай "что-то". А не в том, чтобы достать очередной гаджет (разблокировать его, запустить на нем приложение), и уже потом продиктовать что нужно включить. 

+2

Добрый день!

Навык прошел проверку на совместимость с Яндекс.Станция и доступен для применения

Отличная новость! Теперь можно заказывать Яндекс.Станцию.

Подключать по такой-же схеме, как и в телефоне?

А нельзя Алисе отдать текстовый ответ, чтобы она его произнесла вместо "выполнено" в варианте с фиктивным тегом?

-1

Это в планах на разработку, пока не отдать ответ.

Да, было бы здорово получать ответы от Алисы по состоянию домашней системы! 

+1

В ближайшем релизе для Алисы появится функционал с произвольным ответом

Протестировал Яндекс-Алису. Для запуска навыка нужно сказать ей "Запусти навык Иридиум", после чего система по фразе "Слушай, Алиса" ожидает и выполняет известные ей команды. При этом перестает работать другой стандартный функионал Алисы, например, нельзя узнать погоду, т.к. Алиса в навыке Иридиум ответит, что "tag какая сегодня погода not found in project". Фразы "прекрати" и "хватит" не останавливают работу навыка Иридий как заявлено в описании. То есть, если управлять, например, через Яндекс- браузер или приложение на телефоне, то выходить из навыка приходится вручную нажимая на кнопку. Как это будет работать в Яндекс.Станции вообще не понятно. Видимо, Алиса будет постоянно сидеть в навыке Иридиум и остальные ее возможности будут заблокированы. Подскажите, это ошибка работы навыка или действительно есть такая особенность в Алисе.


  

Я изначально тоже думал, что говорить Алисе команды можно сразу (в том окне, где узнать про погоду и т.д.). Но есть маленькое неудобство (может конечно, я чего-то не понял), чтобы "общаться" с Иридиумом через Алису, надо постоянно заходить в навык Иридий, а чтобы узнать погоду, надо стрелочкой "назад" попасть в главное "слуховое" окно Алисы и там уже задавать другие вопросы. Может есть какая то команда, которая сама этот навык запускает, а не вручную?

в навыке Иридиум, можно вообще не говорить фразу "Слушай Алиса"

Можно не запуская навык (но уже авторизовавшись в нем), сказать "Алиса, скажи Иридиум, включить свет в ...." - это не переключит контекст навыка, но выполнит команду.

Для Станции работает команда "Алиса, хватит".

Для чата на телефоне надо выйти "стрелочкой" - это реализация от Яндекс.

Когда говоришь: " Алиса, скажи иридиум включить свет...", Алиса сначала запускает навык Иридиум, затем выполняет команду, а обратно из навыка не выходит)

В станции это работает нормально, а в "диалогах".... Стоит Вам обратиться в службу техподдержки Яндекса

но уже удобней пользоваться

Добрый день! При заливке проекта через трансфер, сервер не коннектится с сервисом Алиса, теги Yandex Alice.Status и Yandex Alice.Online стоят 0. При загрузке с облака, все нормально

Добрый день!

Это корректное поведение сервера, т.к. для работы драйвера Яндекс.Алиса необходима связь с нашим облаком по уникальному идентификатору проекта, а при передаче через трансфер облако ничего не знает о таком проекте и идентификатор не определен. Любой подобный облачный сервис может тестироваться только через загрузку из облака - это ограничение не обойти.

Тогда эта особенность должна отражаться в документации)

Или, как вариант, ключ облака от Иридиум прописывается изначально в сервере и потом при заливке через трансфер, сервер сам коннектиться к облаку Иридиум и все остальные облачные сервисы.

Допуская "ручное" формирование ключа Вы открываете дорогу ошибкам и злоупотреблениям... Давайте управлять чужой Алисой с неопознанного аккаунта и проекта ;))

Здравствуйте! 

В новом релизе 1.3.3 мы добавили в Алису возможность задавать произвольный ответ. 

Да, уже протестировал в субботу, это на самом деле классная штука. Я правильно понял ответ от Алисы может быть не более 1024 символа? И будет ли работать символ "/n" для переноса строки в ответе от Алисы. И еще, заметил в логах сервера после каждого ответа Алисы появляется сообщение "Error in Alice Answer. Wrong use of square brackets"

  1. Все верно, ответ 1024 символа.
  2. Перенос строки не тестировали, вопрос скорее в техподдержку Яндекс.
  3. Ошибка появляется, если не задана фонетика ответа в квадратных скобках (позволяет "очеловечить" произношение)
-1
в настройках Алисы в квадратных скобках есть текст. Или еще нужно добавить в переменную Answer квадратные скобки?
Скобки в стандартном ответе? А ошибка тоже на стандартный ответ?
+1
Скобки стоят в стандартном ответе в настройках драйвера Алисы. А ответы у меня формируются в зависимости от вопроса, т.е. не стандартные.
Значит описание ошибки соответствует реальности: заполните произношение в ответах и ошибка исчезнет.

Что то Алиса все выходные не работала, ошибка базы данных Иридиум. А в логах сервера вываливается CCustomDevice(YANDEX ALICE(65535)): StartConnect() каждые 0,3 секунды и похоже сервак из-за этого сам перезагружается

Такое частое переподключение обычно означает отсутствие лицензии. Проверьте таковую... Само облако работает нормально.

Возможно ли на смартфоне на главный экран вынести иконку Алисы с навыком Иридиума?

Вопрос в техподдержку Яндекса. В документации мы такой возможности не нашли...

+1

Когда будет реализовано контекстное управление для Алисы?

Но оно не работает.

Что конкретно не работает? И как оно в принципе может не работать? )))

  1. Вы создаете фидбек "Я на кухне", который устанавливает некий системный токен в проекте - это точно будет работать как и обычная команда. Не забываем при установке этого токена сбрасывать остальные, чтобы не было ситуации, что вы одновременно в двух контекстах.
  2. Вы создаете фидбек "Включи свет" на который подписываете несколько рутин, в каждой из которых установлен параметр BUT ONLY IF. Например, для кухни это будет проверка установленного токена из пункта 1.

Что здесь может не сработать???

+1

Уже пробовали в одном проекте это реализовать. Алисе говоришь "Я в спальне", а затем "Включи свет", так включается свет во всех комнатах. Хотя создан виртуальный тег Контекст и созданы сценарии для каждой комнаты, в которых установлен параметр BUT ONLY IF.


свет в спальне.JPG
свет в кинозале.JPG
свет в кабинете.JPG

Покажите скрин, где задается значение тега "Контекст"

Это просто тег, а где обработка команды?

Выше в пункте один я вам описывал, что на поступление фидбека "Я в спальне" должна сработать рутина, которая установит значение виртуального тега Контекст (не рекомендую использовать русские буквы в названии тегов) в значение "Я в спальне", которое вы проверяете в последующих правилах.

А где это описано в документации? И правильно это сделать?

Как правильно это всё сделать?

Рутины выше в скриншотах.

+1

Документацию дополним, но это простейший алгоритм:

  1. Создайте в драйвере Яндекс.Алиса фидбеки: "Я в спальне", "Я в кухне", "Я в детской".
  2. Создайте виртуальные переменные: cont_bedroom, cont_kitchen, cont_childrens
  3. Создайте рутину 1: WHEN Алиса.Фидбек.Я в спальне == 1 THEN cont_bedroom = 1, cont_kitchen = 0, cont_childrens = 0
  4. Создайте рутину 2: WHEN Алиса.Фидбек.Я в кухне == 1 THEN cont_bedroom = 0, cont_kitchen = 1, cont_childrens = 0
  5. Создайте рутину 3: WHEN Алиса.Фидбек.Я в детской == 1 THEN cont_bedroom = 0, cont_kitchen = 0, cont_childrens = 1
  6. Создайте в драйвере Яндекс.Алиса фидбек: "Включи свет"
  7. Создайте рутину 6: WHEN Алиса.Фидбек.Включи свет == 1 THEN Команда.ВключиСветСпальня, BUT_ONLY_IF cont_bedroom = 1
  8. Создайте рутину 7: WHEN Алиса.Фидбек.Включи свет == 1 THEN Команда.ВключиСветКухня, BUT_ONLY_IF cont_kitchen = 1
  9. Создайте рутину 8: WHEN Алиса.Фидбек.Включи свет == 1 THEN Команда.ВключиСветДетская, BUT_ONLY_IF cont_childrens = 1

Так понятнее?

Имеете ввиду создать виртуальные теги cont_bedroom, cont_kitchen, cont_childrens?

Или виртуальные каналы?

Дело в том, что при создании рутины в разделе THEN возможно выбрать только виртуальные каналы. А в разделе BUT ONLY IF возможно выбрать только виртуальные теги. 


Или это лучше через скрипты реализовать?

+1

Извините, пропустил пункт про шлюзование:

2. Создайте виртуальные каналы и теги с одинаковыми названиями: cont_bedroom, cont_kitchen, cont_childrens

2А. Создайте скриптовой модификатор

(документация)

function virtual_to_virtual (in_Type, in_Name, in_Value) 
{
   var namepart = in_Name.split(".");  
   IR.SetVariable("Server.Tags." + in_Name, in_Value);
   return in_Value;
}

2В. Для каждого канала из п.2 пропишите в свойстве Script Modifier название функции из скрипта virtual_to_virtual

Теперь работает!

Но появился другой недочет. Когда Алисе говоришь "Я в спальне", а затем "Включи свет" - свет включается только в спальне. А когда говоришь "Включи весь свет", чтобы включить свет во всей квартире, то команда выполняется успешно, но Алиса говорит: "Команда неизвестна".

Как это исправить?

Обратитесь с этим вопросом в техподдержку, и к тикету приложите проект, в котором все это происходит. Не забудьте указать версию сервера и на какой платформе.

+1

Проблема решилась назначением ответа на команду "Выключи все" в рутине.

Подключил Алису со смарта
Взял скрипт из справочника, добавил команды управление
Свет включает, но говорит "команда неизвестна"
Хотя answer прописан и в переменную полученную команду записывает\

Что не так? Что забыл указать?

Разобрались, мой косяк, не до конца разобрал скрипт из примера.

+2

И вопрос, планируется ли что-то делать с обработкой команд Алисы, например запуск навыка Иридиум происходит 50 на 50
Говорю "Алиса попроси Иридий включить свет"
Алиса воспринимает "попроси ready включить свет"
"Иридий" уж больно слово неудобное

А какое слово было бы удобнее? ))

Ну назовите Ирой, "Алиса попроси Иру включить свет" :)
Может к коллективному разуму обратиться, как удобней

Я и обращаюсь к коллективному разуму ))) Только придется не менять, а дублировать. Уже есть запущенные объекты с Алисой.

Алиса, попроси мелафон включить свет :)

А "попроси" обязательное условие от Алисы или можно менять фразу "Попроси Иридий"

Вопрос скорее к техподдержке Яндекс, пока можно именно "попросить" )))

а конекст под сриптами тоже можно сделать?

Конечно, в чем здесь сомнения?

+1

Все таки не удобно пользоваться Яндекс.Станцией при управлении Иридием. В телефоне еще можно руками запустить навык и проговорить задание на выполнение, а в Станции ей надо говорить: "Запусти навык Иридиум" и к сожалению она плохо понимает эту фразу, отвечает "что мне за это будет" или ищет что-то непонятное. В таком варианте отпадает желание пользоваться управлением именно через Станцию. 
Но в настройках самой станции есть вкладка "Умный Дом", там можно добавлять как устройства самого Яндекса, так и сторонние. Если я правильно понимаю, то можно в этом случае управлять домом не через навык, а напрямую говоря ей команды. Можно ли как нибудь туда Иридий запихать?

Добрый день!

Удобство запуска навыка стоит "просить" от Яндекса, тут мы следуем придуманной модели для Алисы.

По вкладке "Умный дом" сейчас драйвер в доработке, в ближайшее время зарелизим новый функционал, но необходимо понимать, что там тоже немало ограничений....

ок, ждем релиза. Тут видимо сам Яндекс хочет, чтобы покупали их оборудование)

А какого плана новые ограничения?

Список поддерживаемых типов очень небольшой

-1

Здравствуйте, есть ли новости по релизу? Ранее говорили про конец сентября.

Ждем апрув навыка от Яндекс, как пройдем тесты, сразу же в релиз

+4

Добрый день! Похоже в Яндекс произошли какие то изменения...Теперь когда Алиса слышать фразу связанную со "светом" она преднастроенно отвечает: "Я бы с радостью - но здесь нужны специальные устройства для умного дома", хотя действие настроенное в скрипте выполняет и в Log записывает, то что я ей отправляю в ответ. Всё работало нормально, до недавних пор.



Кто нибудь знает что то на счёт этого?

В свете новости, что теперь управление через алису без запуска навыка
Что-то переделывать в проектах надо? Или все само заработает?

+2

Новость бежит впереди документации )))

Там отдельный механизм, работает совершенно по другому. Надо менять проект будет. Документация скоро...

Документация доступна по ссылке https://dev.iridi.com/Yandex_Alice_Platform

Постоянные ошибки, то в орфографии, то в коде. 

Долго думаешь, почему не работает, оказывается лишняя кавычка стоит.

Дмитрий, вежливые люди сообщают об этом в личных сообщениях с конкретикой ;)

Простите, если чем то обидел. Мне кажется, раньше вики были написаны более качественно и детально проработаны.

Так не обидели, просто комментарий в пустоту получился: "я тут ребята, косяк увидел, но вам не скажу где, сами мучайтесь" ))))

Наводку я вам все таки дал, по поводу лишних кавычек)))

А так супер, что Алисе теперь можно давать команды без запуска навыка, гораздо удобнее сейчас пользоваться

Добрый день! Почему в документации про Яндекс платформу написано, что нужно активировать через навык Иридий и произносить активационную фразу. Если я правильно понимаю, эта процедура не относится к платформе?

Добрый день!

Вам в любом случае необходимо как-то "привязать" колонку к навыку. Поэтому использование навыка обязательно.

Если вы активируете платформу из приложения или браузера, то нужна только авторизация в иридиум аккаунте (все равно привязка).

Платформа итак активируется только из приложения Яндекса на телефоне (с авторизацией в иридиум аккаунте), на ПК через браузер нету возможности авторизироваться, кнопка "Объединить аккаунты" просто не нажимается. Писал в поддержку Яндекса, ответили, что используйте только приложение на телефоне

Это не противоречит вышесказаному. Навык и активационная фраза используется на колонке.

Лучше все эти моменты отразить в документации, а то новичок пока поймет всю логику авторизации, обматерит всех))) Особенно, если будет пробовать активировать через браузер на ПК

Мы пробовали из браузеров Хром и Эксплорер - работает.

Важное условие: вы уже должны быть авторизованы в учетке Яндекс.

Доку уточним, спасибо.

А жесты станции мини будет поддержка?

Про жесты вопрос к Яндекс. На сколько знаю, пока это только управление громкостью самой станции....

Добрый день! Подскажите а когда "новая Алиса" будет реализована на i3lite?

В январе релиз планируем

Отлично... А старый фунционал останется?

Да, это разные драйвер

+1

Возник вопрос, а возможно ли реализовать такой сценарий: как озвучивание Алисой сообщения при каком либо событии в системе управления (например: "возгорание или обнаружена протечка в ванной и т.д."? Если возможно то как?

Голосовые помощники всегда работают как запрос/ответ, а значит без запроса мы не можем ничего ему отдать. Т.е. можно спросить "Как дела дома?" с получением данных о критических параметрах, но инициировать аларм навыкам не позволяется (что наверное вполне корректно). Озвучивание только через внешние плееры делать.

Спасибо... Я так и думал, но на всякий случай спросил, может у Яндекса появилась такая возможность с их яндекс-станцией:)

Будут ли добавлены в драйвер платформы "моторные" сабдевайсы, чтобы Алиса понимала открой/закрой?

+1

Да, в следующий релиз запланирован пакет расширения поддерживаемых устройств.

Как правильно настроить скриптами управление громкостью ТВ?

В первом случае, когда управление по ИК (через HDL) и мы не знаем текущую громкость ТВ. Когда говорим Алисе: "сделай телек громче", она присылает в переменной value значения 20, 40 и т.д.

Во втором случае, когда управление телеком по IP и мы можем вытащить текущее значение громкости.

И в то же время, значение громкости сабдевайса "Телевизор" у самой Алисы тоже есть. Т.е. нам сначала нужно отправить текущее значение громкости, взятое из ТВ и отправить его Алисе, а затем уже сравнивать эти значения, после команд "сделай погромче/потише"?

1. Если нет обратной связи: возвращаем всегда Алисе значение громкости в диапазоне 40-60, т.е.она сделала тише, а мы ей в ответ снова значение в этом диапазоне. Так будет работать.

2. Если с обратной связи, то не понятен вопрос. Конечно надо инициализировать начальные значения и для ТВ, и для термостата и для лампы и т.д. Скриптовый пример в документации есть. Без скриптов можно делать макрос с набором команд.

Больше 10 сабдевайсов Алиса не принимает? Сейчас создал около15, а появляются на quasar.yandex.ru только 10. 

Мы тестировали точно более 20, вопросов не было. Все сабдевайсы в одной комнате? Что выдает при добавлении?

сейчас создано 6 комнат. При добавлении говорит, что добавлено 10 устройств и все.

сейчас перепроверили, 16 устройств без проблем.

Проверьте дублирование имен или может латиница закралась... Мы пока с ограничениями не сталкивались.

Все проверил, упростил все названия до одного слова, длинные сократил, максимум 12 символов. Все равно 10 добавляет и все

перед добавлением, удаляю все устройства

Дмитрий, чем мы можем Вам помочь?

Разобраться почему не добавляются остальные девайсы)))

Обратитесь в техподдержку с указанием версий, приложите проект. Здесь публичное обсуждение.

+1

Оказалось, что версия сервера под RPi запоздала с обновлением (с Алисой не дружит)

Подскажите, сколько яндекс-станций может быть в проекте?

Станций хоть сколько (только если ограничения Яндекс), но аккаунт только один.

Здравствуйте, интересует что там с новой Алисой в i3lite, когда релиз? Выше писали что в январе планируется, а уже середина февраля.

Здравствуйте. В данный момент наши специалисты разрабатывают этот модуль, после необходимы полные тесты и так далее. Точных сроков, к сожалению, сказать не можем, но весной релиз состоится.

Здравствуйте. Планируется ли в рамках нового модуля предоставить конечным пользователям возможность самостоятельно подключать новые устройства с Алисой (в частности, Яндекс Станции) через приложение i3lite? 

Добрый день!

Вся работа с конфигуратором в части добавления, удаления или настройки устройств производится только интегратором. Исключений для какого-либо модуля не предусматривается.

Возможно ли изменение кодового слова для активация навыка. Т.е. пример "Иридий, включи свет в комнате", сделать "Настя, включи свет в комнате". Заказчика напрягает "иридий", он бы хотел поменять обращение. Это возможно? и если да, то в каком обозримом будущем?

+1

Добрый день!

Сам навык "Иридий"  переназвать нельзя, но если вы пользуетесь драйвером Яндекс.Платформа, то там нет имени, можно сразу говорить: "Алиса, включи свет в зале" https://dev.iridi.com/Yandex_Alice_Platform