· 7 years ago · Jan 21, 2019, 04:42 PM
1import sqlite3
2
3bot = telebot.TeleBot(const.token)
4
5conn = sqlite3.connect("mybase.db")
6cursor = conn.cursor()
7cursor.execute("CREATE TABLE IF NOT EXISTS stats (id INT, username VARCHAR, name VARCHAR, surname VARCHAR,)")
8conn.commit()
9conn.close()
10
11@bot.message_handler(commands=['start'])
12def start(message):
13 userid = message.from_user.id
14 username = message.from_user.username
15 user_name = message.from_user.first_name
16 user_surname = message.from_user.last_name
17 spis = (userid, username, user_name, user_surname)
18 conn = sqlite3.connect("mybase.db")
19 cursor = conn.cursor()
20 cursor.execute("INSERT INTO stats (id, username, name, surname) VALUES (?, ?, ?, ?)", spis)
21 conn.commit()
22 conn.close()
23 my_id = 410924655
24 if userid == my_id:
25 bot.send_message(message.chat.id, 'Привет, ХозÑин!', reply_markup=menu)
26 time.sleep(1)
27 bot.send_message(message.chat.id, 'Выбери нужный пункт:', reply_markup=admenu)
28 else:
29 bot.send_message(message.chat.id, 'Привет, ' + message.from_user.first_name + '!', reply_markup=menu)
30 time.sleep(1)
31 bot.send_message(message.chat.id, 'Ðажми кнопку "Задать вопроÑ" и произнеÑи вопроÑ.nШар ответит тебе через 5 Ñекунд.', reply_markup=quest)
32
33@bot.message_handler(content_types=['text'])
34def message(message):
35 if message.text == 'Реклама в боте':
36 bot.send_message(message.chat.id, 'Чтобы ознакомитьÑÑ Ñ Ð¿Ñ€Ð°Ð¹Ñом и заказать рекламу напишите нам 👉🼠@Dмой акк', reply_markup=quest)
37 elif message.text == 'Тех. поддержка':
38 bot.send_message(message.chat.id, 'ЕÑли у Ð²Ð°Ñ ÐµÑть какой-то вопроÑ, Ð¿Ð¾Ð¶ÐµÐ»Ð°Ð½Ð¸Ñ Ð¸ предложениÑ, то напишите нам 👉🼠@мой акк', reply_markup=quest)
39 else:
40 bot.send_message(message.chat.id, message.from_user.first_name + ', Ñ Ð²Ñего лишь бот. Может быть у Ñ‚ÐµÐ±Ñ ÐµÑть какой-то вопроÑ?', reply_markup=quest)
41
42@bot.callback_query_handler(func=lambda call: True)
43def ques(call):
44 if call.data == 'quest1':
45 bot.send_message(call.message.chat.id, 'ПроизнеÑите вопроÑ')
46 o = random.choice(const.otvet)
47 time.sleep(5)
48 bot.send_message(call.message.chat.id, o)
49 time.sleep(1)
50 bot.send_message(call.message.chat.id, 'Может быть у Ð²Ð°Ñ ÐµÑть еще вопроÑ?', reply_markup=quest)
51 elif call.data == 'stat':
52 conn = sqlite3.connect("mybase.db")
53 cursor = conn.cursor()
54 cursor.execute("SELECT COUNT(*) stats")
55 r = cursor.fetchall()
56 conn.close()
57 bot.send_message(call.message.chat.id, f'Ð’Ñего пользователей: {r[0][0]}')
58
59import sqlite3
60import telebot
61
62
63bot = telebot.TeleBot("")
64MY_ID = 410924655
65
66
67def db_write(sql):
68 conn = sqlite3.connect("mybase.db")
69 cursor = conn.cursor()
70 cursor.execute(sql)
71 conn.commit()
72 conn.close()
73
74
75def db_recv(sql):
76 conn = sqlite3.connect("mybase.db")
77 cursor = conn.cursor()
78 cursor.execute(sql)
79 r = cursor.fetchall()
80 conn.close()
81
82 return r
83
84
85def new_user(message):
86 userid = message.from_user.id
87 username = message.from_user.username
88 fname = message.from_user.first_name
89 lname = message.from_user.last_name
90
91 db_write(
92 "INSERT INTO stats (id, username, name, surname) VALUES (" +
93 f'{userid}, "{username}", "{fname}", "{lname}")'
94 )
95
96
97@bot.message_handler(commands=['start'])
98def start(message):
99
100 # Пример проверки
101 r = db_recv(
102 "SELECT COUNT(*) FROM `stats` WHERE `id` = " +
103 str(message.from_user.id)
104 )
105
106 if r[0][0] == 0:
107 new_user(message)
108
109 if message.from_user.id == MY_ID:
110 bot.send_message(message.chat.id,
111 'Привет, ХозÑин!',
112 reply_markup=menu)
113 bot.send_message(message.chat.id,
114 'Выбери нужный пункт:',
115 reply_markup=admenu)
116 else:
117 bot.send_message(message.chat.id,
118 'Привет, ' + message.from_user.first_name + '!',
119 reply_markup=menu)
120 bot.send_message(message.chat.id,
121 'Ðажми кнопку "Задать вопроÑ" и произнеÑи вопроÑ.n' +
122 'Шар ответит тебе через 5 Ñекунд.',
123 reply_markup=quest)
124
125
126@bot.message_handler(content_types=['text'])
127def message(message):
128 if message.text == 'Реклама в боте':
129 bot.send_message(
130 message.chat.id,
131 'Чтобы ознакомитьÑÑ Ñ Ð¿Ñ€Ð°Ð¹Ñом и заказать' +
132 ' рекламу напишите нам 👉🼠@Dмой акк',
133 reply_markup=quest)
134 elif message.text == 'Тех. поддержка':
135 bot.send_message(
136 message.chat.id,
137 'ЕÑли у Ð²Ð°Ñ ÐµÑть какой-то вопроÑ, Ð¿Ð¾Ð¶ÐµÐ»Ð°Ð½Ð¸Ñ ' +
138 'и предложениÑ, то напишите нам 👉🼠@мой акк',
139 reply_markup=quest
140 )
141 else:
142 bot.send_message(
143 message.chat.id,
144 message.from_user.first_name + ', Ñ Ð²Ñего лишь бот. ' +
145 'Может быть у Ñ‚ÐµÐ±Ñ ÐµÑть какой-то вопроÑ?',
146 reply_markup=quest
147 )
148
149
150@bot.callback_query_handler(func=lambda call: True)
151def ques(call):
152 if call.data == 'quest1':
153 bot.send_message(call.message.chat.id, 'ПроизнеÑите вопроÑ')
154 o = random.choice(const.otvet)
155 bot.send_message(call.message.chat.id, o)
156
157 bot.send_message(
158 call.message.chat.id,
159 'Может быть у Ð²Ð°Ñ ÐµÑть еще вопроÑ?',
160 reply_markup=quest
161 )
162 elif call.data == 'stat':
163 r = db_recv("SELECT COUNT(*) FROM `stats`")
164 bot.send_message(call.message.chat.id,
165 f'Ð’Ñего пользователей: {r[0][0]}')
166
167if __name__ == "__main__":
168 db_write(
169 "CREATE TABLE IF NOT EXISTS stats " +
170 "(id INT, username VARCHAR, name VARCHAR, surname VARCHAR,)"
171 )