-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTelegram_bot.py
More file actions
65 lines (58 loc) · 2.55 KB
/
Telegram_bot.py
File metadata and controls
65 lines (58 loc) · 2.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
import telebot
import credentials
from telebot import types
name = {}
surname = {}
age = {}
mail = {}
bot = telebot.TeleBot(credentials.TOKEN)
@bot.message_handler(commands=["start","help"])
def send(message):
bot.reply_to(message, "/reg - команда для регистрации")
@bot.message_handler(commands=["reg"])
def exo(message):
bot.send_message(message.from_user.id, "Привет! Давай познакомимся! Как тебя зовут?")
bot.register_next_step_handler(message, reg_name)
def reg_name(message):
global name
name[message.from_user.id] = message.text
bot.send_message(message.from_user.id, "Какая у вас фамилия?")
bot.register_next_step_handler(message, reg_surname)
def reg_surname(message):
global surname
surname[message.from_user.id] = message.text
bot.send_message(message.from_user.id, "Какая у вас электронная почта?")
bot.register_next_step_handler(message, reg_mail)
def reg_mail(message):
global mail
mail[message.from_user.id] = message.text
bot.send_message(message.from_user.id, "Сколько вам лет?")
bot.register_next_step_handler(message, reg_age)
def reg_age(message):
global age
global name
global surname
global mail
age[message.from_user.id] = message.text
try:
age[message.from_user.id] = int(message.text)
statement = "Вам " + str(age[message.from_user.id]) + ", вас зовут " + str(
name[message.from_user.id]) + " " + str(surname[message.from_user.id]) + " и ваша почта " + str(
mail[message.from_user.id]) + " Все верно?"
keyboard = types.InlineKeyboardMarkup()
key_y = types.InlineKeyboardButton(text="Да", callback_data="yes")
keyboard.add(key_y)
key_n = types.InlineKeyboardButton(text="Нет", callback_data="no")
keyboard.add(key_n)
bot.send_message(message.from_user.id, text=statement, reply_markup=keyboard)
except Exception:
bot.send_message(message.from_user.id, "Вводите цифры!")
bot.register_next_step_handler(message, reg_age)
@bot.callback_query_handler(func=lambda call: True)
def callback_worker(call):
if call.data == "yes":
bot.send_message(call.message.chat.id, "Данные записаны")
elif call.data == "no":
bot.send_message(call.message.chat.id, "Давай познакомимся заново! Как тебя зовут?")
bot.register_next_step_handler(call.message, reg_name)
bot.polling()