Esempio n. 1
0
def user_entering_age(message):
    # Here we’ll do a check
    if not message.text.isdigit():
        # Состояние не меняем, поэтому только выводим сообщение об ошибке и ждём дальше
        bot.send_message(message.chat.id, "Something get wrong 🤔 Try again!")
        bot.send_sticker(
            message.chat.id,
            'CAACAgQAAxkBAAIlml5BssgRiup761KZTm_eAfnNwhmQAAIeAQACu-RJAAEYZh0WQkIVsRgE'
        )
        return
    # At this stage, we are sure that message.text can be converted to a number, so we do not risk anything
    if int(message.text) < 10 or int(message.text) > 100:
        bot.send_message(
            message.chat.id,
            "What a strange age! I don't believe you! Answer honestly 🙃")
        bot.send_sticker(
            message.chat.id,
            'CAACAgIAAxkBAAIloF5BtAPCWDpC4NmBuqPSqgN9dCz1AAKWAQACW90SCIRDegskrgwjGAQ'
        )
        return
    else:
        # Age entered correctly, can go further
        bot.send_message(
            message.chat.id,
            "Once upon a time, I was the same age as you do ... oh ... "
            "However, we will not be distracted. "
            "\nLet me know a little bit more about you ☺️"
            "\nWhere are you from?")
        dbworker.set_state(message.chat.id,
                           config.States.S_SEND_LOCATION.value)
Esempio n. 2
0
    def user_choose_support_line(message, msg_text):

        Other_Function.delete_message(
            config.token, message.chat.id,
            message.message_id)  # удаляет лишнии сообщения бота

        user_data['SupLine'] = msg_text
        # вносит занчение выбранной линии поддержки

        keyboard = types.InlineKeyboardMarkup()

        callback_button_1 = types.InlineKeyboardButton(text="Менее 10",
                                                       callback_data="CS_1")
        # Кнопка для значения размера компании < 10
        callback_button_2 = types.InlineKeyboardButton(text="От 10 до 100",
                                                       callback_data="CS_2")
        # Кнопка для значения размера компании < 100
        callback_button_3 = types.InlineKeyboardButton(text="От 100 до 1000",
                                                       callback_data="CS_3")
        # Кнопка для значения размера компании < 1000
        callback_button_4 = types.InlineKeyboardButton(text="Более 1000",
                                                       callback_data="CS_4")
        # Кнопка для значения размера компании > 1000

        keyboard.add(callback_button_1, callback_button_2, callback_button_3,
                     callback_button_4)

        bot.send_message(message.chat.id,
                         "Укажите размер компании",
                         reply_markup=keyboard)
        # Выводим вопрос и клавиатуру

        dbworker.set_state(message.chat.id, config.States.S_ENTER_COMPANY_SIZE.
                           value)  # Изменяет стадию работы бота с клиентом
Esempio n. 3
0
def take_this_nomber(message):
    # Если пользователь нажал согласился предоставить свой телефон

    pn = message.contact.phone_number

    user_data['Phone'] = pn
    # Вносит занчение контактной телефона

    Other_Function.delete_message(config.token, message.chat.id,
                                  message.message_id -
                                  1)  # удаляет лишнии сообщения бота

    # Если данная функция срабатывает при редактировании элемента, то пеосле переводит на стадию подтверждения корректности заявки
    # Понимание работы в режиме редактирования происходит за счет значения Choose Edit словаря
    if user_data['Choose Edit'] == 'ET_CL':

        Other_Function.user_current_reply(message)
        # Переводит на стадию подтверждения корректности заявки с измененным элементом

        user_data['Choose Edit'] = ''
        # Обнуляет служебное значение

        return

    dbworker.set_state(
        message.chat.id,
        config.States.S_TICKET.value)  # Изменяет стадию работы бота с клиентом

    msg = bot.send_message(message.chat.id, "Опишите вопрос")

    bot.register_next_step_handler(msg, user_entering_tiket)
Esempio n. 4
0
def cmd_reset(message):
    bot.send_message(
        message.chat.id, "Let's start anew.\n"
        "Which day's statistics do you want to get: /today or /yesterday.\n"
        "Use /info or /commands to rewind what I am and what can I do.")
    bot.send_photo(message.chat.id, pict[randint(0, 5)])
    dbworker.set_state(message.chat.id, config_my.States.S_ENTER_DAY.value)
Esempio n. 5
0
def user_sending_photo(message):
    # То, что это фотография, мы уже проверили в хэндлере, никаких дополнительных действий не нужно.
    bot.send_message(
        message.chat.id,
        "Отлично! Больше от тебя ничего не требуется. Если захочешь пообщаться снова - "
        "отправь команду /start.")
    dbworker.set_state(message.chat.id, config.States.S_START.value)
Esempio n. 6
0
def addincome(message):
    keyboard = telebot.types.ReplyKeyboardMarkup()
    keyboard.row('salary', 'pozhertvovanie gosudarstva')
    keyboard.row('/help', '/reset')
    keyboard.row('/mainmenu')
    bot.send_message(message.chat.id, "Choose type of income: ", reply_markup=keyboard)
    dbworker.set_state(message.chat.id, config.State.S_ENTER_TYPE_INCOME, message.chat.username)
Esempio n. 7
0
def send_welcome(message):
    bot.send_message(message.chat.id, 'Что ж, давайте поменяем настройки')
    bot.send_message(message.chat.id,
                     text="Выберите настройку",
                     reply_markup=keyboard_settings)
    dbworker.set_state(message.chat.id, config.States.S_SETTINGS.value)
    bot.delete_message(message.chat.id, message.id)
Esempio n. 8
0
def get_lang(message):
    if not (message.text == 'ru' or message.text == 'en'):
        bot.send_message(message.chat.id, "Language can be only en or ru!")
    else:
        dbworker.set_data(message.chat.id, 'lang', message.text)

        if dbworker.get_current_state(
                message.chat.id) == dbconfiguration.CAESAR_LANG_ET:
            bot.send_message(message.chat.id,
                             '''So, there is your output file!''')
            bot.send_document(
                message.chat.id,
                Caesar.encrypt_text(
                    dbworker.get_data(message.chat.id, 'file'),
                    dbworker.get_data(message.chat.id, 'shift'),
                    dbworker.get_data(message.chat.id,
                                      'lang')).encode('UTF-8'))
            dbworker.clear_data(message.chat.id)

        if dbworker.get_current_state(
                message.chat.id) == dbconfiguration.CAESAR_LANG_DT:
            bot.send_message(message.chat.id,
                             '''So, there is your output file!''')
            bot.send_document(
                message.chat.id,
                Caesar.decrypt_text(
                    dbworker.get_data(message.chat.id, 'file'),
                    dbworker.get_data(message.chat.id, 'shift'),
                    dbworker.get_data(message.chat.id,
                                      'lang')).encode('UTF-8'))
            dbworker.clear_data(message.chat.id)

        dbworker.set_state(message.chat.id, dbconfiguration.CAESAR, bot)
Esempio n. 9
0
def user_entering_name(message):
    if "Назад" == message.text:
        dbworker.set_state(message.chat.id, config.States.SELECT_RULES.value)
    elif "Электрички" == message.text:
        markup = utils.generate_markup(["Минск -- Моло", "Моло -- Минск", "Назад"])
        bot.send_message(message.chat.id, "Выберите маршрут!", reply_markup=markup)
        dbworker.set_state(message.chat.id, config.States.SELECT_RULES.value)
Esempio n. 10
0
def handele_text(message):
    conversation_state = dbworker.get_current_state(message.chat.id)
    if conversation_state == constants.States.ENTER_PICTURE_TOPIC:
        dbworker.set_state(message.chat.id, constants.States.SENT_PICTURE_TOPIC)
        send_picture_by_topic(message.chat.id, message.text)
    else:
        bot.reply_to(message, constants.text_messages['plain_text'])
Esempio n. 11
0
def Ia_Jok(call):
    zhauap = call.data[4:]
    db = SQLight()
    reply_markup = telebot.types.ReplyKeyboardRemove()
    if zhauap == 'Бар':
        db.update_sala(123, zhauap)
        bot.answer_callback_query(call.id, text="Күте тұрыңыз...")
        bot.send_message(
            call.from_user.id,
            "<a href='https://www.youtube.com/watch?v=lJ-7CODAQqc'>Саласы бар</a>",
            parse_mode="HTML",
            reply_markup=zhukteu_batyrma())
        return
    bot.answer_callback_query(call.id, text="Күте тұрыңыз...")
    db.update_sala(123, zhauap)
    markup = telebot.types.InlineKeyboardMarkup()
    row_1 = [
        telebot.types.InlineKeyboardButton(text="Саламды анықтағым келеді",
                                           callback_data='#')
    ]
    markup.row(*row_1)
    bot.send_message(
        call.from_user.id,
        "<a href='https://www.youtube.com/watch?v=uWRvrdOyBXA'>Салам бар, бірақ өзім білмеймін</a>",
        parse_mode="HTML",
        reply_markup=markup)
    dbworker.set_state(call.from_user.id, config.States.kirispe_pikir.value)
Esempio n. 12
0
def result_ret(message):
    if message.text in ('2010', '2011', '2012', '2013', '2014', '2015', '2016', '2017', '2018', '2019', '2020'):
        year = message.text
        day = dbworker.get_property(message.chat.id, "day")
        if int(day) < 10:
            day = '0' + day
        month = dbworker.get_property(message.chat.id, "month")
        code = dbworker.get_property(message.chat.id, "code")
        print(code, day, year, month)
        print(day+ '.' + months[month] + '.' + year)
        markup = types.ReplyKeyboardRemove(selective=False)
        bot.send_message(message.chat.id, "Минутку...", reply_markup=markup)
        url = 'https://cbr.ru/currency_base/daily/?UniDbQuery.Posted=True&UniDbQuery.To='
        x = stat(url + day + '.' + months[month] + '.' + year)
        x.set_index('Код', inplace=True)

        result_ex = x.loc[code]
        bot.send_message(message.chat.id, f"Курс {code} на {day + '.' + months[month] + '.' + year}")
        bot.send_message(message.chat.id, f"{result_ex[2]} руб. за {result_ex[0]} {result_ex[1]}")

        dbworker.set_state(message.chat.id, config.States.S_START.value)
    else:
        #bot.send_message(message.chat.id, "История ежедневного курса валют у Банка России .")
        bot.send_message(message.chat.id, "Вы ввели неверный год. Попробуйте еще раз.")
        dbworker.set_state(message.chat.id, config.States.S_ENTER_YEAR.value)
    bot.send_message(message.chat.id, "Используйте /info или /commands чтобы узнать что может сообщить бот.")
Esempio n. 13
0
def ent_month(message):
    if message.text in ('Янв', 'Фев', 'Мар', 'Апр', 'Май', 'Июн', 'Июл', 'Авг', 'Сен', 'Окт','Ноя','Дек'):
        dbworker.set_property(message.chat.id, message.text, "month")
        markup = types.ReplyKeyboardMarkup()
        itembtn1 = types.KeyboardButton('2010')
        itembtn2 = types.KeyboardButton('2011')
        itembtn3 = types.KeyboardButton('2012')
        itembtn4 = types.KeyboardButton('2013')
        itembtn5 = types.KeyboardButton('2014')
        itembtn6 = types.KeyboardButton('2015')
        itembtn7 = types.KeyboardButton('2016')
        itembtn8 = types.KeyboardButton('2017')
        itembtn9 = types.KeyboardButton('2018')
        itembtn10 = types.KeyboardButton('2019')
        itembtn11 = types.KeyboardButton('2020')



        markup.add(itembtn1, itembtn2, itembtn3, itembtn4, itembtn5, itembtn6, itembtn7, itembtn8, itembtn9,
                   itembtn10, itembtn11)
        bot.send_message(message.chat.id, "Выберите год:", reply_markup=markup)
        dbworker.set_state(message.chat.id, config.States.S_ENTER_YEAR.value)
    else:
        bot.send_message(message.chat.id, "Вы ввели неверный месяц. Попробуйте еще раз.")
        dbworker.set_state(message.chat.id, config.States.S_ENTER_MONTH.value)
Esempio n. 14
0
def day(message):
    if message.text in ('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'):
        #currency = messages.text
        dbworker.set_property(message.chat.id, message.text, "day")

        bot.reply_to(message, 'Введите месяц')
        #dbworker.set_property(messages.chat.id, currency, "code")
        markup = types.ReplyKeyboardMarkup()
        itembtn1 = types.KeyboardButton('Янв')
        itembtn2 = types.KeyboardButton('Фев')
        itembtn3 = types.KeyboardButton('Мар')
        itembtn4 = types.KeyboardButton('Апр')
        itembtn5 = types.KeyboardButton('Май')
        itembtn6 = types.KeyboardButton('Июн')
        itembtn7 = types.KeyboardButton('Июл')
        itembtn8 = types.KeyboardButton('Авг')
        itembtn9 = types.KeyboardButton('Сен')
        itembtn10 = types.KeyboardButton('Окт')
        itembtn11 = types.KeyboardButton('Ноя')
        itembtn12 = types.KeyboardButton('Дек')


        markup.add(itembtn1, itembtn2, itembtn3, itembtn4, itembtn5, itembtn6, itembtn7, itembtn8, itembtn9,
                   itembtn10, itembtn11, itembtn12)
        bot.send_message(message.chat.id, "Выберите месяц:", reply_markup=markup)
        dbworker.set_state(message.chat.id, config.States.S_ENTER_MONTH.value)
    else:
        bot.send_message(message.chat.id, "Вы ввели неверную дату. Попробуйте еще раз.")
        dbworker.set_state(message.chat.id, config.States.S_ENTER_DAY.value)
Esempio n. 15
0
def type_income(message):
    in_type = message.text
    dbworker.drop_table(message.chat.id)
    dbworker.temp_table_income(message.chat.id, in_type)
    dbworker.set_state(message.chat.id, config.State.S_ENTER_INCOME, message.chat.username)
    bot.send_message(message.chat.id, 'Enter sum, please')
    bot.send_message(message.chat.id, 'PS If you want enter float number you will use dot, not comma(56.6)')
Esempio n. 16
0
def select_rule(message):
    # if ([i for i in GREETINGS if i in message.text.lower()]):
    #     bot.send_message(message.chat.id, 'Що нада бля?')
    # elif ([i for i in TRAINS if i in message.text.lower()]):
        if "Назад" == message.text:
            dbworker.set_state(message.chat.id, config.States.MAIN_SELECT.value)
        elif "Моло -- Минск" == message.text:
            os.remove("quotes.json")
            print(os.system("scrapy crawl Pavuk -o quotes.json -a url=molodechno--minsk"))
        elif "Минск -- Моло" == message.text:
            os.remove("quotes.json")
            print(os.system("scrapy crawl Pavuk -o quotes.json -a url=minsk--molodechno"))
        try:
            with open("quotes.json") as json_file:
                json_data = json.load(json_file)
                print(json_data[0]['time'][0][3:5])
                data = [i for i in json_data if (datetime.datetime.now().time().hour < int(i['time'][0][:2])) or ((datetime.datetime.now().time().hour == int(i['time'][0][:2])) and datetime.datetime.now().time().minute < int(i['time'][0][3:5]))]
                if not data:
                    data = json_data[:3]
                bot.send_message(message.chat.id,
                f"1. {data[0]['time'][0]} --- {data[0]['time'][1]} {data[0]['path']}\n"
                f"2. {data[1]['time'][0]} --- {data[1]['time'][1]} {data[1]['path']}\n"
                f"3. {data[2]['time'][0]} --- {data[2]['time'][1]} {data[2]['path']}\n")
        except IOError:
            pass
Esempio n. 17
0
def addexpense(message):
    keyboard = telebot.types.ReplyKeyboardMarkup()
    keyboard.row('coffee', 'food')
    keyboard.row('/help', '/reset')
    keyboard.row('/mainmenu')
    bot.send_message(message.chat.id, "Choose type of expense: ", reply_markup=keyboard)
    dbworker.set_state(message.chat.id, config.State.S_ENTER_TYPE_EXPENSE, message.chat.username)
def settings_message(message):
    if message.from_user.id == 460800754:
        bot.send_message(message.chat.id, "Вес Рост Пол")
        dbworker.set_state("460800754", config.States.S_EDIT.value)
        print("-1")
    else:
        bot.send_message(message.chat.id, "Нет ноступа!")
Esempio n. 19
0
def callback_inline(call):
    if call.message:
        try:
            u_id=call.message.chat.id
            c = sqlite3.connect(config.db_user_dataset)
            d_c = sqlite3.connect(config.db_database_dump_file)
            # data=dump_worker.get_data()
            dump_worker.user_pik_append(c,u_id,dump_worker.chek_pik(c,d_c,u_id,int(call.data)))
            dump_worker.user_chose_update(c,u_id)
            unic=dump_worker.search_unic_data(c,d_c,u_id)
            if type(unic[0])==dict:
                bot.edit_message_text(chat_id=u_id, message_id=call.message.message_id, text='Вот то что мы сумели найти: ')
                for i in unic:
                    items=list(i.items())
                    up_str=''
                    for item in items:
                        if item[1]=='':
                            continue
                        else:
                            up_str=up_str+item[0]+': '+item[1]+'\n'
                    bot.send_message(u_id,text=up_str)
                    foto_way=foto_worker.read_foto(u_id,i['photo'])
                    bot.send_photo(u_id,photo = open(foto_worker.create_way(foto_way), 'rb'))
                    foto_worker.delite_foto(foto_worker.create_way(foto_way))
                    # foto_worker.delite_foto(foto_way)
            elif unic[0]=='':
                bot.send_message(u_id,'Для этой модели/категории пока ничего нет, попробуйте позже или свяжитесь с нами')
                dump_worker.user_chose_reset(с,u_id)
                dbworker.set_state(u_id, config.States.S_START_EARNING.value)
            else:
                key=create_inline(unic)
            bot.edit_message_text(chat_id=u_id, message_id=call.message.message_id, text='из списка:',reply_markup=key)
        except:
            bot.send_message(call.message.chat.id,text='что-то пошло не так нажмите "Вернуться в меню"')
Esempio n. 20
0
def user_sending_photo(message):
    bot.send_message(message.chat.id, "Чи є у тебе хоббі? Яке саме?")
    dbworker.set_state(message.chat.id, config.States.S_HOBBY.value)
    info = session.query(Info).filter_by(chat_id=message.chat.id).first()
    info.komun = message.text
    session.add(info)
    session.commit()
Esempio n. 21
0
def company_add(message):
    if message.text != 'Хватит':
        try:
            dbworker.set_notification_member(message.chat.id, message.text)
            bot.send_message(
                message.chat.id,
                text=
                'Отлично. Я запомнил. Может выберем что-то еще или напишите <b>Хватит</b>',
                parse_mode='HTML')
        except TypeError:
            bot.send_message(
                message.chat.id,
                text=
                'Упс, похоже вы ввели неправильное название компании. Попробуйте ввести название компании еще раз:('
            )
    else:
        notification_list = dbworker.get_notification_list(message.chat.id)
        if notification_list:
            bot.send_message(
                message.chat.id,
                text="Выбранный вами список компаний (Название - Тикер - Биржа)"
            )
            bot.send_message(message.chat.id, text=notification_list)
            dbworker.set_state(message.chat.id, config.States.S_START.value)
        else:
            bot.send_message(message.chat.id,
                             text='''Кажется вы ничего не выбрали.\n
Введите список компаний, которые хотите добавить в уведомления.\n
Чтобы прекратить ввод, напишите: <b>Хватит</b>''',
                             parse_mode='HTML')
Esempio n. 22
0
def user_sending_photo(message):
    bot.send_message(message.chat.id, "Відмінно! Напиши свою пошту.")
    dbworker.set_state(message.chat.id, config.States.S_SEND_MAIL.value)
    info = session.query(Info).filter_by(chat_id=message.chat.id).first()
    info.phone = message.text
    session.add(info)
    session.commit()
Esempio n. 23
0
def startEarning(message):
    if (message.text == 'Вернуться в меню ⬅'):
        dbworker.set_state(message.chat.id,
                           config.States.S_START_EARNING.value)
        openMainMenu(message)

    if (message.text == 'Steam'):
        bot.send_message(message.from_user.id,
                         'данный раздел пока в разработке')
        keyboard = types.ReplyKeyboardMarkup(row_width=2, resize_keyboard=True)
        button_back = types.KeyboardButton(text="Вернуться в меню ⬅")
        keyboard.add(button_back)

    if (message.text == 'Qiwi'):

        keyboard = types.ReplyKeyboardMarkup(row_width=2, resize_keyboard=True)
        button_back = types.KeyboardButton(text="Вернуться в меню ⬅")
        keyboard.add(button_back)

        bot.send_message(
            message.from_user.id,
            'введите количество ' + config.Default_Values.D_CURRENCY.value +
            ' для перевода и номер телефона( без 8 и через пробел )',
            reply_markup=keyboard)

        dbworker.set_state(message.chat.id, config.States.S_QIWI.value)
Esempio n. 24
0
def user_sending_photo(message):
    bot.send_message(message.chat.id, "Подобається тобі працювати в команді?")
    dbworker.set_state(message.chat.id, config.States.S_LIKE.value)
    info = session.query(Info).filter_by(chat_id=message.chat.id).first()
    info.job = message.text
    session.add(info)
    session.commit()
Esempio n. 25
0
def tour_msg(message):
    state = dbworker.get_current_state(message.chat.id)
    balance = getBalance(message.from_user.id)
    sub_status = checkSubscriber(message.from_user.id)
    if sub_status:
        if state == config.States.S_YN_POST.value:
            bot.send_message(message.chat.id,
                             constants.msg_enter_text,
                             reply_markup=reset_markup())
        else:
            bot.send_message(message.chat.id,
                             constants.msg_enter_text,
                             reply_markup=reset_markup())
            dbworker.set_state(message.chat.id, config.States.S_YN_POST.value)
    else:
        if balance < 5:
            bot.send_message(message.chat.id,
                             getStrFailTour(message.from_user.id))
        else:
            if state == config.States.S_YN_TOUR.value:
                bot.send_message(message.chat.id,
                                 constants.msg_cost_5 +
                                 constants.msg_enter_text,
                                 reply_markup=reset_markup())
            else:
                bot.send_message(message.chat.id,
                                 constants.msg_cost_5 +
                                 constants.msg_enter_text,
                                 reply_markup=reset_markup())
                dbworker.set_state(message.chat.id,
                                   config.States.S_YN_TOUR.value)
Esempio n. 26
0
def user_entering_name(message):

    bot.send_message(
        message.chat.id,
        "Отлично имя, запомню! 👌 \nТеперь укажите, пожалуйста, свой номер телефона."
    )
    dbworker.set_state(message.chat.id, config.States.S_ENTER_PHONE.value)
Esempio n. 27
0
def user_entering_company_name(message):
    # Фукция обработки названия компании и запроса контактного лица

    Other_Function.delete_message(config.token, message.chat.id,
                                  message.message_id -
                                  1)  # удаляет лишнии сообщения бота

    user_data['Name Company'] = message.text
    # Вносит занчение названия компании

    # Если данная функция срабатывает при редактировании элемента, то пеосле переводит на стадию подтверждения корректности заявки
    # Понимание работы в режиме редактирования происходит за счет значения Choose Edit словаря
    if user_data['Choose Edit'] == 'ET_CmN':

        Other_Function.user_current_reply(message)
        # Переводит на стадию подтверждения корректности заявки с измененным элементом

        user_data['Choose Edit'] = ''
        # Обнуляет служебное значение

        return  # Обрывает работу функции

    bot.send_message(message.chat.id, "Укажите контактное лицо")

    dbworker.set_state(message.chat.id, config.States.S_ENTER_CONTACT_NAME.
                       value)  # Изменяет стадию работы бота с клиентом
Esempio n. 28
0
def mmm(message):
    chat_id = message.from_user.id
    db_users.update_lot(chat_id, 'phone_number', message.contact.phone_number)
    db_users.update_lot(chat_id, 'status', 'active')
    res = db_users.confirm(chat_id)
    row = ['Отменить', 'Перенести', 'Опаздываю']
    price = db_users.price_list[res[0]]
    date = separate_callback_data(res[2])
    moth = db_users.moths[date[1]]
    bot.send_message(
        text=f'Услуга: {res[0]}\n'
        f'Мастер: {res[1]}\n'
        f'Дата: {date[2]} {moth}\n'
        f'Время: {res[3]} \n'
        f'Стоимость: {price} ₽\n\n'
        f'Если что-то пойдет не по плану, используй кнопки под этим сообщением.',
        chat_id=chat_id,
        reply_markup=default_keyboard(row))
    a = [
        "Записаться", 'Мои заказы', 'Контакты', 'Адрес', "Мастера", "Услуги",
        "Пригласить друга", "Режим работы"
    ]
    bot.send_message(chat_id,
                     'Отлично, спасибо. Я тебя записал!',
                     reply_markup=start_markup(a, 2))
    db_users.write_pos(chat_id)
    dbworker.set_state(str(chat_id), '1')
Esempio n. 29
0
def choose_travel(message):
    global travel
    global country
    if message.text is None:
        return
    else:
        conn = sqlite3.connect(bot_conf.travel_file)
        cursor = conn.cursor()
        cursor.execute(
            "SELECT travelling.travel_company, travelling.cost, travelling.departure_date, travelling.return_date, travelling.description, travelling.counter FROM travelling WHERE travelling.country=?",
            (message.text, ))
        country = message.text
        t = cursor.fetchall()
        travel = list(t)

        bot.send_message(message.chat.id, "Вы выбрали следующую поездку")
        bot.send_message(message.chat.id, message.text)

        bot.send_message(message.chat.id,
                         "Туристический оператор: " + str(travel[0][0]))
        bot.send_message(message.chat.id,
                         "Стоимость поездки: " + str(travel[0][1]))
        bot.send_message(message.chat.id,
                         "Дата отправления: " + str(travel[0][2]))
        bot.send_message(message.chat.id,
                         "Дата возвращения: " + str(travel[0][3]))
        bot.send_message(message.chat.id,
                         "Описание тура: " + str(travel[0][4]))
        bot.send_message(message.chat.id,
                         "Количество путевок: " + str(travel[0][5]))

        bot.send_message(message.chat.id, "Хотите её приобрести?")
        dbworker.set_state(message.chat.id, bot_conf.States.S_BUY_TRAVEL.value)
Esempio n. 30
0
def cmd_choose_start_graphic(message):
    if message.text == "Отменить кастомизацию.":
        cmd_reset(message)
    else:
        if message.text == "Своя.":
            keyboard = types.ReplyKeyboardMarkup(row_width=2)
            item1 = types.KeyboardButton("Отменить кастомизацию.")
            keyboard.add(item1)
            bot.send_message(message.chat.id, "Загрузите заставку 1920x1080 .png", reply_markup=keyboard)
            conn = sqlite3.connect("database.db")
            cursor = conn.cursor()
            sql = "UPDATE user_custom SET Wallpaper='{0}' where user_id={1}".format(message.text.rstrip("."), message.from_user.id)
            cursor.execute(sql)
            conn.commit()
            conn.close()
            dbworker.set_state(message.chat.id, config.States.S_DOWNLOAD_WALLPAPER.value)
        if message.text != "Своя.":
            keyboard = types.ReplyKeyboardMarkup(row_width=2)
            item1 = types.KeyboardButton("Отменить кастомизацию.")
            keyboard.add(item1)
            bot.send_message(message.chat.id, "Оставьте контактные данные или нажмите Отменить", reply_markup=keyboard)
            conn = sqlite3.connect("database.db")
            cursor = conn.cursor()
            sql = "UPDATE user_custom SET Wallpaper='{0}' where user_id={1}".format(message.text.rstrip("."), message.from_user.id)
            cursor.execute(sql)
            conn.commit()
            conn.close()
            dbworker.set_state(message.chat.id, config.States.S_FINAL.value)