Хочу поделиться простым процессом, который, как успела показать практика, очень здорово поддерживает общение и дает положительные эмоции участникам нашего сообщества.
Идеей было создать телеграм-бот, который бы отслеживал дни рождения всех наших коллег, участников группы, и отправлял нее поздравления. И так как основная база контактов нашей компании ведется в 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("ДР сегодня нет");
}
Во время тестов в логах проверяете, что выдается:

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