Автоматические поздравления в группе Телеграм
Хочу поделиться простым процессом, который, как успела показать практика, очень здорово поддерживает общение и дает положительные эмоции участникам нашего сообщества.
Идеей было создать телеграм-бот, который бы отслеживал дни рождения всех наших коллег, участников группы, и отправлял нее поздравления. И так как основная база контактов нашей компании ведется в Airtable, связку с телеграм-ботом сделали там. (Кстати, тем, кто еще не знаком с этой платформой, советую присмотреться. По сути, это аналог гугл-таблиц, но с более наглядным и широким функционалом.)
Делали своими low-code силами, логика получилась следующая...
I. Подготовка таблицы Airtable
1. В таблицу с данными коллег добавили три дополнительных столбца с формулами:
Итого основные вводные у нас:
- "ФИО"
- "Дата рождения" в формате dd/mm/yyyy
- "Имя пользователя в Телеграм"
Доп.столбцы:
- "Дата поздравления": считаем ближайший к сегодняшнему день рождения = DATETIME_PARSE(DATETIME_FORMAT({Дата рождения},'MM/DD')&"/"&YEAR(NOW()))
- "Когда?": проверяем, сегодня ли день рождения = IF(IS_SAME({Дата поздравления},TODAY(),'days'),"Сегодня","Не сегодня")
- "Поздравление: проверка на непустое значение ФИО = IF({Когда?}="Сегодня",IF({ФИО педагога}="","Нет ФИО","Поздравляем"))
2. Создали бота через @BotFather, сохранили его токен.
3. Взяли Current chat ID = id группы Телеграм с участниками с помощью @getmyid_bot (если здесь нужно пояснить подробнее, напишите в комментариях, добавлю описание по шагам).
II. Создание Automation
Связать таблицу Airtable с нашей группой в Телеграме помог инструмент Automations Airtable:
Всего понадобилось три шага:
- Триггер: Задаем расписание запуска.
- Действие 1: Ищем записи, удовлетворяющие условию.
- Действие 2: Запускаем скрипт.
Подробнее:
1. Задали TRIGGER: время проверки срабатывания и отправки поздравлений (каждый день в 10:00) и дату старта, с которой запустили процесс.
Это означает, что каждый день в 10:00 данная автоматизация начинает проверку значение и в случае наличия именинников, отправляет поздравление в чат группы.
2. ACTION 1. Find records: Ищем в нашей таблице именинников. В нашем случае это строки с непустым значением в столбце "Поздравление". Также мы добавили проверку на еще один столбец "Статус", но если вы хотите делать проверку по всем строкам, достаточно будет одной первой проверки:
3. ACTION 2. Скрипт. Запускается в случае, если в ACTION 1 найдены значение. Отправляет поздравления в телеграм.
В нем задали 3 переменных. По сути, это части текста сообщения, который бот отправит в чат группы. Компоновать, формулировать их можно как угодно, не обязательно повторять дословно.
Код скрипта:
Во время тестов в логах проверяете, что выдается:
Вуаля! Процесс окончен. Теперь каждый именинник будет получать поздравления от бота и следом — от коллег :)
Мы тут бота перед Новым Годом запустили.
Затестируйте, уверен, что понравится.
https://t.me/govorunnetbot