evgeniy8705
@evgeniy8705
Повелитель вселенной

Как очистить историю канала с помощью телеграм бота?

Подскажи как очищать к примеру каждые 10 минут историю канала с помощью бота?
Бот будет посылать в канал каждые 30 секунд сообщения, и нужно чтобы со временем канал очищался. Можно ли это сделать?
Использую node-telegram-bot-api
  • Вопрос задан
  • 112 просмотров
Пригласить эксперта
Ответы на вопрос 2
alexk111
@alexk111
Автоматизация VK, TG и др. на botodrom.com
Готовый код не выдам, но алгоритм будет следующий:

- при добавлении сообщения методом `sendMessage` - запоминаем его `message_id`
- по таймеру удаляем сообщения методом `deleteMessage` для каждого `message_id`
Ответ написан
@Azperin
Дилетант
Я бы что то вроде такого предложил
let messagesToDelete = [];
telegramBot.sendMessage('some').then((m) => {
	messagesToDelete.push({
		messageId: m.message_id,
		chatId: m.chat.id
	});
}).catch(console.error);

function wipeHistory() {
	messagesToDelete.forEach(m => {
		telegramBot.deleteMessage(m.chatId, m.messageId).then((success) => {
			if (success) {
				messagesToDelete = messagesToDelete.filter((v) => (v.messageId !== m.message_id && v.chatId !== m.chat.id));
			};
		}).catch(console.error);
	});
};

setInterval(wipeHistory, 60 * 10 * 1000);
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Яндекс Москва
от 100 000 до 300 000 ₽
Яндекс Санкт-Петербург
от 100 000 до 300 000 ₽
от 120 000 до 160 000 ₽
19 янв. 2021, в 12:45
80000 руб./за проект
19 янв. 2021, в 12:20
40 руб./за проект
19 янв. 2021, в 12:02
10000 руб./за проект