Задача
В закрепленном сообщении нашего чата всегда анонс мероприятий. Выглядит это так:
В сообщении есть список мероприятий и есть ссылка на сайт. Пользователи чата попросили для удобства добавить ссылки для всех событий.
Тогда на сайте была реализована кнопка "Скопировать все", которая копирует данные о мероприятиях в таком формате:
Задача заключается в том, чтобы преобразовать длинные ссылки в короткие текстовые ссылки.
Исследование
Перед тем как создавать какой-либо новый программный продукт, есть смысл провести исследование и выяснить: существует ли уже готовое решение?
На официальной странице мессенджера Telegram есть пример бота, который мне нужен: Markdown Bot. При его тестировании оказалось, что от обрезает часть текста:
Это классический пример того, как стандартное решение на работает.
Попытки найти, что-нибудь подходящее не увенчались успехом: частные боты либо не работают вовсе, либо делают не то, что надо. Так что можно приступать к программированию.
Создание бота
Я изменил приветственное сообщение и внес необходимые изменения: бот в отвечает пользователю его же сообщением только в разметке Markdown. Пример:
В конце работы я опубликовал бота, загрузил исходный код на гитхаб, нарисовал логотип для бота и дописал этот пост.
Дополнительно
Бот: https://t.me/events4friendsbot
Чат: https://t.me/events4friends
Сайт: https://events4friends.ru/