PostBot на стероидах — функциональная альтернатива известному Telegram боту

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

Update 01.05.2024 Отложенный и автопостинг появились в боте с возможностью настройки сразу на несколько каналов. И плюс ко всему настройска осуществляется с помощью ChatGPT! Читайте подробности в статье.

Update 17.03.2024 Теперь бот умеет создавать картинки по текстовому описанию с помощью нейросети OpenAI DALL·E 3. И это бесплатно. Как составлять текстовые запросы к DALL·E 3 читайте тут.

Update 15.05.2023 Теперь бот умеет писать тексты постов за вас c с помощью OpenAI ChatGPT. Представьте что бот - ваш копирайтер и просто объясните ему обычным языком, какой текст нужно написать.

Забегая вперед, эта публикация будет полезна smm-щикам, рекламщикам, таргетологам, спецам по сбору данных и аналитике. И конечно тем, кто знает, что такое PostBot в Телеграме. А в конце я расскажу, что такое хороший и плохой интерфейсы Телеграм ботов.

Предыстория

Нам с командой нужно было дать рекламу продукта с приглашением на митап в нескольких профильных группах в Telegram. Списались с админами, договорились, оплатили. Группы очень активные, поток сообщений большой, поэтому решили в течение двух дней публиковать сообщение раз в 3 часа (без фанатизма). Админы говорят — присылайте сообщение, мы его добавим в систему автопостига. Отправляю сообщение. Первая публикация — слетело все форматирование текста. Сообщение состояло из видео, аккуратно и дотошно отформатированного текста (мы жуткие педанты) и кнопки со ссылкой.

Пишу админам. Спрашиваю, вы маркап или не маркап? А они даже слово такого не знают. Говорят, оформите пост в @PostBot.

Захожу в @PostBot, загружаю видео, под видео ввожу текст, форматирую его как надо, создаю пост. Тестирую отправку поста в группу — форматирование слетает.

Пишу админам: "Мы же заплатили за рекламу с форматированием, решайте вопрос". Они говорят: "Ничем помочь не можем, у нас все тексты люди с помощью эмодзи форматируют, а вы тут со своими Моноширинными текстами".

Патовая ситуация, накрылась реклама.

О чем мы вообще?

@PostBot — это бот, в котором можно создать пост, а потом отправить его в любой телеграм канал или группу с использованием Inline функционала Телеграма в виде сообщения.

Это очень удобно.

Кроме того, системы автопостинга и модерации каналов умеют работать с Inline ботами.

Поэтому сценарий получается такой: делаем в боте пост, отправляем Id поста админу канала, где хотим рекламироваться, он его вставляет в систему автопостинга и вуаля.

Проблема в том, что бот этот вообще ничего не умеет. Только текст и медиа хранить. Да и то, что умеет — делает плохо. А используется просто повсеместно. Аудиторию имеет огромную. И альтернатив почти нет.

Есть еще множество ботов, работающих в inline режиме. Например, бот @like — позволяет под сообщения добавлять кнопки с эмодзи.

Проблематика

Поискал я боты-аналоги, нашёл парочку. Но все они напоминают наколенные поделки. И в каждом что-то, да не то.

Но основная проблема — это безусловно сохранение форматирование текста. Задача времён нейросетей. В такие времена такая задача должна решаться с полным поражением конкурентов и с размахом.

Решено — напишу за пару недель своего убийцу PostBot’а! Точнее, уже написал.

@PostOnSteroidsBot приветствует вас!

Функционал нужный

После анализа своих хотелок, того, что есть на рынке и частичного погружения в функционал Telegram API получился такой список функций.

  • Создание постов со всеми поддерживаемыми Telegram медийными типами данных.
  • Форматирование не слетающее, с возможностью конвертации. Например, есть у вас текст в html, вы его скормили боту, а потом зачем-то захотели получить его в формате markdown — да пожалуйста (на самом деле на очень сложных разметках может сбоить, но отладим со временем).
  • Визуальный конструктор кнопок (а то везде структуру кнопок и их имена надо отправлять текстом определённого формата).
  • Типы кнопок — все, что поддерживает телеграм, то есть ссылки, репост и кнопка-счётчик (это где после нажатия циферка появляется).
  • Количество кнопок — максимум, что потянет Телеграм в одном сообщении, а это оказалось около 90 штук. Напишите в любом чате @PostOnSteroidsBot 1 и убедитесь сами.
  • Статистика нажатий кнопок и публикации постов в Excel прямо в боте. Другие Inline боты вообще не дают статистику.

Ну что же. Неделя работы и все готово. Смотрю, а радости нет. Да, 90 кнопок, форматирование не слетает. А нет её, радости.

Функционал — а потому что можно

Думаю, а выжму-ка я всё, что возможно из Inline функционала Телеграм ботов и Telegram API. Зачем? Не знаю. Сначала выжму, а потом кейсы придумаю. Отличный бизнесовый подход, особенно, когда пишешь бесплатного бота.

И вот что получилось.

Глобальные кнопки счётчики

Если посмотреть, как работает бот @like или аналоги — получается вот такая картина:

  • делаете в боте сообщение с кнопками под ним;
  • это сообщение можно опубликовать в любом количестве чатов;
  • в каждом чате, где опубликовано сообщение, количество нажатий кнопок пользователями считается только для этого конкретного чата.

А я хочу, чтобы было вот так:

  • есть чат 1 и чат 2 где опубликован один и тот же пост c одной кнопкой;
  • в чате 1 нажали на кнопку 5 раз -> и в чате 1, и в чате 2 цифра нажатий этой кнопки обновилась и стала 5;
  • в чате 2 нажали на кнопку 6 раз -> и в чате 2, и в чате 1 цифра нажатий обновилась и стала 11.

Сделано. Попробуйте. Напишите в любом Телеграм чате и нажмите кнопку отправить.

@PostOnSteroidsBot 1

Кнопки toggle и кнопки обычные

Ещё раз.

Если посмотреть, как работает бот @like или аналоги — получается вот такая картинка. Есть под сообщением, например, две кнопки, 1 и 2. Они работают как toggle. То есть, нажимаете на кнопку 1, ей добавляется + 1. Нажимаете на кнопку 2, у кнопки 1 будет на счётчике нажатий отнято одно значение, а кнопке 2 — добавлено.

Так сделаем же так, чтобы кнопки могли работать не только в режиме toggle.

В результате при создании кнопок поста вы можете выбрать тип:

  • переключатель, он же toggle;
  • обычные - пользователь может нажимать на каждую и у каждой будет + 1.

Зачем это баловство нужно?

Как выяснилось, теперь, те же кнопки под постом могут быть не только эмодзи кнопками с цифрами. С помощью них можно проводить опросы. Причем глобальные, кросс групные/чатные или как это еще назвать. И аудитория небольших чатов будет видеть, что на кнопки нажимают в других чатах и это потенциально может их привлечь к участию в опросах.

Также можно миксовать кнопки ссылки и кнопки счётчки в интересные форматы. Не просто добавлять кнопки в ряд с вопросами, а делать, например, вот так.

@PostOnSteroidsBot 2 - напишите в любом Телеграм чате.<br />
@PostOnSteroidsBot 2 - напишите в любом Телеграм чате.

Вот еще примеры:

  • @PostOnSteroidsBot 2 - интересная комбинация опроса и ссылок в одном посте.
  • @PostOnSteroidsBot 3 - классический опрос.
  • @PostOnSteroidsBot 4 - классический опрос.
  • @PostOnSteroidsBot 5 - опрос с применением Gif'ки, для объяснения вариантов ответа.
  • @PostOnSteroidsBot 6 - а такой вариант поможет собрать информацию об активности аудитории в разных чатах. Только надо что-то более правдивое придумать. Я не смог. :)

Что дальше?

Я пользуюсь ботом сам и пользуются мои коллеги.Бот бесплатный.И хочется еще сделать несколько безумных фич (о чём ниже).

Буду благодарен за критику и советы, где можно на бесплатной основе рассказать о боте.

Добъём уж корзинку функций по полной

Сделаю в ближайшем будущем или все или какую-то часть. Если есть безумные идеи по фичам — пишите, запилим. И чем безумнее, тем лучше.

  • Помощник ChatGPT для написания текста постов. Думаю, некоторый бюджет ежемесячно оплаты API OpenAI я осилю сам, но придётся сделать ограничение на количество раз использования помощника в день.- Настройка текста ответа после нажатия на кнопку счётчик.
  • Бесконечные нажатия на кнопки одним пользователем (или с возможностью настройки ограничения, например, не более 20 нажатий одним пользователем). А почему бы и нет?
  • Микс toggle и обычных кнопок в одном посте - ну это вообще уже дичь.- Сбор текстовых ответов на посты. Представьте, делаете опрос с кнопками на каждый ответ и есть кнопка "Другое". При нажатии всплывает окно с текстом - сделайте реплай этому сообщению и расскажите, какое другое? И соответственно, все эти ответы будут попадать в ексель со статистикой.
  • Трекинг кнопок ссылок.

Советы по интерфейсу Телеграм ботов

Напоследок, наблюдения и советы бывалого разработчика одного бота.

Просматривая кучу Телеграм ботов, я заметил такую штуку — очень часто разработчики ботов используют функционал API Телеграма не для того, для чего он предназначен.

Вот с кнопками

Есть 2 вида кнопок:

Inline Keyboards - нужны, когда взаимодействие с ботом должно происходить без отправки ему текстовых или других сообщений. Эти кнопки отображаются под текстом сообщения.

Сustom keyboards - нужны, когда пользователь должен отправить текстовое сообщение с предустановленным текстом.

Очень часто боты используют Custom keyboards в для реализации обычного меню. Эти клавиатуры занимают ценное место, выглядят плохо и неудобные. Я когда такое вижу, сразу перестаю ботом пользоваться. Какое-то неуважение со стороны разработчиков к пользователю.

Используйте Сustom keyboards только для того, для чего они предназначены.

Вот с сообщениями в боте

Самый простой вариант реализации, это при нажатии на кнопку в боте отправлять пользователю текст и кнопки в новом сообщении. Ну зачем?

Там где возможно, используйте функции редактирования текста и клавиатур сообщения.

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

Всем спасибо за внимание.

Спасибо за критику и советы по распространению бота убийцы @PostBotOnSteroids.

55
1 комментарий

Удивлена, что нет никакой активности под статьей. Опробовала бот - весьма неплохо! Спасибо за ваш труд!

1