Автоматические поздравления в группе Телеграм

Хочу поделиться простым процессом, который, как успела показать практика, очень здорово поддерживает общение и дает положительные эмоции участникам нашего сообщества.

Идеей было создать телеграм-бот, который бы отслеживал дни рождения всех наших коллег, участников группы, и отправлял нее поздравления. И так как основная база контактов нашей компании ведется в 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 переменных. По сути, это части текста сообщения, который бот отправит в чат группы. Компоновать, формулировать их можно как угодно, не обязательно повторять дословно.

Автоматические поздравления в группе Телеграм
Автоматические поздравления в группе Телеграм
Автоматические поздравления в группе Телеграм

Код скрипта:

let inputConfig = input.config(); var tgurl = new String(); if (inputConfig.variable2 != '') { tgurl = 'https://api.telegram.org/bot(СЮДА ВСТАВЛЯЕТЕ ТОКЕН БОТА)/sendMessage?chat_id=(Сюда вставляете Current chat ID группы Телеграм)&text=' tgurl = tgurl.concat('', inputConfig.variable1) //tgurl = tgurl.concat('', ' Value 2: ') tgurl = tgurl.concat('', inputConfig.variable2) //tgurl = tgurl.concat('', ' Value 3: ') tgurl = tgurl.concat('', inputConfig.variable3) console.log(`The value of dsc is ${tgurl}`); fetch((tgurl), {method: 'POST', body: 'Hi there'}); } else { console.log("ДР сегодня нет"); }

Во время тестов в логах проверяете, что выдается:

Автоматические поздравления в группе Телеграм

Вуаля! Процесс окончен. Теперь каждый именинник будет получать поздравления от бота и следом — от коллег :)

Автоматические поздравления в группе Телеграм
33
1 комментарий

Мы тут бота перед Новым Годом запустили.
Затестируйте, уверен, что понравится.
https://t.me/govorunnetbot