Добрый вечер, я в этом деле новичок и написал вот такой код вк_бота:
import vk_api, time, random
from vk_api.longpoll import VkLongPoll, VkEventType
from vk_api.utils import get_random_id
# Подключаем токен и longpoll
bh = vk_api.VkApi(token="token")
give = bh.get_api()
longpoll = VkLongPoll(bh)
# Создадим функцию для ответа на сообщения в лс группы
def blasthack(id, text):
bh.method('messages.send', {'user_id': id, 'message': text, 'random_id': get_random_id()})
# Слушаем longpoll(Сообщения)
for event in longpoll.listen():
if event.type == VkEventType.MESSAGE_NEW:
# Чтобы наш бот не слышал и не отвечал на самого себя
if event.to_me:
# Для того чтобы бот читал все с маленьких букв
message = event.text.lower()
# Получаем id пользователя
id = event.user_id
# Доисторическая логика общения на ифах
# Перед вами структура сообщений на которые бот сможет ответить, elif можно создавать сколько угодно, if и else же могут быть только 1 в данной ситуации.
# if - если, else - иначе(значит бот получил сообщение на которое не вызвана наша функция для ответа)
if message == 'привет':
blasthack(id, 'Привет, я бот!')
elif message == 'как дела?':
blasthack(id, 'Хорошо, а твои как?')
elif message == "1":
f = open("spam.txt", "r")
lins = f.readlines()
for lin in lins:
blasthack(id, lin)
time.sleep(random.randint(6, 14))
f.close()
else:
blasthack(id, 'Я вас не понимаю! :(')
Дело в том, что при выполнение данного условия первым пользователем
elif message == "1":
бот не видит второго пользователя. Как переделать код, чтобы все работало?