Python:
import vk_api, json
import sqlite3
from vk_api.longpoll import VkLongPoll, VkEventType
vk_session = vk_api.VkApi(token="token")
session_api = vk_session.get_api()
longpool = VkLongPoll(vk_session)
db = sqlite3.connect('payson.db')
sql = db.cursor()
sql.execute("""CREATE TABLE IF NOT EXISTS users (
userId BIGINT,
act TEXT,
nick TEXT,
prefix TEXT,
post TEXT
)""")
db.commit()
userAct = '0'
def sendMsg(id, some_text):
vk_session.method("messages.send", {"user_id": id, "message": some_text, "random_id": 0})
def fixMsg(msg):
msg = "'"+msg+"'"
return msg
for event in longpool.listen():
if event.type == VkEventType.MESSAGE_NEW and event.to_me:
msg = event.text.lower()
id = event.user_id
sql.execute(f"SELECT userId FROM users WHERE userId = '{id}'")
if sql.fetchone() is None:
sql.execute("INSERT INTO users VALUES (?, ?, ?, ?, ?)", (id, "newUser", "0", "0", "0"))
db.commit()
sendMsg(id, "Привет, напиши 'Войти'")
else:
userAct = sql.execute(f"SELECT act FROM users WHERE userId = '{id}'").fetchone()[0]
if userAct == "newUser" and msg == "Войти":
sendMsg(id, "Отправь 'рег' для регистрации.")
elif userAct == "newUser" and msg == "рег":
sql.execute(f"UPDATE users SET act = 'getNick' WHERE userId = {id}")
db.commit()
sendMsg(id, "Напиши свое имя:")
elif userAct == "getNick":
sql.execute(f"UPDATE users SET nick = {fixMsg(msg)} WHERE userId = {id}")
sql.execute(f"UPDATE users SET act = 'getPrefix' WHERE userId = {id}")
db.commit()
sendMsg(id, "Твой префикс:")
elif userAct == "getPrefix":
sql.execute(f"UPDATE users SET prefix = {fixMsg(msg)} WHERE userId = {id}")
sql.execute(f"UPDATE users SET act = 'getPost' WHERE userId = {id}")
db.commit()
sendMsg(id, "Твоя должность:")
elif userAct == "getPost":
sql.execute(f"UPDATE users SET post = {fixMsg(msg)} WHERE userId = {id}")
sql.execute(f"UPDATE users SET act = 'full' WHERE userId = {id}")
db.commit()
sendMsg(id, "Регистрация прошла успешно!")
elif userAct == "full" and msg == "Войти":
sendMsg(id, "Ты зарегистрированный пользователь, тебе доступно все: Хлеб, вода, овощи, фрукты, алкоголь, оружие, лекарства.")
Сама суть. Бот вк, мне нужно, чтобы бот кидал не много раз по типу
ник
- ответ
возраст
- ответ
А сразу
Ник
Возраст
И пользователь разом отвечал
Денис
19.
Мне сказали можно сделать по типу info_list = message.text.split("\n")
Но я так и не вкурил. Найдитесь кто поможет. Тг могу связаться так же.