Как удалить последнее сообщение бота Telegram

Я создал бота на php, чтобы заставить двух незнакомцев разговаривать. Функция, которую я хотел бы реализовать, — это возможность, чтобы пользователь удалял сообщение, которое уже было отправлено, и поэтому оно больше не видно другому пользователю. В частности, пользователь отвечает на сообщение, которое нужно удалить, и оно также удаляется у другого пользователя.

Я пытался использовать deleteMessage вручную, указав в качестве message_id идентификатор сообщения, отправленного ботом другому пользователю, но, очевидно, это не работает. Если я отвечаю на сообщение, которое нужно удалить, на самом деле в моем чате, оно удаляется, но другой пользователь этого не делает, потому что message_id отличается. .

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

27.10.2022 01:21

Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции — это способ манипулировать массивами и играть с массивами данных. Благодаря.

PHP — это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать.

Как в Salebot удалить только что отправленную рассылку или последнее сообщение в боте

Laravel Scout — это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он.

В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP.

Laravel — это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в.

В предыдущем посте мы создали функциональность вставки и чтения для нашей динамической СУБД. В этом посте мы собираемся реализовать функции обновления.

Еще по теме:  Где на Андроиде хранятся сохраненные фото с Телеграмма

Источник: reddeveloper.ru

телебот удалить сообщение pytelegrambotapi

Как я могу удалить последние N сообщений от любых пользователей. После написания команды удаления бот должен удалить последние сообщения по заданному номеру. Я никак не мог найти полную документацию по библиотеке pytelegrambotapi.

James Baxter anarak 7 Фев 2022 в 19:24

1 ответ

Лучший ответ

По моему опыту, вы должны сохранять message_id из последних N сообщений и циклически использовать функцию delete_message , когда вам это нужно.

bot = telegram.Bot(token=TOKEN) message_ids = <> message_id = bot.send_message(chat_id, text).message_id if chat_id in message_ids.keys(): message_ids[chat_id].append(message_id) else: message_ids[chat_id] = [message_id]

Когда вам нужно удалить сообщения из какого-то чата, вы можете это сделать (помните, что сообщения после 48 часов не могут быть удалены)

for message_id in message_ids[chat_id]: bot.delete_message(chat_id, message_id)

Я уверен, что это можно улучшить, но я думаю, что это хорошая основная идея.

Создание телеграм-ботов на python (telebot) #9 / Удаление и редактирование сообщений

Источник: question-it.com

Как удалить последнее сообщение бота в telebot?

bot.send_message(message.chat.id, «loading. «)
# код.
bot.send_message(message.chat.id, «result»)
Бот отправляет сообщение «loading», затем выполняется какой-то код, после чего бот пишет новое сообщение «result», и мне нужно удалить сообщение «loading» перед написанием «result»

  • Вопрос задан более двух лет назад
  • 4303 просмотра

Решения вопроса 1

bot.send_message возвращает объект Message с полем message_id, где хранится идентификатор сообщения, его можно дальше использовать для работы с этим сообщением.

msg = bot.send_message(message.chat.id, «loading. «) . bot.edit_message_text(«result», chat_id=message.chat.id, message_id=msg.message_id) bot.delete_message(message.chat.id, msg.message_id)

Ответ написан более двух лет назад

Нравится 6 2 комментария

GavriKos

Почти — send_message возвращает кучу параметров сообщения, айди там лежит в поле message_id.

Источник: qna.habr.com

Рейтинг
( Пока оценок нет )
Загрузка ...