August 27, 2023

Bot Reposting

Что умеет этот бот?

Бот обработывает все сообщения (текстовое, фото , видео, аудио и т.д.)

Но нам требуется для работы только текстовые и фото сообщения и только определенные группы чтобы не мусорить и не усложнять задачу боту

А чтобы решить эту проблему используем фильтры

Фильтры:

Фильтры на группы:

В нашем случае используем 5 групп чтобы собирать заказы(на самом деле можно ещё больше, сколько угодно групп, чатов и прочее, но не забудьте ваш аккаунт должен в этих группах присутствовать)

Далее нам нужны фильтры на тип сообщений:

Нам пока достаточно сообщения с типом: текстовое и фото чтобы обрабатывать заказы только этих видов

По желанию можно добавить сообщение и типов видео; аудио, документы, голосовые и так далее

Фильтры на определенные слова

Нам нужны только определенные заявки, а всё остальное нас не интересует (реклама цехов, поиск швеи, продажа остатков и так далее)

Для этого используем несколько слов для фильтра чтобы проверить сообщения в группах

В сообщении если встречаются слова: "#ищу" и "производство"

В сообщении если встречаются слова: "ищу" и "цех"

Чтобы бот случайно не принял такую рекламу как заявка:

Ещё один дополнительный фильтр

В сообщения если присутствует слова "#ищу", "производство" и еще слово "заказ", то такое сообщение игнорируется и продолжит работу дальше

Фильтры на дубликаты:

Часто встречается когда одна заявка встречается в нескольких группах и чтобы в нашей группе не опубликовалось несколько раз одна и та же заявка добавили фильтр на дубликаты

Как это работает?

От одного пользователя одновременно опубликуется только одна заявка, чтобы ещё раз опубликовалось новая заявка, в нашей группе должно ещё 4 новых других заявок опубликовалось, а только потом допускается новые заявки от нашего первого пользователя (по желанию можно изменить настройки и количество сообщений после которого возможно повторная заявка)

Редактирование сообщения перед тем как опубликовать

Часто встречаются когда в тексте сообщений заявках присутствуют номера телефонов; ссылки; @юзернеймы и т.д.

Чтобы в бесплатной группе при публикации не было таких личных информации бот отредактирует сообщения

Бот убирает все цифры; @упоминание себя; ссылки и только потом отправляет в бесплатную группу

А в платную группу в конце заявки бот добавляет @юзернейм пользователя который отправил сообщение

В те случаи когда у пользователя который отправил заявку отсутствует юзер нейм

Бот все эти сообщения присылает вам в личку

Бот для работы использует ваш телеграм аккаунт(Всё же следует использовать второстепенный аккаунт чтобы избежать от лишных проблем) и обработывает все входящие и исходящие сообщения (Каналы; Группы; Личные сообщения и т.д.)

Для того чтобы не перезагрузить бот использовать фильтры на чаты (Обработываются только сообщение из определенных групп) указав ID чата

Как узнать ID Чата, группы ?

Обратимся за помощью к боту : @username_to_id_bot

Скопируем username бота и поставим В поисковик:

Первый бот в списке то что нам нужно

Переходим и запускаем:

После того как запустили бота с помощью команды /start у нас появляется такое меню в экране

Выбераем необходимую кнопку: Channel ( в нашем случае нам нужно узнать ID канала)

Чудо совершилось за несколько простых шагов и в наших руках ID который нам нужен был