Добавлены две сервисные команды для настройки закрытия/продолжения сессии после отправки сообщения, если навык был вызван без текста сообщения. По умолчанию навык закрывается сразу после отправки. Это можно изменить, сказав соответствующую команду. Если вызвать навык сразу с текстом сообщения, после отправки он закроется в любом случае независимо от этой настройки. Сообщение с текстами сервисных команд в Телеграм не отправляются. Навык просто запомнит эти настройки и продолжит работать. Команды нужно говорить как написаны. При удаче в ответе будет подтверждение:
Не закрывай сессию после отправки сообщения
Ответ - Хорошо ...
Закрывай сессию после отправки сообщения
Ответ - Как пожелайте ...
Теперь о том, где это может быть полезно, и как это работает
Вызов навыка с передачей сообщения:
Я - Алиса скажи умному дому включи свет
Y - Отправлено
Y - Закрытие сессии
Навык загрузился, команда ушла, реплика подтверждения, навык закрылся. Эти настройки тут никак не повлияют.
Вызов навыка без сообщения с настройкой закрытия сессии (по умолчанию):
Я - Алиса запусти навык умный дом
Y - Диктуйте сообщение
Я - Включи свет
Y - Отправлено
Y - Закрытие сессии
Вызов навыка без сообщения с настройкой не закрывать сессию:
Я - Алиса запусти навык умный дом
Y - Диктуйте сообщение
Я - Включи свет
Y - Отправлено
Я - Включи телевизор
Y - Отправлено
Я - какая температура на кухне
Y - Отправлено
Я - Хватит
Y - Закрытие сессии
Тут уж кому как удобнее и для чего. Настройку можно менять в любой момент. Привязывается к id пользователя и действует на все устройства.
Добавлено кеширование данных и настроек пользователя. Скорость выросла на 0,4 секунды.
Изменен режим закрытия навыка по умолчанию. Перерь навык не закрывается после успешной отправки сообщения. Изменить это так же можно сервисными командами. Старые настройки пользователей не изменились. Это относится только к вызову навыка без текста сообщения.
После успешной отправки сообщения, реплика "Отправлено" заменена на короткий звук. В приложениях с экраном так же будет звук отправки, но в чате останется текст "Сообщение отправлено".
Ссылка для добавления навыка. Ссылки одноразовые, сгорают при первом переходе. Пишите, в телеге бываю часто.
https://dialogs.yandex.ru/share?key=mng9FPDtlCgm7T...
Немного доработан код в команде Телеграм. Теперь, сообщение будет отправлено не только от имени нужного пользователя, но и в случае со станциями с application_id "zzzzz" и "xxxxx" в колонку SOURCE таблицы shouts прилетит имя станции. Это позволит в шаблонах поведения делать условия не только "Кто сказал?", но и "Где сказал?".
Обращаю внимане, что контекст в шаблонах поведения ведется только от пользователя. Об этом стоит помнить, чтобы разные шаблоны не пересекались.
В идеале будет возможна реализация сценария с вклюением любимого света. Допустим есть комната, в которой живут Саша и Маша. Слева и справа у кровати две тумбочки со светильниками. Дальше думаю всё понятно.
Спасибо за навык. Немного не разобрался как это работает.
Подскажите.
Имеется колонка Яндекс мини и Majordomo, установленный локально. Плюс настроен бот Telegram (уведомления с MD приходят в Telegram).
Как сделать, чтобы в Majordomo отображались уведомления от Алисы? Спрашиваешь "Алиса, какая погода.." Колонка (Алиса) проговаривает и дополнительно текстом в событиях MD выводится погода (как будто выполнил команду say(...).
К сожаления, обратной связи в навыке нет. То есть, сразу отправить ответ Алисе не получится. Для этого нужно открыть порт сервера и настроить навык, чтобы он не отправлял сообщения в телегу, а обращался напрямую к серверу МД, получая ответ от него. Но можно сделать так:
Мы получаем текст, сказанный в колонку. Это всё подробно написано в начале. Обрабатываем текст каким либо способом, например шаблонами поведения МД, а затем, просто отправляем текст на озвучку в нужную яндекс станцию. При получении текста от станции мы получаем и её id, так сказать, поэтому уже знаем куда отправить ответ.
Интересует именно запрос к колонке вида: "Алиса, какая погода.." Колонка (Алиса) проговаривает и дополнительно текстом в событиях MD выводится погода (как будто выполнил команду say(...).
Именно к Алисе, а не через вызов навыка.
Другими словами как перехватить ответы Алисы и отобразить эти ответы в MD ?
Полагаю, подобное невозможно. Если бы так, то и навыки никакие не нужны. Сейчас мы можем либо привязывать устройства МД к УД Яндекса, или помучать сказанный текст через навык каким либо способом, и обрабатывать его в шаблонах МД. Других вариантов взаиможействия с Яндекс нет.
К сожалению навык утерян. Яндекс удалил моё облако, в котором была функция навыка. Я читал, что если функция используется для навыка в некомерческих целях, то это бесплатно. Но как выяснилось, что кончился какой то гранд, и доступ был ограничен. Но навык продолжал работать. А потом яндекс полностью снёс облако. Увы, бекапа я не делал. Как то не полагал, что подобный сценарий может произойти.
Please login to leave comments. Join us!