marka = cursor.execute("SELECT * FROM marka").fetchall()
keyboard = types.InlineKeyboardMarkup(row_width=1)
button_list = [types.InlineKeyboardButton(text=f'{marka[x][1]}', callback_data=f'marka|{marka[x][0]}' ) for x in range(len(marka))]
keyboard.add(*button_list)
bot.send_message(message.chat.id, f"Здравствуйте, {message.from_user.username}\nВоспользуйтесь меню ниже ", parse_mode="html")
meny = types.InlineKeyboardMarkup(row_width=1)
cup1 = types.InlineKeyboardButton(text="Загрузить TDATA", callback_data="download")
meny.add(cup1)
photo = open("photo.png", "rb")
bot.send_photo(message.chat.id, photo, " Выберите нужную функцию:", reply_markup=meny)
def answer(call):
chat_id = call.message.chat.id
msg_id = call.message.message_id
bot.delete_message(chat_id, msg_id)
if call.data == 'help':
import telebot
from telebot import types
import sqlite3
bot = telebot.TeleBot(TOKEN)
link = 'https://t.me/(name_bot)'
@bot.message_handler(commands=['start'])
def start(message):
msg = str(message.text).rsplit(' ', 1)
ref = types.ReplyKeyboardMarkup(resize_keyboard=True)
ref_btn = types.KeyboardButton('Ваша реф ссылка')
ref_btn2 = types.KeyboardButton('Мои рефералы')
ref.add(ref_btn, ref_btn2)
conn = sqlite3.connect('db.db')
cur = conn.cursor()
user = cur.execute("SELECT id FROM users WHERE chat_id == ?", (message.chat.id,)).fetchone()
if user:
#Юзер уже сть в базе
bot.send_message(message.chat.id, 'Доброго времени суток', reply_markup=ref)
else: # Юзера пришел в первые
if len(msg) == 2: #Проверяем есть ли реф сылка
id_referer = msg[1]
bot.send_message(message.chat.id, f'Вас пригласили в чат.\nID реферера: {msg[1]}', reply_markup=ref)
cur.execute("INSERT INTO users(f_name, l_name, chat_id, referer) VALUES (?, ?, ?, ?)", (message.from_user.first_name, message.from_user.last_name, message.chat.id, id_referer))
conn.commit()
conn.close()
else: # Сюда попадаем если реф ссылки нет
cur.execute("INSERT INTO users(f_name, l_name, chat_id) VALUES (?, ?, ?)",
(message.from_user.first_name, message.from_user.last_name, message.chat.id))
conn.commit()
conn.close()
bot.send_message(message.chat.id, 'Вы сами нашли наш чат', reply_markup=ref)
@bot.message_handler(content_types=['text'])
def ref(message):
if message.text == 'Ваша реф ссылка':
bot.send_message(message.chat.id, 'Ваша реф ссылка:')
bot.send_message(message.chat.id, f'{link}?start={message.chat.id}')
elif message.text == 'Мои рефералы':
conn = sqlite3.connect('db.db')
cur = conn.cursor()
referal = cur.execute("SELECT * FROM users WHERE referer = ?", (message.chat.id,)).fetchall()
bot.send_message(message.chat.id, f'Количество рефералов:\n {len(referal)}')
bot.infinity_polling()
def wiki_app(message):
#Старайся не использовать глобальные переменные
global wiki_found, count
wiki_found.clear()
answer = 'Приветствую вас в мини-приложении "Википедия"!\n' \
'В этом приложении вы можете найти что-либо вам нужное на самом большом поисковом сервисе мира!\n' \
'Для этого нажмите кнопку старт!'
markup = telebot.types.InlineKeyboardMarkup(row_width=2)
wiki_yes = telebot.types.InlineKeyboardButton(text='Да ✔', callback_data='wiki_yes')
wiki_no = telebot.types.InlineKeyboardButton(text='Нет ✖', callback_data='wiki_no')
markup.add(wiki_no, wiki_yes)
#Что конкретно происходит в этой строке??
#message.text = message.text.strip
bot.send_message(chat_id=message.chat.id, text=answer, reply_markup=markup)
@bot.callback_query_handler(func=lambda call: True)
def wiki_app_start(call):
chat_id = call.message.chat.id
data = call.data
if data == 'wiki_yes':
bot.send_message(chat_id, text='Мини приложение запускается...')
time.sleep(1.6)
mes = bot.send_message(chat_id, text='Напишите сюда,то что нужно найти в Википедии!')
#Передаем сообщение юзера в другую функцию
bot.register_next_step_handler(mes, search)
elif data == 'wiki_no':
bot.send_message(chat_id, text='Отмена поиска.')
#game_menu(message) #Неизвестно где эта функция и что она делает
def search(message):
wiki_found = message.text
wikipedia.set_lang('ru')
already_fonding = wikipedia.search(wiki_found)
bot.send_message(chat_id=message.chat.id, text=already_fonding)
markup_pictures_choice=types.ReplyKeyboardMarkup(resize_keyboard=True)
button1 = types.KeyboardButton("Милое")
button2 = types.KeyboardButton("Память")
button3 = types.KeyboardButton("Назад")
markup_pictures_choice.add(button1,button2, button3)
geo = {'format': 'json', 'lat': f'{message.location.latitude}', 'lon': f'{message.location.longitude}'}
r = requests.get('https://nominatim.openstreetmap.org/reverse', params=geo)