@Toxs1k

Как сделать чтобы бот реагировал на сообщения на которые отвечаешь, а не пересылаешь?

def isAdmins(event, cmd):
	if event.type == VkBotEventType.MESSAGE_NEW and event.object.text.lower() == cmd:
		if event.obj.from_id in admins:
			return True
	return False

while True:
	try:
		for event in longpoll.listen():

			if isAdmins(event, 'kick' and 'кик'):
				if event.obj["fwd_messages"]:
					user_id = event.obj["fwd_messages"][0]["from_id"]
					vk.messages.send(peer_id=event.object.peer_id, sticker_id='11724', message='Исключаю @id' + str(user_id) + '(пользователя)...' '\n❌ Бан на сутки!\n После истечения срока написать ... или ...\n Чтобы узнать правила напишите в @letsbot (ЛС боту) "Правила".', random_id=0)
					time.sleep(1)
					vk.messages.removeChatUser(chat_id=event.chat_id, user_id=user_id, member_id=user_id)
					vk.messages.send(peer_id=event.object.peer_id, message='@id' + str(user_id) + '(Пользователь) был успешно исключён из беседы на сутки ✔.', random_id=0)
	
  except Exception as e:
	 print(e)
  • Вопрос задан
  • 455 просмотров
Решения вопроса 1
TTATPuOT
@TTATPuOT
https://code.patriotovsky.ru/
Читайте документацию по типу message.
Каждое пересланное сообщение передаётся в поле fwd_messages, если этого поля нет или оно пустое - сообщение не переслано.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@StockholmSyndrome
user_id = event.obj["reply_message"]["from_id"]
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы