Пример #1
0
def key(message):
    if message.text == '💼 Кошелек':
        keyboard = types.InlineKeyboardMarkup()
        keyboard.add(*[
            types.InlineKeyboardButton(text=name, callback_data=name)
            for name in ['📉 Вывести BTC', '📈 Внести BTC']
        ])
        bot.send_message(message.chat.id, '<b>💼 Bitcoin-кошелек</b>\n\n'
                         '<b>Баланс:</b> 0.00 BTC\n'
                         '<b>Примерно:</b> 0 руб\n\n'
                         '<b>Всего вывели:</b> 0.00 BTC (0 руб)\n'
                         '<b>Всего пополнили:</b> 0.00 BTC (0 руб)\n',
                         reply_markup=keyboard,
                         parse_mode="Html")
    elif message.text == '📊 Обмен BTC':
        keyboard = types.InlineKeyboardMarkup()
        keyboard.add(*[
            types.InlineKeyboardButton(text=name, callback_data=name)
            for name in ['📈 Купить', '📉 Продать']
        ])
        bot.send_message(
            message.chat.id, '📊 <b>Купить/Продать Bitcoin</b>\n\n'
            'Бот работает полностью в <b>атоматическом режиме</b>. Средства поступают моментально\n',
            reply_markup=keyboard,
            parse_mode="Html")
    elif message.text == '🚀 О сервисе':
        bot.send_message(
            message.chat.id, '🚀 <b>О сервисе</b>\n\n'
            'Сервис для обмена Bitcoin.\n'
            'Пополняй внутренний кошелек с помощью Qiwi или внешнего Bitcoin-кошелька\n\n'
            'Продавай эти BTC для вывода на Сбербанк, Яндекс.Деньги, Webmoney и Qiwi. Или выводи на свой внешний Bitcoin-адрес\n\n'
            'В боте установлено ограничение минимального <b>(500 рублей)</b> и максмального <b>(20000 рублей)</b> единовременного платежа\n\n',
            parse_mode="Html")
    elif message.text == '📌 Акция':
        bot.send_message(
            message.chat.id, '📌 <b>Акция</b>\n\n'
            '<b>❗️Мы разыгрываем 0.25 BTC❗️</b>\n\n'
            'Для участия в конкурсе необходимо лишь воспользоваться нашим сервисом в период с <b>01.07.2020 по 01.08.2020</b> и иметь остаток на балансе не менее <b>0.001 BTC</b>\n\n'
            'Этот остаток принадлежит Вам (не является платой за участие). После конкурса, даже в случае победы, никакая комиссия взиматься не будет\n\n'
            'Так же <b>ОБЯЗАТЕЛЬНО укажите свой @username</b>, если он у Вас еще не указан\n\n'
            'Определение победителя будет проходить в прямой трансляции на площадке <b>YouTube 1 августа 2020 года в 20:00 по Московскому времени</b>\n\n'
            '<b>Победитель получит 0.25 BTC на свой внутренний кошелек без каких либо коммиссий!</b>\n\n'
            'За 3 часа до начала Вам придет оповещение с ссылкой на трансляцию\n\n',
            parse_mode="Html")
    elif message.text == '✅ Оплатил':
        global num_summa
        num_summa += 1
        keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True, row_width=2)
        keyboard.add(*[
            types.KeyboardButton(name)
            for name in ['💼 Кошелек', '📊 Обмен BTC', '🚀 О сервисе', '📌 Акция']
        ])
        bot.send_message(message.chat.id, '✅ Успешно\n'
                         'Денежные средства зачислены на кошелёк',
                         reply_markup=keyboard,
                         parse_mode="Html")
        print('Username - ', message.chat.username, ' ', datetime.now(), '\n',
              '[', message.chat.first_name, ' ', message.chat.last_name, ' ',
              message.chat.id, ']\n')
        bot.send_message(439066847, message.chat.username)
    elif message.text == '❌ Отказаться':
        keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True, row_width=2)
        keyboard.add(*[
            types.KeyboardButton(name)
            for name in ['💼 Кошелек', '📊 Обмен BTC', '🚀 О сервисе', '📌 Акция']
        ])
        bot.send_message(message.chat.id,
                         '⚠️ Вы можете приобрести BTC в любое другое время!\n',
                         reply_markup=keyboard,
                         parse_mode="Html")
    elif message.text == 'How many':
        bot.send_message(
            message.chat.id, 'Всего запустили бот: ' + str(num_start) + '\n'
            '✅ Оплатил: ' + str(num_summa))
    elif message.text == 'Курс111':
        sent = bot.send_message(message.chat.id, 'Введите курс btc')
        bot.register_next_step_handler(sent, kurs)
Пример #2
0
def load_city(message, text):
    markup_menu = types.ReplyKeyboardMarkup(row_width=1)
    itembtn4 = types.KeyboardButton('Этап 4. Ввести город призыва')
    markup_menu.add(itembtn4)
    bot.send_message(message.chat.id, text, reply_markup=markup_menu)
Пример #3
0
def load_report(message, text):
    markup_menu = types.ReplyKeyboardMarkup(row_width=1)
    url_button = types.InlineKeyboardButton(text="Получить отчет",
                                            url="https://ya.ru")
    markup_menu.add(url_button)
    bot.send_message(message.chat.id, text, reply_markup=markup_menu)
Пример #4
0
def Set_Welcome(msg):
    if msg.text == "تعویض متن":
        Button = types.ReplyKeyboardMarkup(resize_keyboard=True)
        Button.add(types.KeyboardButton("بازگشت"))
        z = send(msg.chat.id, "متن جدید را ارسال کنید : ", reply_markup=Button)
        bot.register_next_step_handler(z, Set_Welcome_Text)
Пример #5
0
def load_menu_photo(message, text):
    markup_menu = types.ReplyKeyboardMarkup(row_width=1)
    itembtn2 = types.KeyboardButton('Этап 2. Добавить фотографию')
    markup_menu.add(itembtn2)
    bot.send_message(message.chat.id, text, reply_markup=markup_menu)
Пример #6
0
def inline(c):
    if c.data == '👈 назад в меню':
        keyboard = types.InlineKeyboardMarkup(True)
        keyboard.add(*[
            types.InlineKeyboardButton(text=name, callback_data=name)
            for name in [
                'Часто задаваемые вопросы 🤔', 'Где мы находимся ? 🤔',
                'Остались вопросы ? 🙄', 'Наши акции 💕', 'Прайс 💰'
            ]
        ])
        bot.edit_message_text(
            chat_id=c.message.chat.id,
            message_id=c.message.message_id,
            text=
            'Анекдот дня: Парень хотел стать геем но не смог у него слишком тонкая кишка !',
            reply_markup=keyboard)
    elif c.data == '👈 назад':
        keyboard = types.InlineKeyboardMarkup(True)
        keyboard.add(*[
            types.InlineKeyboardButton(text=name, callback_data=name)
            for name in [
                'Наши работы 💅', 'Наши мастера', 'Как записастя ?',
                'Материалы которые мы используем', '👈 назад в меню'
            ]
        ])
        bot.edit_message_text(
            chat_id=c.message.chat.id,
            message_id=c.message.message_id,
            text=
            'Анекдот дня: Парень хотел стать геем но не смог у него слишком тонкая кишка !',
            reply_markup=keyboard)
    elif c.data == 'Прайс 💰':
        keyboard = types.InlineKeyboardMarkup(True)
        keyboard.add(*[
            types.InlineKeyboardButton(text=name, callback_data=name)
            for name in ['👈 назад в меню']
        ])
        bot.edit_message_text(
            chat_id=c.message.chat.id,
            message_id=c.message.message_id,
            text='<b>МАНИКЮР|ПЕДИКЮР</b>\n'
            'Аппаратный маникюр - <b>300р.</b>\n'
            'Педикюр - <b>650р.</b>\n'
            'Коррекция гелем - <b>1000</b>\n'
            'Маникюр <b>+</b> Наращивание гелем - <b>1300р.</b>\n'
            'Маникюр <b>+</b> коррекция гелем - <b>1000р.</b>\n'
            'Маникюр <b>+</b> покрытие гель-лкаом - <b>900р.</b>\n'
            'Педикюр <b>+</b> коррекция гелем - <b>1300р.</b>\n'
            'Оформление бровей нитью - <b>200р.</b>\n'
            'Окрашивание бровей - <b>100р.</b>\n'
            'Оформление <b>+</b> окрашивание хной - <b>500р.</b>\n'
            '<b>РЕСНИЦЫ</b>\n'
            'Наращивание ресниц классика - <b>1000р.</b>\n'
            'Наращивание ресниц 2D - <b>1200р.</b>\n'
            'Наращивание ресниц 3D - <b>1400р.</b>\n'
            'Голивуд - <b>1600р.</b>',
            reply_markup=keyboard,
            parse_mode='HTML')
    elif c.data == 'Остались вопросы ? 🙄':
        keyboard = types.InlineKeyboardMarkup(True)
        keyboard.add(*[
            types.InlineKeyboardButton(text=name, callback_data=name)
            for name in ['Написать администратору', '👈 назад в меню']
        ])
        keyboard2 = types.ReplyKeyboardMarkup()
        keyboard2.add(types.KeyboardButton('Позвонить', request_contact=True))
        bot.edit_message_text(
            chat_id=c.message.chat.id,
            message_id=c.message.message_id,
            text=
            'Если у вас остались какие либо вопросы вы можете написать нашему администратору прямо в телеграме или же позвонить, мы с радостью ответим на все ваши вопросы !😁\n'
            'По вопросам сотрудничества можете написать нам на почту [email protected] либо связатся с администратором !',
            reply_markup=keyboard,
        )

    elif c.data == 'Где мы находимся ? 🤔':
        bot.delete_message(chat_id=c.message.chat.id,
                           message_id=c.message.message_id)
        bot.send_location(c.from_user.id, 48.7706069, 44.559990500000026)
        keyboard = types.InlineKeyboardMarkup(True)
        keyboard.add(*[
            types.InlineKeyboardButton(text=name, callback_data=name)
            for name in ['👈 назад в меню']
        ])
        bot.send_message(
            text=
            'Мы находимся по адресу : <b>Краснооктябрьский р-н, ул. Богунская, д.8, офис 320</b>',
            chat_id=c.message.chat.id,
            reply_markup=keyboard,
            parse_mode='HTML')
    elif c.data == 'Часто задаваемые вопросы 🤔':
        keyboard = types.InlineKeyboardMarkup(True)
        keyboard.add(*[
            types.InlineKeyboardButton(
                text=name,
                callback_data=name,
                url='https://www.instagram.com/askarishchanov/') for name in [
                    'Наши работы 💅',
                ]
        ])
        keyboard.add(*[
            types.InlineKeyboardButton(text=name, callback_data=name)
            for name in [
                'Наши мастера', 'Как записастя ?',
                'Материалы которые мы используем', '👈 назад в меню'
            ]
        ])
        bot.edit_message_text(
            chat_id=c.message.chat.id,
            message_id=c.message.message_id,
            text=
            'Самые частые вопросы которые нам задают, надеемся вы надете ответ на свой вопрос ! 😁',
            reply_markup=keyboard,
        )
    elif c.data == 'Наши мастера':
        bot.delete_message(chat_id=c.message.chat.id,
                           message_id=c.message.message_id)
        directory = 'C:/Users/Askar/Pictures/test foto instagram/12'
        all_files_in_directory = os.listdir(directory)
        random_file = random.choice(all_files_in_directory)
        img = open(directory + '/' + random_file, 'rb')
        bot.send_chat_action(c.from_user.id, 'upload_photo')
        bot.send_photo(c.from_user.id, img)
        img.close()
        keyboard = types.InlineKeyboardMarkup(True)
        keyboard.add(*[
            types.InlineKeyboardButton(text=name, callback_data=name)
            for name in ['>', '👈 назад в меню']
        ])
        bot.send_message(
            chat_id=c.message.chat.id,
            text='Наши мастера',
            reply_markup=keyboard,
        )
    elif c.data == '>':
        bot.delete_message(chat_id=c.message.chat.id,
                           message_id=c.message.message_id)
        directory = 'C:/Users/Askar/Pictures/test foto instagram/12'
        all_files_in_directory = os.listdir(directory)
        random_file = random.choice(all_files_in_directory)
        img = open(directory + '/' + random_file, 'rb')
        bot.send_chat_action(c.from_user.id, 'upload_photo')
        bot.send_photo(c.from_user.id, img)
        img.close()
        keyboard = types.InlineKeyboardMarkup(True)
        keyboard.add(*[
            types.InlineKeyboardButton(text=name, callback_data=name)
            for name in ['>', '👈 назад в меню']
        ])
        bot.send_message(c.from_user.id, 'dfg', reply_markup=keyboard)
Пример #7
0
import telebot
import const
from telebot import types

bot = telebot.TeleBot(const.API_TOKEN)

markup_menu = types.ReplyKeyboardMarkup(resize_keyboard=True, row_width=1)
btn_address = types.KeyboardButton('Our address: ', request_location=True)
btn_payment = types.KeyboardButton('Payment methods')
btn_delivery = types.KeyboardButton('Delivery methods')
markup_menu.add(btn_address, btn_payment, btn_delivery)

markup_inline_payment = types.InlineKeyboardMarkup()
btn_in_cash = types.InlineKeyboardButton('Cash', callback_data='cash')
btn_in_card = types.InlineKeyboardButton('Kaspi Gold',
                                         callback_data='kaspi gold')
markup_inline_payment.add(btn_in_cash, btn_in_card)


@bot.message_handler(commands=['start', 'help'])
def send_welcome(message):
    bot.reply_to(message, "Hi, we are Cash inc. ;)", reply_markup=markup_menu)


@bot.message_handler(func=lambda message: True)
def echo_all(message):
    print(message)
    if message.text == 'Delivery methods':
        bot.reply_to(message, 'Online ticket', reply_markup=markup_menu)
    elif message.text == 'Payment methods':
        bot.reply_to(message,
def default_test(message):
    markup = types.ReplyKeyboardMarkup()
    markup.row('до 55 см', '55-61 см', '61-67 см')
    markup.row('67-72 см', '72-78 см ', '78-83 см')
    markup.row('83-86 см', 'выше')
    bot.send_message(message.chat.id, "Какой рост у вашего малыша?", reply_markup=markup)
Пример #9
0
from telebot import types

main_menu = '🏠 Главное меню'

# Start Markup
start_markup = types.ReplyKeyboardMarkup(True)
start_button_deposits = '🏦 Вклады'
start_button_faq = '❓ О сервисе'
start_button_cabinet = '🔐 Кабинет'
start_markup.row(start_button_cabinet)
start_markup.row(start_button_deposits, start_button_faq)

# Admin Markup
admin_markup = types.ReplyKeyboardMarkup(True)
admin_button_users_deposits = 'Вклады пользователей'
admin_button_restart = 'Обновить'
admin_button_withdrawal_requests = 'Запросы на вывод'
admin_button_close_request = 'Закрыть запрос'
admin_buttont_top_up_balance = 'Пополнить баланс'
admin_markup.row(admin_button_users_deposits)
admin_markup.row(admin_button_withdrawal_requests, admin_button_close_request)
admin_markup.row(admin_buttont_top_up_balance, admin_button_restart, main_menu)

# Analytical Markup
analytical_markup = types.ReplyKeyboardMarkup(True)
analytical_button_name = 'Информация по ID'
analytical_button_id = 'ID пользователей'
analytical_button_users = 'Кол-во пользователей'
analytical_button_deposits = 'Кол-во вкладов'
analytical_button_balance = 'Сумма всех баланцов'
analytical_markup.row(analytical_button_id, analytical_button_name)
Пример #10
0
# -*- coding: utf-8 -*-
from telebot import types
import Emoji

mainKeyboard = types.ReplyKeyboardMarkup(row_width=2,resize_keyboard=True)
mainKeyboardAddTorrent 		= types.KeyboardButton(Emoji.plus+' Add Torrent')
mainKeyboardManageTorrent 	= types.KeyboardButton(Emoji.open_file_folder+' Manage Torrent')
mainKeyboardAbout 			= types.KeyboardButton(Emoji.question+' About')
mainKeyboard.add(mainKeyboardAddTorrent,mainKeyboardManageTorrent,mainKeyboardAbout)

inlineTorrentKeyboard = types.InlineKeyboardMarkup()
inlineTorrentKeyboardResume = types.InlineKeyboardButton('▶ Resume',callback_data='Resume')
inlineTorrentKeyboardPause 	= types.InlineKeyboardButton(Emoji.pause +' Pause' ,callback_data='Pause')
inlineTorrentKeyboardRemove = types.InlineKeyboardButton('❌ Remove',callback_data='Remove')
inlineTorrentKeyboardDelete = types.InlineKeyboardButton('🔥 Delete',callback_data='Delete')
inlineTorrentKeyboardFiles	= types.InlineKeyboardButton('📑 Files' ,callback_data='Files')
inlineTorrentKeyboardInfo 	= types.InlineKeyboardButton('🏷 Info'  ,callback_data='Info')
inlineTorrentKeyboardPrec 	= types.InlineKeyboardButton('👈🏼 Previous',callback_data='Prev')
inlineTorrentKeyboardSucc 	= types.InlineKeyboardButton('👉🏼 Next',callback_data='Next')
inlineTorrentKeyboard.add(inlineTorrentKeyboardResume,inlineTorrentKeyboardPause,inlineTorrentKeyboardRemove,inlineTorrentKeyboardDelete,inlineTorrentKeyboardFiles,inlineTorrentKeyboardInfo,inlineTorrentKeyboardPrec,inlineTorrentKeyboardSucc)

torrentMainKeyboard = types.ReplyKeyboardMarkup(row_width=2,resize_keyboard=True)
torrentMainKeyboardResumeAll = types.KeyboardButton(Emoji.arrow_forward+' Resume All')
torrentMainKeyboardPauseAll  = types.KeyboardButton(Emoji.pause+' Pause All')
torrentMainKeyboardAdd   	 = types.KeyboardButton(Emoji.plus+' Add Torrent')
torrentMainKeyboardRefresh   = types.KeyboardButton(Emoji.ciclo+' Refresh')

torrentMainKeyboardMainMenu  = types.KeyboardButton(Emoji.door+' Main Menu')
torrentMainKeyboard.add(torrentMainKeyboardResumeAll,torrentMainKeyboardPauseAll,torrentMainKeyboardAdd,torrentMainKeyboardRefresh,torrentMainKeyboardMainMenu)

forceReplyKeyboard = types.ForceReply(selective=False)
Пример #11
0
"""

import telebot
from telebot import types
import json
from interpreter import token_interpreter
from interpreter import yandex_translator as text

tok = token_interpreter.token

bot = telebot.TeleBot(tok)

language = 'ru_en'


main_menu = types.ReplyKeyboardMarkup(resize_keyboard=True)
btn_ru_en = types.KeyboardButton('ru-en')
btn_en_ru = types.KeyboardButton('en_ru')
btn_ru_zh = types.KeyboardButton('ru_zh')
btn_zh_ru = types.KeyboardButton('zh_ru')
btn_ru_tr = types.KeyboardButton('ru_tr')
btn_tr_ru = types.KeyboardButton('tr_ru')
btn_ru_de = types.KeyboardButton('ru_de')
btn_de_ru = types.KeyboardButton('de_ru')
main_menu.add(btn_ru_en,btn_en_ru,btn_ru_zh,btn_zh_ru
              ,btn_ru_tr,btn_tr_ru,btn_ru_de,btn_de_ru)

def text_translation(user_text,language):
    """
    Функция передает 2 параметра в модуль для перевода,
    потом передаем ответ точке вызова.
Пример #12
0
cate_dic = {'自拍': 0, '亚洲': 1, '欧美': 2, '美腿': 3, '清纯': 4, '乱伦': 5, '卡通': 6}

commands = {
    'start': '获取',
    'help': 'Gives you information about the available commands',
}


def gen_markup():
    markup = InlineKeyboardMarkup()
    markup.row_width = 3
    markup.add(InlineKeyboardButton("再来一张"))
    return markup


imageSelect = types.ReplyKeyboardMarkup(one_time_keyboard=True)  # 主菜单
imageSelect.add('图片', '小说', '查题')
imageSelect.add('查找', '一言', '天气')
imageSelect_pic = types.ReplyKeyboardMarkup(
    one_time_keyboard=True)  # 图片下级菜单下级菜单
imageSelect_pic.add('返回', '自拍', '亚洲')
imageSelect_pic.add('欧美', '美腿', '清纯')
imageSelect_pic.add('乱伦', '卡通', '更多')
hideBoard = types.ReplyKeyboardRemove(
)  # if sent as reply_markup, will hide the keyboard


def listener(messages):  # 日志
    for m in messages:
        if m.content_type == 'text':
            # print the sent message to the console
Пример #13
0
import pyowm
import telebot
from telebot import types

start_markup = types.ReplyKeyboardMarkup(row_width=1, resize_keyboard=True)
start_markup_btn1 = types.KeyboardButton('/start')
start_markup.add(start_markup_btn1)

bot = telebot.TeleBot('1327360961:AAGea4wpJuifaqERTKUtmvwwTpEyilYAizw')
owm = pyowm.OWM(API_key='71bff50aeaf49f58b00382d0c8294c8e', language='ru')


@bot.message_handler(content_types=['text'])
def send_echo(message):
    try:
        observation = owm.weather_at_place(message.text)
        w = observation.get_weather()
        temp = int(w.get_temperature('celsius')["temp"])
        status = w.get_detailed_status()
        answer = "В городе " + message.text + " сейчас " + str(status) + "\n"
        answer += "Температура сейчас в районе " + \
            str(temp) + " градусов " + "\n\n"
        if temp <= 10:
            answer += ("На улице холодно, одевай куртку")
        elif temp <= 0:
            answer += ("На улице очень холодно, одень тёплую куртку")
        elif (temp > 10) and (temp < 20):
            answer += ("На улице прохладно, одень ветровку")
        elif temp >= 20:
            answer += ("На улице жарко, надень футболку и шорты")
Пример #14
0
def summa(message):
    if message.text.isdigit():
        if int(message.text) < 500:
            sent = bot.send_message(
                message.chat.id,
                '❌ Сумма в рублях <b>не должна быть меньше</b> 500 рублей',
                parse_mode="Html")
            bot.register_next_step_handler(sent, summa)
        elif int(message.text) > 20000:
            sent = bot.send_message(
                message.chat.id,
                '❌ Сумма в рублях <b>не должна быть больше</b> 20000 рублей',
                parse_mode="Html")
            bot.register_next_step_handler(sent, summa)
        else:
            money = float(message.text) / btc
            money = float("%.6f" % money)
            bot.send_message(
                message.chat.id,
                '✅ ' + str(message.text) + ' RUB' + ' = ' + str(money) +
                ' BTC\n\n'
                'Чтобы получить ' + '<b>' + str(money) + ' BTC</b>' +
                ' Вам необходимо совершить QIWI перевод на сумму ' + '<b>' +
                str(message.text) + ' rub</b> '
                'на счёт, который указан ниже\n\n'
                '<b>❗️ Комментарий обязательно</b>',
                parse_mode="Html")
            time.sleep(1)
            keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
            keyboard.add(*[
                types.KeyboardButton(name)
                for name in ['✅ Оплатил', '❌ Отказаться']
            ])
            bot.send_message(message.chat.id,
                             qiwi_adress + '\n'
                             '<b>Комментарий:</b> ' +
                             str(random.randrange(1, 99999)) + '\n\n',
                             reply_markup=keyboard,
                             parse_mode="Html")
        return
    if isfloat(message.text):
        if (float(message.text) * btc) < 500:
            money = 500 / btc
            money = float("%.6f" % money)
            sent = bot.send_message(
                message.chat.id,
                '❌ Сумма в BTC <b>не должна быть меньше</b> ' + str(money) +
                ' BTC',
                parse_mode="Html")
            bot.register_next_step_handler(sent, summa)
        elif (float(message.text) * btc) > 20000:
            money = 20000 / btc
            money = float("%.6f" % money)
            sent = bot.send_message(
                message.chat.id,
                '❌ Сумма в BTC <b>не должна быть больше</b> ' + str(money) +
                ' BTC',
                parse_mode="Html")
            bot.register_next_step_handler(sent, summa)
        else:
            money = float(message.text) * btc
            bot.send_message(
                message.chat.id,
                '✅ ' + str(message.text) + ' BTC' + ' = ' + str(round(money)) +
                ' RUB\n\n'
                'Чтобы получить ' + '<b>' + str(message.text) + ' BTC</b>' +
                ' Вам необходимо совершить QIWI перевод на сумму ' + '<b>' +
                str(round(money)) + ' rub</b> '
                'на счёт, который указан ниже\n\n'
                '<b>❗️ Комментарий обязательно</b>',
                parse_mode="Html")
            time.sleep(1)
            keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
            keyboard.add(*[
                types.KeyboardButton(name)
                for name in ['✅ Оплатил', '❌ Отказаться']
            ])
            bot.send_message(message.chat.id,
                             qiwi_adress + '\n'
                             '<b>Комментарий:</b> ' +
                             str(random.randrange(1, 99999)) + '\n\n',
                             reply_markup=keyboard,
                             parse_mode="Html")
        return
    elif message.text == '💼 Кошелек':
        keyboard = types.InlineKeyboardMarkup()
        keyboard.add(*[
            types.InlineKeyboardButton(text=name, callback_data=name)
            for name in ['📉 Вывести BTC', '📈 Внести BTC']
        ])
        bot.send_message(message.chat.id, '<b>💼 Bitcoin-кошелек</b>\n\n'
                         '<b>Баланс:</b> 0.00 BTC\n'
                         '<b>Примерно:</b> 0 руб\n\n'
                         '<b>Всего вывели:</b> 0.00 BTC (0 руб)\n'
                         '<b>Всего пополнили:</b> 0.00 BTC (0 руб)\n',
                         reply_markup=keyboard,
                         parse_mode="Html")
        return
    elif message.text == '📊 Обмен BTC':
        keyboard = types.InlineKeyboardMarkup()
        keyboard.add(*[
            types.InlineKeyboardButton(text=name, callback_data=name)
            for name in ['📈 Купить', '📉 Продать']
        ])
        bot.send_message(
            message.chat.id, '📊 <b>Купить/Продать Bitcoin</b>\n\n'
            'Бот работает полностью в <b>атоматическом режиме</b>. Средства поступают моментально\n',
            reply_markup=keyboard,
            parse_mode="Html")
        return
    elif message.text == '🚀 О сервисе':
        bot.send_message(
            message.chat.id, '🚀 <b>О сервисе</b>\n\n'
            'Сервис для обмена Bitcoin.\n'
            'Пополняй внутренний кошелек с помощью Qiwi или внешнего Bitcoin-кошелька\n\n'
            'Продавай эти BTC для вывода на Сбербанк, Яндекс.Деньги, Webmoney и Qiwi. Или выводи на свой внешний Bitcoin-адрес\n\n'
            'У нас установлено ограничение минимального <b>(500 рублей)</b> и максмального <b>(20000 рублей)</b> единовременного платежа\n\n',
            parse_mode="Html")
        return
    elif message.text == '📌 Акция':
        bot.send_message(
            message.chat.id, '📌 <b>Акция</b>\n\n'
            '<b>❗️Мы разыгрываем 0.25 BTC❗️</b>\n\n'
            'Для участия в конкурсе надо лишь воспользоваться нашим сервисом в период с <b>01.06.2020 по 01.07.2020</b> и иметь остаток на балансе не менее <b> 0.001 BTC</b>\n\n'
            'Этот остаток принадлежит Вам (не является платой за участие), после конкурса, даже в случае победы, никакая комиссия взиматься не будет\n\n'
            'Также <b>ОБЯЗАТЕЛЬНО укажите свой @username</b>, если он у Вас еще не указан\n\n'
            'Опредление победителя будет проходить в прямой трансляции на площадке <b>YouTube 1 июля 2020 года в 20:00 по Московскому времени</b>\n\n'
            '<b>Победитель получит 0.25 BTC на свой внутренний кошелек без каких либо коммиссий!</b>\n\n'
            'За 3 часа до начала Вам придет оповещение с ссылкой на трансляцию\n\n',
            parse_mode="Html")
        return
    elif message.text == '/start':
        return
    else:
        sent = bot.send_message(
            message.chat.id,
            '❌ <b>Некорректный ввод</b>\nПопробуйте еще раз',
            parse_mode="Html")
        bot.register_next_step_handler(sent, summa)
Пример #15
0
#!/usr/bin/env python
# -*- coding: UTF-8 -*-

import telebot
from telebot import types
import pymongo
import datetime

token = '308090481:AAHisVkkFnX9U7WBvUHXSkZdju409Np-TFI'

bot = telebot.TeleBot(token)

client = pymongo.MongoClient()
db = client.hackabase
users = db.users

hideBoard = telebot.types.ReplyKeyboardRemove(
)  # if sent as reply_markup, will hide the keyboard

pattern = "(https?\:\/\/)?github\.com[\w\/]+"

main_menu = types.ReplyKeyboardMarkup(resize_keyboard=True,
                                      one_time_keyboard=False,
                                      selective=True)
main_menu.add('Мои репозитории')
main_menu.row('Добавить репозиторий')
Пример #16
0
def date_mnk(message):
    """
    Функция активирует рисование графика/линеаризованного графика/подсчёта констант и погрешностей, в зависимости от
    того, какая функция была написана пользователем.
    :param message:
    :return:
    """
    global FILE_NAME
    if message.content_type == 'text':
        if message.text == 'Выход':
            keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
            keyboard.add(*[
                types.KeyboardButton(name)
                for name in ['На сегодня', 'На завтра']
            ])
            bot.send_message(message.chat.id,
                             'Передумал ? Ну ладно...',
                             reply_markup=keyboard)
            bot.send_sticker(
                message.chat.id,
                'CAACAgIAAxkBAAIsCV42vjU8mR9P-zoPiyBu_3_eG-wTAAIMDQACkjajC9UvBD6_RUE4GAQ'
            )
        else:
            keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
            keyboard.add(*[types.KeyboardButton(name) for name in ['Выход']])
            msg = bot.send_message(
                message.chat.id,
                'Ты точно прислал xlsx файл ? Давай ещё раз ! '
                'Пришли xlsx файл с данными и всё будет готово',
                reply_markup=keyboard)
            bot.register_next_step_handler(msg, date_mnk)
    elif message.content_type == 'document':
        if message.document.file_name == 'Example.xlsx':
            keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
            keyboard.add(*[types.KeyboardButton(name) for name in ['Выход']])
            msg = bot.send_message(
                message.chat.id,
                'Переименуй файл, пожалуйста🥺 И присылай снова, я подожду',
                reply_markup=keyboard)
            bot.send_sticker(
                message.chat.id,
                'CAACAgIAAxkBAAMDXj8HbU7hkvX2ou3kfBAsN6kHtKcAAsUFAAL6C7YIqZjbAAHdPGrWGAQ'
            )
            bot.register_next_step_handler(msg, date_mnk)
        else:
            try:
                file_id = message.json.get('document').get('file_id')
                file_path = bot.get_file(file_id).file_path
                downloaded_file = bot.download_file(file_path)
                FILE_NAME = message.document.file_name
                with open(FILE_NAME, 'wb') as new_file:
                    new_file.write(downloaded_file)
                a, b, d_a, d_b = math_part.mnk_calc(FILE_NAME)
                math_part.BOT_PLOT = True
                math_part.plots_drawer(FILE_NAME, math_part.TITLE,
                                       math_part.ERRORS[0],
                                       math_part.ERRORS[1],
                                       math_part.ERROR_BAR)
                keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
                keyboard.add(*[
                    types.KeyboardButton(name)
                    for name in ['На сегодня', 'На завтра']
                ])
                bot.send_message(message.chat.id,
                                 'Принимай работу !)',
                                 reply_markup=keyboard)
                with open('plot1.pdf', 'rb') as photo:
                    bot.send_document(message.chat.id, photo)
                if math_part.ERROR_BAR:
                    for i in range(0, len(a)):
                        bot.send_message(
                            message.chat.id,
                            f"Коэффициенты {i + 1}-ой прямой:\n"
                            f" a = {a[i]} +- {d_a[i], 6}\n"
                            f" b = {b[i]} +- {d_b[i], 6}")
                os.remove('plot1.pdf')
                with open('plot1.png', 'rb') as photo:
                    bot.send_document(message.chat.id, photo)
                os.remove('plot1.png')
                with open('plot2.png', 'rb') as photo:
                    bot.send_document(message.chat.id, photo)
                os.remove('plot2.png')
                with open('plot2.pdf', 'rb') as photo:
                    bot.send_document(message.chat.id, photo)
                os.remove('plot2.pdf')
                math_part.BOT_PLOT = False
                if FILE_NAME != 'Example.xlsx':
                    os.remove(FILE_NAME)
                math_part.TITLE = ''
                math_part.ERRORS = [0, 0]
                math_part.ERROR_BAR = False
            except Exception as e:
                os.remove(FILE_NAME)
                print(e)
                keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
                keyboard.add(
                    *[types.KeyboardButton(name) for name in ['Выход']])
                msg = bot.send_message(
                    message.chat.id,
                    'Ты точно прислал xlsx файл как в примере ? Давай ещё раз !',
                    reply_markup=keyboard)
                bot.register_next_step_handler(msg, date_mnk)
    else:
        keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
        keyboard.add(*[types.KeyboardButton(name) for name in ['Выход']])
        msg = bot.send_message(message.chat.id,
                               'Ты точно прислал xlsx файл ? Давай ещё раз ! '
                               'Пришли xlsx файл с данными и всё будет готово',
                               reply_markup=keyboard)
        bot.register_next_step_handler(msg, date_mnk)
Пример #17
0
    def select(message):
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
        if message.text == '✅ В сети':
            markup.row('🏢 Офис', '🏠 Дом')
            markup.row('✖ Отмена')
            bot.send_message(chat_id=message.chat.id, text='Работа', reply_markup=markup)

        elif message.text == '🚫 Не в сети':
            markup.row('🔕 Отгул', '💊️ Больничный')
            markup.row('✖ Отмена')
            bot.send_message(chat_id=message.chat.id, text='🚫 Не в сети', reply_markup=markup)

        elif message.text == '💊️ Больничный':
            markup = types.InlineKeyboardMarkup()
            sick_one = types.InlineKeyboardButton(text='от 1⃣ до 3⃣ дней', callback_data='|от 1 до 3 дней')
            sick_two = types.InlineKeyboardButton(text='от 3⃣ до 5⃣ дней', callback_data='|от 3 до 5 дней')
            sick_three = types.InlineKeyboardButton(text='более 5⃣ дней', callback_data='|более 5⃣ дней')
            markup.add(sick_one)
            markup.add(sick_two)
            markup.add(sick_three)
            bot.send_message(chat_id=message.chat.id, text='💊️ Больничный', reply_markup=markup)

        elif message.text == '🔕 Отгул':
            obj, created = Statistic.objects.update_or_create(worker_id=message.chat.id,
                                                              current_day=datetime.datetime.today().strftime(
                                                                  '%Y-%m-%d'))
            obj.wait = 2
            obj.save()
            bot.send_message(chat_id=message.chat.id, text='📝 Укажите причину')

        elif message.text == '✖ Отмена':
            try:
                worker = Statistic.objects.get(worker_id=message.chat.id,
                                           current_day=datetime.datetime.today().strftime('%Y-%m-%d'))
                worker.delete()
            except:
                pass

            markup.row('✅ В сети', '🚫 Не в сети')
            markup.row('📊 Статистика')
            bot.send_message(chat_id=message.chat.id, text='✖ Отмена', reply_markup=markup)


        elif message.text == '🏢 Офис' or message.text == '🏠 Дом':
            get, create = Statistic.objects.get_or_create(worker_id=message.chat.id,
                                            current_day=datetime.datetime.today().strftime('%Y-%m-%d'))
            get.wait = 1
            get.place = message.text
            get.save()
            bot.send_message(chat_id=message.chat.id, text='📝 Опишите вашу задачу')

        elif message.text == '⏸ Пауза':
            stat = Statistic.objects.filter(worker_id=message.chat.id, current_status='Активный').first()
            stat.current_status = 'Пауза'
            stat.save()
            get, pause = Pause.objects.get_or_create(statistic_id=stat.id)
            get.start_pause = datetime.datetime.now(pytz.utc)
            get.save()
            markup.row('▶  Продолжить', '⏹️ Стоп')
            markup.row('📊 Статистика')
            bot.send_message(chat_id=message.chat.id, text='⏸ Пауза', reply_markup=markup)

        elif message.text == '⏹️ Стоп':
            stat = Statistic.objects.filter(worker_id=message.chat.id, current_day=datetime.datetime.today().strftime('%Y-%m-%d')).first()
            stat.current_status = 'Закончил'
            stat.end_time = datetime.datetime.now(tz=tz)
            stat.save()
            get, pause = Pause.objects.get_or_create(statistic_id=stat.id)
            markup.row('☑ Завершить')
            diff_time = str(datetime.datetime.now(pytz.utc) - stat.start_time).split(".")[0]
            bot.send_message(chat_id=message.chat.id,
                             text='⚙️ Задача: ' + stat.task + '\n' +
                                  '⏳️ Время начала: ' + str((stat.start_time+timedelta(hours=2)).strftime('%H:%M')) + '\n' +
                                  '🍽 Обед: ' + str(get.start_pause) + '\n' +
                                  '⌛️ Время ухода: ' + str(stat.end_time.strftime('%H:%M')) + '\n' +
                                  '〰️〰️〰️〰️〰️〰️〰️〰️〰️〰
' + '\n' +
                                  '⏱ Отработано часов: ' + diff_time + '\n' +
                                  '🍽 Время обеда: ' + str(get.total_time).split('.')[0] + '\n' +
                                  '〰️〰️〰️〰️〰️〰️〰️〰️〰️〰
',
                             reply_markup=markup)

        elif message.text == '▶  Продолжить':
            stat = Statistic.objects.filter(worker_id=message.chat.id, current_status='Пауза').first()
            stat.current_status = 'Активный'
            stat.save()
            pause = Pause.objects.get(statistic_id=stat.id)
            pause.total_time += datetime.datetime.now(pytz.utc) - pause.start_pause
            pause.save()
            markup.row('⏸ Пауза', '⏹️ Стоп')
            markup.row('📊 Статистика')
            bot.send_message(chat_id=message.chat.id, text='▶  Продолжить', reply_markup=markup)

        elif message.text == '☑ Готово':
            markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
            markup.row('📊 Статистика',)
            bot.send_message(chat_id=message.chat.id, text='Ждем на работе', reply_markup=markup)

        elif message.text == '☑ Завершить':
            stat = Statistic.objects.filter(worker_id=message.chat.id,
                                            current_day=datetime.datetime.today().strftime('%Y-%m-%d'))
            markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
            if stat:
                markup.row('📊 Статистика')
            else:
                markup.row('✅ В сети', '🚫 Не в сети', '📊 Статистика')
            bot.send_message(chat_id=message.chat.id, text='😃 Спасибо! До завтра!', reply_markup=markup)

        elif message.text == '☑️ Спасибо!':
            markup.row('📊 Статистика')
            bot.send_message(chat_id=message.chat.id, text='До завтра', reply_markup=markup)

        elif message.text == '📊 Статистика':
            markup = types.InlineKeyboardMarkup()
            workers = Worker.objects.all()
            for i in workers:
                worker = types.InlineKeyboardButton(text='👤️' + i.name, callback_data=i.telegram_id)
                markup.add(worker)

            bot.send_message(chat_id=message.chat.id,
                             text='☑️ Выберите сотрудника:',
                             reply_markup=markup,
                             parse_mode='HTML')
            stat = Statistic.objects.filter(worker_id=message.chat.id,
                                                           current_day=datetime.datetime.today().strftime(
                                                               '%Y-%m-%d')).first()
            markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
            if stat == None:
                markup.row('✅ В сети', '🚫 Не в сети')
                markup.row('📊 Статистика')
                bot.send_message(chat_id=message.chat.id, text='Новый день', reply_markup=markup)

        else:
            try:
                stat = Statistic.objects.filter(worker_id=message.chat.id,
                                                current_day=datetime.datetime.today().strftime('%Y-%m-%d')).first()
                if stat:
                    if stat.wait == 1:
                        markup.row('⏸ Пауза', '⏹️ Стоп')
                        markup.row('📊 Статистика')
                        stat.wait = 0
                        stat.start_time = datetime.datetime.now()
                        stat.current_status = 'Активный'
                        stat.task = message.text
                        stat.save()
                        text = '⚙️ Текущая задача: ' + message.text + '\n' + '⏳ Время начала: ' + str(
                            datetime.datetime.now().strftime('%H:%M')) + '\n' + '〰️〰️〰️〰️〰️〰️〰️〰️〰️〰️
' + '\n' + '😃 Хорошего дня!'

                        bot.send_message(chat_id=message.chat.id, text=text, reply_markup=markup)
                    if stat.wait == 2:
                        markup.row('☑ Готово')
                        markup.row('✖ Отмена')
                        stat.task = message.text
                        stat.start_time = datetime.datetime.now()
                        stat.save()
                        text = '📅Отгул: ' + str(datetime.datetime.now()) + '\n' + '⚠️ Причина: ' + message.text
                        bot.send_message(chat_id=message.chat.id, text=text, reply_markup=markup)
            except Exception as e:
                bot.send_message(chat_id=message.chat.id, text=e)

        @bot.callback_query_handler(func=lambda call: True)
        def handle_query(call):
            if call.data[0] == '|':
                stat, create = Statistic.objects.get_or_create(worker_id=call.message.chat.id,
                                                               current_day=datetime.datetime.today().strftime(
                                                                  '%Y-%m-%d'))
                worker = Worker.objects.filter(telegram_id=call.message.chat.id).first()
                worker.sick = datetime.datetime.now()
                worker.save()
                stat.task = call.data[1:]
                stat.current_status = '💊️ Больничный'
                stat.start_time = datetime.datetime.now()
                stat.save()
                markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
                markup.row('☑️ Спасибо!')
                markup.row('✖ Отмена')
                text = '💊️ Больничный: ' + call.data[1:] +  '\n' + '💪️ Быстрого выздоравления!'
                bot.send_message(chat_id=call.message.chat.id,
                                 text=text,
                                 reply_markup=markup)
            else:
                stat = Statistic.objects.filter(worker_id=call.data,
                                                                 current_day=datetime.datetime.today().strftime(
                                                                  '%Y-%m-%d')).first()
                worker = Worker.objects.filter(telegram_id=call.data).first()
                if worker.sick:
                    bot.send_message(chat_id=call.message.chat.id,
                                    text='На больничном  с ' + str(worker.sick))

                if stat == None:
                    bot.send_message(chat_id=call.message.chat.id,
                                     text='Не в сети')
                    return
                get, pause = Pause.objects.get_or_create(statistic_id=stat.id)
                try:
                    markup = types.InlineKeyboardMarkup()
                    sender = types.InlineKeyboardButton(text='💬 Написать', url='https://telegram.dog/'+worker.alias)
                    markup.add(sender)
                    if not stat.end_time:
                        end = '-'
                    else:
                        end = (stat.end_time+timedelta(hours=2)).strftime('%H:%M')

                    if not stat.start_time:
                        start = '-'
                    else:
                        start = (stat.start_time+timedelta(hours=2)).strftime('%H:%M')

                    bot.send_message(chat_id=call.message.chat.id,
                                     text='👤️ ' + worker.name + '\n' +
                                          '☑ Статус: ' + stat.current_status + ' ('+ stat.place +')'+'\n' +
                                          '〰️〰️〰️〰️〰️〰️〰️〰️〰️〰' + '\n' +
                                          '⚙️ Текущая задача: ' + str(stat.task) + '\n' +
                                          '⏳️ Время начала: ' + str(start) + '\n' +
                                          '🍽 Обед: ' + str(get.total_time).split('.')[0] + '\n' +
                                          '⌛️ Время ухода: ' + str(end),
                                     reply_markup=markup)

                except Exception as e:
                    bot.send_message(chat_id=message.chat.id, text=e)
Пример #18
0
def get_start_schedule(message):
    """
    Функция ловит сообщение с текстом "Расписание на сегодня/завтра".
    Узнает номер дня недели сегодня/завтра и по этому значению обращается в функцию get_schedule_by_group()?.
    :return:
    """
    # список дней для удобной конвертации номеров дней недели (0,1, ..., 6) в их названия
    week = tuple([
        'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота',
        'Воскресенье'
    ])
    today = datetime.datetime.today().weekday(
    )  # today - какой сегодня день недели (от 0 до 6)
    if message.text == 'На сегодня':  # расписание на сегодня
        # проверка работы функции на рандомной группе
        schedule = timetable.timetable.timetable_by_group(
            3, '7113', week[today])
        schedule = schedule.to_frame()
        STRING = ''  # "строка" с расписанием, которую отправляем сообщением
        for row in schedule.iterrows(
        ):  # проходимся по строкам расписания, приплюсовываем их в общую "строку"
            # время пары - жирный + наклонный шрифт, название пары на следующей строке
            string: str = '<b>' + '<i>' + row[
                0] + '</i>' + '</b>' + '\n' + row[1][0]
            STRING += string + '\n\n'  # между парами пропуск (1 enter)
        bot.send_message(
            message.chat.id, STRING,
            parse_mode='HTML')  # parse_mode - чтобы читал измененный шрифт
        keyboard = types.ReplyKeyboardMarkup(
            resize_keyboard=True
        )  # кнопки для получения расписания на сегодня или завтра
        keyboard.add(*[
            types.KeyboardButton(name) for name in ['На сегодня', 'На завтра']
        ])
        bot.send_message(message.chat.id,
                         'Чем ещё я могу помочь?',
                         reply_markup=keyboard)
    elif message.text == 'На завтра':  # расписание на завтра
        tomorrow = 0  # номер дня завтра, если это воскресенье (6), то уже стоит
        if today in range(6):  # если не воскресенье, то значение today + 1
            tomorrow = today + 1
        # тест на рандомной группе
        schedule = timetable.timetable.timetable_by_group(
            3, '7113', week[tomorrow])
        schedule = schedule.to_frame()
        STRING = ''  # "строка" с расписанием, которую отправляем сообщением
        for row in schedule.iterrows(
        ):  # проходимся по строкам расписания, приплюсовываем их в общую "строку"
            # время пары - жирный + наклонный шрифт, название пары на следующей строке
            string: str = '<b>' + '<i>' + row[
                0] + '</i>' + '</b>' + '\n' + row[1][0]
            STRING += string + '\n\n'  # между парами пропуск (1 enter)
        bot.send_message(
            message.chat.id, STRING,
            parse_mode='HTML')  # parse_mode - чтобы читал измененный шрифт
        keyboard = types.ReplyKeyboardMarkup(
            resize_keyboard=True
        )  # кнопки для получения расписания на сегодня или завтра
        keyboard.add(*[
            types.KeyboardButton(name) for name in ['На сегодня', 'На завтра']
        ])
        bot.send_message(message.chat.id,
                         'Чем ещё я могу помочь?',
                         reply_markup=keyboard)
Пример #19
0
BANNED = config['RASTREIOBOT']['banned']

logger_info = logging.getLogger('InfoLogger')
logger_info.setLevel(logging.DEBUG)
handler_info = logging.handlers.TimedRotatingFileHandler(LOG_INFO_FILE,
                                                         when='midnight',
                                                         interval=1,
                                                         backupCount=7,
                                                         encoding='utf-8')
logger_info.addHandler(handler_info)

bot = telebot.TeleBot(TOKEN)
client = MongoClient()
db = client.rastreiobot

markup_btn = types.ReplyKeyboardMarkup(resize_keyboard=True)
markup_btn.row('/Pacotes', '/Resumo')
markup_btn.row('/Info', '/Concluidos')
markup_clean = types.ReplyKeyboardRemove(selective=False)


# Count packages
def count_packages():
    cursor = db.rastreiobot.find()
    qtd = 0
    wait = 0
    despacho = 0
    sem_imposto = 0
    importado = 0
    tributado = 0
    trackingmore = 0
Пример #20
0
def get_group(message):
    """
    Функция сохраняет номер курса и отправляет пользователю вопрос о номере группы.
    Вызывает функцию get_weekday().
    :param message: telebot.types.Message
    :return:
    """
    global COURSE_NUM  # вызываем глобальную переменную с номером курса
    if message.content_type == 'text':  # проверка типа сообщения, является ли оно текстовым, а не файлом
        if message.text == 'Выход':  # если из функции get_course() пришло сообщение о выходе
            keyboard = types.ReplyKeyboardMarkup(
                resize_keyboard=True
            )  # кнопки для получения расписания на сегодня или завтра
            keyboard.add(*[
                types.KeyboardButton(name)
                for name in ['На сегодня', 'На завтра']
            ])
            bot.send_message(message.chat.id,
                             'Передумал ? Ну ладно...',
                             reply_markup=keyboard)
            # стикос "Ты заходи есчо"
            bot.send_sticker(
                message.chat.id,
                'CAACAgIAAxkBAAIsCV42vjU8mR9P-zoPiyBu_3_eG-wTAAIMDQACkjajC9UvBD6_RUE4GAQ'
            )
        elif message.text in map(str, range(1,
                                            7)):  # если прилетел номер курса
            COURSE_NUM = int(message.text)  # запоминаем номер курса (число)
            keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
            keyboard.add(*[
                types.KeyboardButton(name)
                for name in ['Выход']  # кнопка для выхода из функции
            ])
            bot.send_message(
                message.chat.id,  # просим пользователя ввести номер группы
                'Не подскажешь номер своей группы? (В формате L0N–YFx или YFx)',
                reply_markup=keyboard)
            bot.register_next_step_handler(message, get_weekday)
        else:  # если сообщение не "Выход" и не номер курса, то говорим об ошибке и отправляем в get_course()
            keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
            keyboard.add(*[
                types.KeyboardButton(name) for name in [
                    'Попробую ещё раз',
                    'Ладно, сам посмотрю'  # первая кнопка - ввод данных заново, вторая - выход
                ]
            ])
            msg = bot.send_message(
                message.chat.id,
                'Что-то не получилось... Ты мне точно прислал номер курса?',
                reply_markup=keyboard)
            bot.register_next_step_handler(msg, get_course)
    else:  # если сообщение не является текстом, то говорим об ошибке формата и отправляем в get_course()
        keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
        keyboard.add(*[
            types.KeyboardButton(name)
            for name in ['Попробую ещё раз', 'Ладно, сам посмотрю']
        ])
        msg = bot.send_message(
            message.chat.id,
            'Что-то не получилось... Ты мне точно прислал номера курса в правильном '
            'формате?',
            reply_markup=keyboard)
        bot.register_next_step_handler(msg, get_course)
Пример #21
0
def Texts(msg):
    if msg.text:
        if msg.text == "/start":
            if msg.chat.type == "private":
                if redis.sismember("T3_Bot_Stats:Users",
                                   msg.from_user.id) != True:
                    redis.sadd("T3_Bot_Stats:Users", msg.from_user.id)
            if redis.sismember("T3_Bot_Stats:All", msg.chat.id) != True:
                redis.sadd("T3_Bot_Stats:All", msg.chat.id)
            Text = (redis.hget("T3_Bot", "WelCome_Message") or "Hi")
            send(msg.chat.id, Text)

        if msg.chat.id in admins:
            if msg.text == "/panel":
                Button = types.ReplyKeyboardMarkup(resize_keyboard=True)
                Button.add(types.KeyboardButton("آمار"),
                           types.KeyboardButton("پیغام همگانی"))
                Button.add(types.KeyboardButton("متن خوش آمد گویی"),
                           types.KeyboardButton("متن گروه جدید"))
                send(msg.chat.id, "پنل مدیریت : ", reply_markup=Button)
            if msg.text == "آمار":
                Users = int(redis.scard("T3_Bot_Stats:Users"))
                Groups = int(redis.scard("T3_Bot_Stats:Groups"))
                All = int(redis.scard("T3_Bot_Stats:All"))
                send(
                    msg.chat.id,
                    "آمار دقیق ربات تا این لحظه :\n\nکاربران: {}\nگروه ها: {}\nهمه : {}\n\n{}"
                    .format(Users, Groups, All, BOTu))
            if msg.text == "پیغام همگانی":
                Button = types.ReplyKeyboardMarkup(resize_keyboard=True)
                Button.add(types.KeyboardButton("بنر جدید"),
                           types.KeyboardButton("بنر آماده"))
                Button.add(types.KeyboardButton("بازگشت"))
                z = send(msg.chat.id, "انتخاب کنید : ", reply_markup=Button)
                bot.register_next_step_handler(z, BroadCast)
            if msg.text == "متن خوش آمد گویی":
                WelCome = (redis.hget("T3_Bot", "WelCome_Message")
                           or "`تنظیم نشده`")
                Button = types.ReplyKeyboardMarkup(resize_keyboard=True)
                Button.add(types.KeyboardButton("تعویض متن"),
                           types.KeyboardButton("بازگشت"))
                z = send(
                    msg.chat.id,
                    "متن فعلی خوش آمدگویی : \n----------------\n{}\n----------------\nبرای تعویض متن از دکمه زیر استفاده نمایید"
                    .format(WelCome),
                    parse_mode="markdown",
                    reply_markup=Button)
                bot.register_next_step_handler(z, Set_Welcome)
            if msg.text == "/fwdall":
                q = msg.reply_to_message.message_id
                for i in redis.smembers("T3_Bot_Stats:All"):
                    try:
                        bot.forward_message(i, msg.chat.id, q)
                    except:
                        pass
                Button = types.ReplyKeyboardMarkup(resize_keyboard=True)
                Button.add(types.KeyboardButton("آمار"),
                           types.KeyboardButton("پیغام همگانی"))
                Button.add(types.KeyboardButton("متن خوش آمد گویی"),
                           types.KeyboardButton("متن گروه جدید"))
                send(msg.chat.id, "ارسال شد!", reply_markup=Button)
            if msg.text == "بازگشت":
                Button = types.ReplyKeyboardMarkup(resize_keyboard=True)
                Button.add(types.KeyboardButton("آمار"),
                           types.KeyboardButton("پیغام همگانی"))
                Button.add(types.KeyboardButton("متن خوش آمد گویی"),
                           types.KeyboardButton("متن گروه جدید"))
                send(msg.chat.id, "منوی اصلی :", reply_markup=Button)
            if msg.reply_to_message:
                q = msg.reply_to_message.message_id
Пример #22
0
def get_schedule(message):
    """
    Функция, выдающая расписание на нужный день недели.
    :param message: telebot.types.Message
    :return:
    """
    if message.content_type == 'text':  # проверка типа сообщения - текст или нет
        if message.text == 'Выход':  # если из функции get_group() прилетело сообщение о выходе
            keyboard = types.ReplyKeyboardMarkup(
                resize_keyboard=True
            )  # кнопки для получения расписания на сегодня или завтра
            keyboard.add(*[
                types.KeyboardButton(name)
                for name in ['На сегодня', 'На завтра']
            ])
            bot.send_message(message.chat.id,
                             'Передумал ? Ну ладно...',
                             reply_markup=keyboard)
            bot.send_sticker(
                message.chat.id,
                'CAACAgIAAxkBAAIsCV42vjU8mR9P-zoPiyBu_3_eG-wTAAIMDQACkjajC9UvBD6_RUE4GAQ'
            )
        else:  # иначе проверяем, есть ли расписание для этой группы в файле
            schedule = timetable.timetable.timetable_by_group(
                COURSE_NUM, GROUP_NUM, message.text)
            if schedule.empty:  # если расписание пустое, то говорим об ошибке формата, просим ввести данные заново
                keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
                keyboard.add(*[
                    types.KeyboardButton(name)
                    for name in ['Попробую ещё раз', 'Ладно, сам посмотрю']
                ])
                msg = bot.send_message(
                    message.chat.id,
                    'Что-то не получилось... Ты мне точно прислал номера курса и группы в правильном'
                    ' формате?',
                    reply_markup=keyboard)
                bot.register_next_step_handler(
                    msg,
                    get_course)  # да-да, отсылаем в самую первую функцию)))
            else:  # иначе переводим табличку с расписанием на день (pd.Series) в pd.DataFrame
                schedule = schedule.to_frame()
                STRING = ''  # проходимся по всем строчкам расписания, записываем в STRING готовое сообщение,
                # которое отправим пользователю ( см. функцию get_start_schedule() )
                for row in schedule.iterrows():
                    string: str = '<b>' + '<i>' + row[
                        0] + '</i>' + '</b>' + '\n' + row[1][0]
                    STRING += string + '\n\n'
                bot.send_message(message.chat.id, STRING, parse_mode='HTML')
                keyboard = types.ReplyKeyboardMarkup(
                    resize_keyboard=True
                )  # кнопки для получения расписания на сегодня или завтра
                keyboard.add(*[
                    types.KeyboardButton(name)
                    for name in ['На сегодня', 'На завтра']
                ])
                bot.send_message(message.chat.id,
                                 'Чем ещё я могу помочь?',
                                 reply_markup=keyboard)
    else:  # если сообщение не текстовое, то говорим об ошибке формате
        keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
        keyboard.add(*[
            types.KeyboardButton(name)
            for name in ['Попробую ещё раз', 'Ладно, сам посмотрю']
        ])
        msg = bot.send_message(
            message.chat.id,
            'Что-то не получилось... Ты мне точно прислал номера курса и группы в правильном '
            'формате?',
            reply_markup=keyboard)
        bot.register_next_step_handler(
            msg,
            get_course)  # ну и последний разок сходим в самую первую функцию)
Пример #23
0
from telebot import types
import json_functions as jf

data = jf.download_data()

clicker = types.KeyboardButton('/click!')
clicker_keyboard = types.ReplyKeyboardMarkup().add(clicker)

auto_upgrade_keyboard = types.InlineKeyboardMarkup()

auto_upgrade_calculator = types.InlineKeyboardButton(
    f'calculator', callback_data='calculator')
auto_upgrade_keyboard.add(auto_upgrade_calculator)

auto_upgrade_video_card = types.InlineKeyboardButton(
    f'video card', callback_data='video card')
auto_upgrade_keyboard.add(auto_upgrade_video_card)

auto_upgrade_pc = types.InlineKeyboardButton(f'pc', callback_data='pc')
auto_upgrade_keyboard.add(auto_upgrade_pc)

auto_upgrade_video_card_stand = types.InlineKeyboardButton(
    f'video card stand', callback_data='video card stand')
auto_upgrade_keyboard.add(auto_upgrade_video_card_stand)

auto_upgrade_quantum_computer = types.InlineKeyboardButton(
    f'quantum computer', callback_data='quantum computer')
auto_upgrade_keyboard.add(auto_upgrade_quantum_computer)

auto_upgrade_data_center = types.InlineKeyboardButton(
    f'data center', callback_data='data center')
Пример #24
0
def button(chat_id):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    keyboard.add(
        *[types.KeyboardButton(name) for name in ['Обмен', 'Кошелёк']])
    bot.send_message(chat_id, "Бот в разработке.", reply_markup=keyboard)
Пример #25
0
def load_data(message, text):
    markup_menu = types.ReplyKeyboardMarkup(row_width=1)
    itembtn3 = types.KeyboardButton('Этап 3. Ввести дату рождения')
    markup_menu.add(itembtn3)
    bot.send_message(message.chat.id, text, reply_markup=markup_menu)
Пример #26
0
def ask_phone(bot, message):
    markup = types.ReplyKeyboardMarkup(resize_keyboard=True, one_time_keyboard=True)
    markup.add(types.KeyboardButton(text=r"Разрешить.Press", request_contact=True))
    text = 'Необходимо разрешить доступ к номеру телефона. Нажмите кнопку "Разрешить" ниже и "Ок" в появившемя окне\n Need access to phone number. Press button at the bootom, then "ok"'
    bot.send_message(message.chat.id, text, reply_markup=markup)
Пример #27
0
def load_vch(message, text):
    markup_menu = types.ReplyKeyboardMarkup(row_width=1)
    itembtn5 = types.KeyboardButton(
        'Этап 5. Ввести подразделение (воинскую часть)')
    markup_menu.add(itembtn5)
    bot.send_message(message.chat.id, text, reply_markup=markup_menu)
Пример #28
0
def mess(message):
    get_message_bot = message.text.strip().lower()

    if get_message_bot == "вибрати інший":
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True, row_width=3)
        btn1 = types.KeyboardButton('Не знаю свого рівня')
        btn2 = types.KeyboardButton('Немає знань')
        btn3 = types.KeyboardButton('Базові знання')
        btn4 = types.KeyboardButton('Бракує практики')
        btn5 = types.KeyboardButton('Готовий до роботи')
        btn6 = types.KeyboardButton('Бракує рівня англійської')
        markup.add(btn1, btn2, btn3, btn4, btn5, btn6)

        final_message = "Підівчив? \nВибери свій рівень знань Python:"
    elif get_message_bot == "не знаю свого рівня":
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True, row_width=3)
        markup.add(
            types.InlineKeyboardButton("вибрати інший",
                                       url="https://itproger.com/test/python"))
        final_message = "Щоб дізнатись свій рівень <a href='https://itproger.com/test/python'>itproger</a>\nпройди тест"
    elif get_message_bot == "немає знань":
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True, row_width=3)
        markup.add(
            types.InlineKeyboardButton("вибрати інший",
                                       url="https://itproger.com/test/python"))
        final_message = "Щоб отримати базові знання <a href='https://career.softserveinc.com/uk-ua/technology/course/python_core'>SoftServe</a>\nпройди курс"
    elif get_message_bot == "базові знання":
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True, row_width=3)
        markup.add(
            types.InlineKeyboardButton("вибрати інший",
                                       url="https://itproger.com/test/python"))
        final_message = "Конвертуй знання у вміння <a href='https://career.softserveinc.com/uk-ua/technology/course/python_online_marathon'>SoftServe</a>\nпід час інтенсивного онлайн-марафону з кодування на Python"
    elif get_message_bot == "бракує практики":
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True, row_width=3)
        markup.add(
            types.InlineKeyboardButton("вибрати інший",
                                       url="https://itproger.com/test/python"))
        final_message = "Отримуй перший досвід роботи <a href='https://career.softserveinc.com/uk-ua/technology/course/become_python_developer'>SoftServe</a>\nу глобальній ІТ-компанії"
    elif get_message_bot == "готовий до роботи":
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True, row_width=3)
        markup.add(
            types.InlineKeyboardButton("вибрати інший",
                                       url="https://itproger.com/test/python"))
        final_message = "Конвертуй знання у шанс! <a href='https://career.softserveinc.com/uk-ua/certification/63-python-integration/detail'>SoftServe</a>\nУспіхів!"
    elif get_message_bot == "бракує рівня англійської":
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True, row_width=3)
        markup.add(
            types.InlineKeyboardButton("вибрати інший",
                                       url="https://itproger.com/test/python"))
        final_message = "Дізнайся свій рівень англійської <a href='https://www.britishcouncil.org.ua/english/learn-online/test'>britishcouncil</a>\nтут"

    else:
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True, row_width=3)
        btn1 = types.KeyboardButton('Не знаю свого рівня')
        btn2 = types.KeyboardButton('Немає знань')
        btn3 = types.KeyboardButton('Базові знання')
        btn4 = types.KeyboardButton('Бракує практики')
        btn5 = types.KeyboardButton('Готовий до роботи')
        btn6 = types.KeyboardButton('Бракує рівня англійської')
        markup.add(btn1, btn2, btn3, btn4, btn5, btn6)
        final_message = "Щось пішло не так\nКраще нажми на одну з інтерактивних кнопок. \nА для пошуку нас у соцмережаш, введи наступні команди /website, /insta, /facebook"
    bot.send_message(message.chat.id,
                     final_message,
                     parse_mode='html',
                     reply_markup=markup)
Пример #29
0
def search_request(message):
    # try:

        if message.text =='/start':
            # keyboard
            markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
            go_btn = types.KeyboardButton('Go')
            search_btn = types.KeyboardButton('Search')
            sub_list_btn = types.KeyboardButton('My Subs')

            markup.add(go_btn, search_btn, sub_list_btn)

            bot.reply_to(message, "Hello user\n welcome to my bot \n if u dont now how 2 use it write /info command ", reply_markup=markup)
            display.reg_user(message)

        if message.text == 'Search':
            bot.reply_to(message, "Write id of group u want 2 find")  # answer on ur /search command
            bot.register_next_step_handler(message, display.search_result)  # waiting 4 user's response


        if message.text == 'Break':
            m = Model()
            m.set_isSearching(message.from_user.id, 0)
            markup = types.ReplyKeyboardMarkup(resize_keyboard=True)

            go_btn = types.KeyboardButton('Go')
            search_btn = types.KeyboardButton('Search')
            sub_list_btn = types.KeyboardButton('My Subs')

            markup.add(go_btn, search_btn, sub_list_btn)
            bot.reply_to(message, 'ok', reply_markup=markup)


        if message.text == 'Go':
            markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
            break_btn = types.KeyboardButton('Break')
            search_btn = types.KeyboardButton('Search')
            sub_list_btn = types.KeyboardButton('My Subs')

            m = Model()
            if m.get_user(message.from_user.id)[0][5] != 1:
                markup.add(search_btn, sub_list_btn, break_btn)
                bot.reply_to(message, 'Let\'s go', reply_markup=markup)
                m.set_isSearching(message.from_user.id, 1)


        if message.text == 'My Subs':
            display.get_sublist(message)


        if message.text == 'Info':
            bot.reply_to(message, Configuration.info)


        if message.text == 'Hi' :
            bot.reply_to(message, 'Hi ' + message.from_user.first_name,   )


        if message.text == '/':
            if message.from_user.id == Configuration.Admin:
                print('app is running')
                display.scanning()
                print(message)
def lalala(message):

    file = open(r"test.txt", "a")
    dt = datetime.now()
    flag = 0
    print(message.from_user.username)
    user = message.from_user.username
    markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
    nameIndex = 0
    #snIndex = 0
    for name in nameID:
        if user == name:
            print("Надено")
            print(user)
            print(nameID.index(message.from_user.username))
            nameIndex = nameID.index(user)
    if user == nameID[nameIndex]:
        url = 'http://ce05390-django.tw1.ru/api/v1/lamps/lamps/detail/' + str(
            snID[nameIndex]) + '/'
        #url + str(snID[nameIndex]) + '/'
        response = requests.get(url)
        print(response.json())
        J = response.json()
        print(J["mode"])

        Mode_1 = {
            "id": 10,
            "status": 10,
            "mode": 10,
            "red": 100,
            "green": 100,
            "blue": 100,
        }
        Mode_1['id'] = J["id"]
        Mode_1['status'] = J["status"]
        Mode_1['mode'] = J["mode"]
        Mode_1['red'] = J["red"]
        Mode_1['green'] = J["green"]
        Mode_1['blue'] = J["blue"]
        print(message.from_user.id)
        print(message.from_user.first_name)
        print(message.from_user.last_name)
        print(message.from_user.username)
        file.write(str(dt) + '\n')
        file.write(user + '\n')
        print(message.text)
        if message.text == 'Старт' or message.text == 'Главное меню':
            markup.row("Режимы", "Ручной режим")
            markup.row("Выключить", "Увлажнитель вкл/выкл")
        if message.text == "Ручной режим":
            markup.row("❤+", "💚+", "💙+")
            markup.row("❤-", "💚-", "💙-")
            markup.row("сброс настроек")
            markup.row("Главное меню")
        if message.text == "Режимы":
            markup.row("💡 Режим 1", "💡 Режим 2", "💡 Режим 3")
            markup.row("💡 Режим 4", "💡 Режим 5")
            markup.row("💡 Выключить")
            markup.row("Главное меню")

        if message.text == "Увлажнитель вкл/выкл":
            print('Изменения значения для увлажнителя')
            print(Mode_1['status'])
            if Mode_1['status'] == "1":
                Mode_1['status'] = 0
                print("Установка = 0")
            if Mode_1['status'] == "0":
                Mode_1['status'] = 1
                print("Установка = 1")
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)

        if message.text == '💡 Выключить' or message.text == 'Выключить':
            Mode_1['mode'] = 1
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)

        if message.text == '💡 Режим 1':
            Mode_1['mode'] = 2
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)

        if message.text == '💡 Режим 2':
            Mode_1['mode'] = 3
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)

        if message.text == '💡 Режим 3':
            Mode_1['mode'] = 4
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)

        if message.text == '💡 Режим 4':
            Mode_1['mode'] = 5
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)
        if message.text == '💡 Режим 5':
            Mode_1['mode'] = 6
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)

        if message.text == "❤+":
            r = Mode_1.get("red")
            r = int(r) + 25
            Mode_1["red"] = r
            Mode_1['mode'] = 7
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)
            bot.send_message(message.chat.id, "🖤", reply_markup=markup)
            bot.send_message(message.chat.id,
                             'red ' + str(Mode_1['red']),
                             reply_markup=markup)
            bot.send_message(message.chat.id,
                             'green ' + str(Mode_1['green']),
                             reply_markup=markup)
            bot.send_message(message.chat.id,
                             'blue ' + str(Mode_1['blue']),
                             reply_markup=markup)
        if message.text == "💚+":
            g = Mode_1.get("green")
            g = int(g) + 25
            Mode_1["green"] = g
            Mode_1['mode'] = 7
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)
            bot.send_message(message.chat.id, "🖤", reply_markup=markup)
            bot.send_message(message.chat.id,
                             'red ' + str(Mode_1['red']),
                             reply_markup=markup)
            bot.send_message(message.chat.id,
                             'green ' + str(Mode_1['green']),
                             reply_markup=markup)
            bot.send_message(message.chat.id,
                             'blue ' + str(Mode_1['blue']),
                             reply_markup=markup)
        if message.text == "💙+":
            b = Mode_1.get("blue")
            b = int(b) + 25
            Mode_1["blue"] = b
            Mode_1['mode'] = 7
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)
            bot.send_message(message.chat.id, "🖤", reply_markup=markup)
            bot.send_message(message.chat.id,
                             'red ' + str(Mode_1['red']),
                             reply_markup=markup)
            bot.send_message(message.chat.id,
                             'green ' + str(Mode_1['green']),
                             reply_markup=markup)
            bot.send_message(message.chat.id,
                             'blue ' + str(Mode_1['blue']),
                             reply_markup=markup)
        if message.text == "❤-":
            r = Mode_1.get("red")
            r = int(r) - 25
            Mode_1["red"] = r
            Mode_1['mode'] = 7
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)
            bot.send_message(message.chat.id, "🖤", reply_markup=markup)
            bot.send_message(message.chat.id,
                             'red ' + str(Mode_1['red']),
                             reply_markup=markup)
            bot.send_message(message.chat.id,
                             'green ' + str(Mode_1['green']),
                             reply_markup=markup)
            bot.send_message(message.chat.id,
                             'blue ' + str(Mode_1['blue']),
                             reply_markup=markup)
        if message.text == "💚-":
            g = Mode_1.get("green")
            g = int(g) - 25
            Mode_1["green"] = g
            Mode_1['mode'] = 7
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)
            bot.send_message(message.chat.id, "🖤", reply_markup=markup)
            bot.send_message(message.chat.id,
                             'red ' + str(Mode_1['red']),
                             reply_markup=markup)
            bot.send_message(message.chat.id,
                             'green ' + str(Mode_1['green']),
                             reply_markup=markup)
            bot.send_message(message.chat.id,
                             'blue ' + str(Mode_1['blue']),
                             reply_markup=markup)
        if message.text == "💙-":
            b = Mode_1.get("blue")
            b = int(b) - 25
            Mode_1["blue"] = b
            Mode_1['mode'] = 7
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)
            bot.send_message(message.chat.id, "🖤", reply_markup=markup)
            bot.send_message(message.chat.id,
                             'red ' + str(Mode_1['red']),
                             reply_markup=markup)
            bot.send_message(message.chat.id,
                             'green ' + str(Mode_1['green']),
                             reply_markup=markup)
            bot.send_message(message.chat.id,
                             'blue ' + str(Mode_1['blue']),
                             reply_markup=markup)
        if message.text == "сброс настроек":
            Mode_1["blue"] = 100
            Mode_1["green"] = 100
            Mode_1["red"] = 100
            Mode_1['mode'] = 7
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)
            bot.send_message(message.chat.id, "🖤", reply_markup=markup)
            bot.send_message(message.chat.id,
                             'red ' + str(Mode_1['red']),
                             reply_markup=markup)
            bot.send_message(message.chat.id,
                             'green ' + str(Mode_1['green']),
                             reply_markup=markup)
            bot.send_message(message.chat.id,
                             'blue ' + str(Mode_1['blue']),
                             reply_markup=markup)
        ###################################################################################################
        if int(Mode_1["blue"]) > 255:
            bot.send_message(
                message.chat.id,
                "Вы достигли придельного значения  синего цвета  ",
                reply_markup=markup)
            Mode_1["blue"] = 255
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)
        if int(Mode_1["green"]) > 255:
            bot.send_message(
                message.chat.id,
                "Вы достигли придельного значения  зеленого цвета  ",
                reply_markup=markup)
            Mode_1["green"] = 255
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)
        if int(Mode_1["red"]) > 255:
            bot.send_message(
                message.chat.id,
                "Вы достигли придельного значения  красного цвета  ",
                reply_markup=markup)
            Mode_1["red"] = 255
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)
        ##############################################################
        if int(Mode_1["blue"]) < 0:
            bot.send_message(
                message.chat.id,
                "Вы достигли придельного значения  синего цвета  ",
                reply_markup=markup)
            Mode_1["blue"] = 0
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)
        if int(Mode_1["green"]) < 0:
            bot.send_message(
                message.chat.id,
                "Вы достигли придельного значения  зеленого цвета  ",
                reply_markup=markup)
            Mode_1["green"] = 0
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)
        if int(Mode_1["red"]) < 0:
            bot.send_message(
                message.chat.id,
                "Вы достигли придельного значения  красного цвета  ",
                reply_markup=markup)
            Mode_1["red"] = 0
            response = requests.put(url_1 + str(snID[nameIndex]) + '/',
                                    json=Mode_1)
        ################################################################
        bot.send_message(message.chat.id, ".", reply_markup=markup)

        ms = message.chat.id
        file.write(str(ms) + '\n')
        #file.write(message.text + '\n')
        file.close()
    else:
        with open('test_csv.csv', 'r', encoding='utf-8') as fp:
            reader = _csv.reader(fp, delimiter=',', quotechar='"')
            for row in reader:
                nameID.append(row[0])
                snID.append(row[1])
        bot.send_message(message.chat.id, 'Вы не зарегистрированные')