Алиса отправляет сообщения в Telegram: различия между версиями
Нет описания правки |
Нет описания правки |
||
| Строка 103: | Строка 103: | ||
# Задать выполнение команды на колонке "'''Попроси электронного почтальона отправить сообщение <Имя>'''". | # Задать выполнение команды на колонке "'''Попроси электронного почтальона отправить сообщение <Имя>'''". | ||
[[Файл:Script example.jpg|350px]] | [[Файл:Script example new.jpg|350px]] | ||
Версия от 09:21, 20 ноября 2020
Навык "Электронный почтальон"
Диктуйте сообщения и отправляйте их в телеграмм с умных колонок с Алисой!
Сделайте использование навыка максимально простым, когда заняты руки или нет телефона рядом попросите Алису "отправь сообщение <Имя получателя>", продиктуйте текст и подтвердите отправку.
Рекомендуемый способ использования навыка - создание сценария на каждого получателя с собственной фразой вызова, например: "Отправь сообщение <Имя получателя>" и выполняемой командой на колонке "Попроси электронного почтальона отправить сообщение <Имя получателя>".
Быстрый старт
Сообщения будет доставлять связанный с навыком бот, но для этого он должен знать id (уникальный номер) чата (лички) с получателем сообщения. Выполним несколько простых действий:
- В Telegram-аккаунте получателя добавим бота "Электронный почтальон (бот)", запустим его и узнаем у него нужный chat id.
- Дадим умной колонке команду "Алиса, запусти навык "Электронный почтальон". После запуска навыка:
- просим его отправить сообщение;
- на вопрос "Кому?" называем имя, под которым хотим сохранить получателя;
- диктуем его ранее полученный chat id
- подтверждаем сохранение.
- Создадим сценарий в " квазаре" (приложение Яндекс),
- на фразу "Отправь сообщение <Имя получателя>" выбираем выполнение команды на колонке,
- пишем "Попроси электронного почтальона отправить сообщение <Имя получателя>".
Ниже описано подробнее как это работает и нюансы использования и настройки навыка.
Для удобства сначала настройте получение сообщений в собственный телеграмм. К тому же это пригодится позже для контроля списка сохраненных контактов.
Настраиваем Телеграм
Поскольку бот не может начать общение первым, всем будущим получателям надо самостоятельно найти бота в Telegram и начать с ним диалог.
- Вводим название бота - AliceSendMessageBot - в поиск tg. Должно отобразиться название "Электронный почтальон (бот)";
- Открываем чат с этим ботом, нажимаем "Старт" ("Запустить").
Бот в сообщении пришлёт наш chat id телеграмм, который понадобится для сохранения контакта в навыке на умной колонке.
Если сообщения нужно отправлять в группу, то добавляем бота в эту группу и используем команду /mychatid для получения chat id группы. Обратите внимание: chat id для групп обычно начинается со знака "-", и при внесении такого контакта в навык нужно подтвердить минуса перед цифрами chat id.
-
Запускаем бота
-
Получаем chat id при запуске бота в личке
-
Получаем chat id по команде /mychatid в группе
Работа со списком контактов
Для удобства отправки контакты сохраняются под удобными именами вместо сложных id. Вы называете имя, а навык сам находит нужную личку или группу.
Добавление нового контакта
Добавление нового получателя в список контактов во время отправки нового сообщения происходит автоматически.
- Запускаем навык "Электронный почтальон" и на вопрос "Что вы хотите сделать?" отвечаем "Отправить сообщение".
- На вопрос "Кому?" - называем имя получателя. Если такого получателя ещё нет - будет предложено его сохранить.
- Если имя получателя не найдено, будет запрошен chat id
- Если проверка на корректное распознавание продиктованных данных прошла - подтверждаем сохранение в списке контактов на колонке.
Проверка списка контактов
Список сохраненных контактов можно отправить в телеграмм одному из сохраненных получателей сообщений на умной колонке. Например, себе или членам семьи.
- Запускаем навык "Электронный почтальон".
- Просим "Проверить список контактов",
- Называем получателя списка и подтверждаем отправку.
- В телеграм получателя придет сообщение от бота с именами и chat id (здесь пригодится и свой ранее добавленный chat id).
Удаление контактов
Вы всегда можете удалить любой контакт из списка или очистить все контакты сразу.
Для удаления одного контакта:
- Попросите "Удалить контакт",
- Назовите имя контакта, который нужно удалить
- Подтвердите действие.
Чтобы очистить весь список, просто попросите "Удалить все" - и список контактов на умной колонке будет очищен.
Запуск навыка
Для удобства вызова навыка создайте сценарии Умного дома Яндекс:
- Запускаем приложение Яндекс;
- Через меню выбираем пункт "Устройства" -> "Управление устройствами" -> "+" -> "Сценарий";
- Добавить название сценария (например, "Сообщение <Имя>");
- Задать выполнение команды на колонке "Попроси электронного почтальона отправить сообщение <Имя>".
Рекомендации по использованию
Имена контактов
Внутри навыка используется справочник имен, что позволяет распознавать разные произношения одного имени, в т.ч. и уменьшительно-ласкательные формы, например, Таня, Танечка и Танюша будет распознано и сохранено одинаково - как Татьяна. Внимание: это работает только внутри навыка, т.е. после его вызова!
Яндекс считает варианты имени разными именами, поэтому при вызове навыка с указанием имени получателя всегда следует использовать полную форму (либо добавлять каждую форму имени, что нецелесообразно).
Пример: если в навыке при сохранении контакта назвать имя получателя сообщений Таня, то в список контактов будет записано имя Татьяна. При следующем обращении внутри навыка можно использовать любую форму имени, например Танечка, Танюша или Таня будет распознано как Татьяна.
Но если вызвать навык с командой "Попроси электронного почтальона отправить сообщение Тане" навык сообщит, что не знает имени Таня и предложит его сохранить.
Возможное решение - это указание своих обращений в вызове сценария, а в команде вызова указывать имя контакта. Можно добавить несколько активационных фраз в сценарий отправки сообщений одному контакту Татьяна по фразам:
- Напиши маме;
- Напиши сестре;
- Отправь сообщение подруге, итд.
и установить команду умной колонке "Попроси электронного почтальона отправить сообщение Татьяне".
Если всё же хотите сохранить контакт не по имени, рекомендую в дальнейшем использовать именно это обращение, избегая уменьшительно-ласкательных форм и других изменений слова.
Получение сообщений из Telegram
Алиса пока не умеет сама начинать диалог, поэтому отправка ответных сообщений боту не имеет смысла, и озвучены на колонке они не будут.
В будущем (если это будет востребовано - пишите автору) предусмотрена возможность озвучивания сообщений по просьбе пользователя. Например, по команде "Проверь мои сообщения".
Если у вас несколько умных колонок
Сейчас все контакты хранятся в базе данных с привязкой к user id, который зависит от устройства, на котором запущен навык.
Это значит, что на каждой умной колонке, в каждой копии браузера и на каждом смартфоне будет свой собственный список контактов, и их нужно добавлять заново на каждом устройстве. С другой стороны, это даёт свободу (в детской комнате прописать свои контакты, включая родителей, в других - свои).
Обратная связь
Если у вас остались вопросы по использованию или появились предложения по доработке, добро пожаловать в телеграмм-группу "Электронный почтальон (обсуждение)".