Esempio n. 1
0
def now_lesson_handler(message):
    bot.send_chat_action(message.chat.id, "typing")

    today = datetime.today() + server_timedelta
    json_day = func.get_json_day_data(message.chat.id, today.date())
    full_place = func.is_full_place(message.chat.id)
    answer = func.create_schedule_answer(json_day, full_place, message.chat.id)

    if "Выходной" in answer:
        func.send_long_message(bot, answer, message.chat.id)
    else:
        lessons = answer.strip().split("\n\n")[1:]
        for lesson in lessons:
            times = []
            for st in lesson.split("\n")[0].split(" ")[-1].split(
                    emoji["en_dash"]):
                times.append(func.string_to_time(st))
            if times[0] <= today.time() <= times[1]:
                answer = "{0} <b>Пара:</b>\n{1}".format(emoji["books"], lesson)
                func.send_long_message(bot, answer, message.chat.id)
                return
            elif today.time() <= times[0] and today.time() <= times[1]:
                answer = "{0} <b>Перерыв</b>\n\nСледующая:\n{1}".format(
                    emoji["couch_and_lamp"], lesson)
                func.send_long_message(bot, answer, message.chat.id)
                return

    answer = "{0} Пары уже закончились".format(emoji["sleep"])
    func.send_long_message(bot, answer, message.chat.id)
Esempio n. 2
0
def to_university_handler(message):
    bot.send_chat_action(message.chat.id, "typing")

    if message.text.title() == "В Универ":
        from_station = func.get_station_code(message.chat.id, is_home=True)
        to_station = func.get_station_code(message.chat.id, is_home=False)
    else:
        from_station = func.get_station_code(message.chat.id, is_home=False)
        to_station = func.get_station_code(message.chat.id, is_home=True)

    server_datetime = datetime.today() + server_timedelta
    data = get_yandex_timetable_data(from_station, to_station, server_datetime)
    answer = data["answer"]

    update_keyboard = InlineKeyboardMarkup(True)
    if data["is_OK"]:
        if data["is_tomorrow"]:
            bot.send_message(message.chat.id,
                             emoji["warning"] + " На сегодня нет электричек")
            update_keyboard.row(*[
                InlineKeyboardButton(text=name, callback_data=name)
                for name in ["Все на завтра"]
            ])
        else:
            update_keyboard.row(*[
                InlineKeyboardButton(text=name, callback_data=name)
                for name in ["Оставшиеся", "Обновить"]
            ])

    bot.send_message(message.chat.id,
                     answer,
                     reply_markup=update_keyboard,
                     parse_mode='HTML',
                     disable_web_page_preview=True)
Esempio n. 3
0
def schedule_for_interval(message):
    bot.send_chat_action(message.chat.id, "typing")
    from_date, to_date = func.text_to_interval(message.text.lower())
    json_data = func.get_json_interval_data(message.chat.id,
                                            from_date=from_date,
                                            to_date=to_date +
                                            timedelta(days=1))
    is_send = False
    full_place = func.is_full_place(message.chat.id)
    if len(json_data["Days"]) > 10:
        answer = "{0} Превышен интервал в <b>10 дней</b>".format(
            emoji["warning"])
        bot.send_message(text=answer,
                         chat_id=message.chat.id,
                         parse_mode="HTML")
        return
    elif len(json_data["Days"]):
        for day_info in json_data["Days"]:
            answer = func.create_schedule_answer(day_info, full_place,
                                                 message.chat.id)
            if "Выходной" in answer:
                continue
            func.send_long_message(bot, answer, message.chat.id)
            is_send = True

    if not is_send or not len(json_data["Days"]):
        answer = "{0} С <i>{1}</i> по <i>{2}</i> занятий нет".format(
            emoji["sleep"], func.datetime_to_string(from_date),
            func.datetime_to_string(to_date))
        bot.send_message(text=answer,
                         chat_id=message.chat.id,
                         parse_mode="HTML")
Esempio n. 4
0
def attestation_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    month = func.get_available_months(message.chat.id)
    if len(month) == 0:
        bot.send_message(message.chat.id, "<i>Нет событий</i>",
                         parse_mode="HTML")
        return
    inline_keyboard = InlineKeyboardMarkup()
    for key in month.keys():
        inline_keyboard.row(
            *[InlineKeyboardButton(text=month[key], callback_data=str(key))]
        )
    if message.text == "Сессия":
        answer = "Выбери месяц:"
        switch_button = "Допса"
    else:
        answer = "Выбери месяц для <b>допсы</b>:"
        switch_button = "Сессия"

    inline_keyboard.row(
        *[InlineKeyboardButton(text=switch_button, callback_data=switch_button)]
    )

    bot.send_message(message.chat.id, answer, reply_markup=inline_keyboard,
                     parse_mode="HTML")
Esempio n. 5
0
def send_welcome(message: Message):
    bot.send_chat_action(action='typing', chat_id=message.from_user.id)
    if dbm.exists(value=message.from_user.id):
        if dbm.get_user_language(message.from_user.id) == "NONE" and (
                message.text != "English" and message.text != "Русский"):
            bot.send_message(message.chat.id, text.UNDEFINED_LANGUAGE)
        else:
            bot.send_message(
                message.chat.id,
                getattr(
                    text,
                    dbm.get_user_language(message.from_user.id) +
                    "_user_return")(message.from_user.first_name, ))
    else:
        dbm.append_in_table(
            ID=message.from_user.id,
            First_Name=message.from_user.first_name,
            # Last_Name=message.from_user.last_name,
            User_language='NONE',
            # Login='******' + message.from_user.username,
            Best_score='NONE',
            Game_comb='NONE',
            Steps='NONE',
            Game_status='NONE',
            Games=0)
        bot.send_message(message.chat.id,
                         text.HELLO_MESSAGE,
                         parse_mode='HTML')
Esempio n. 6
0
def schedule_editor_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    answer = "Редактор расписания"
    bot.send_message(message.chat.id,
                     answer,
                     reply_markup=schedule_editor_keyboard,
                     parse_mode='HTML')
Esempio n. 7
0
def new_game(message: Message):
    bot.send_chat_action(action='typing', chat_id=message.from_user.id)
    if dbm.get_user_language(message.from_user.id) == "NONE" and (
            message.text != "English" and message.text != "Русский"):
        bot.send_message(message.chat.id, text.UNDEFINED_LANGUAGE)
    else:
        if dbm.get_user_game_state(message.from_user.id) == states.GAMING:
            message_text = getattr(
                text,
                dbm.get_user_language(message.from_user.id) +
                "_new_game_while_gaming")()
            bot.send_message(message.chat.id, message_text)
        elif dbm.get_user_game_state(message.from_user.id) == states.NONE:
            message_text = getattr(
                text,
                dbm.get_user_language(user_id=message.from_user.id) +
                "_game_rules")()
            dbm.update(user_id=message.from_user.id,
                       item='Game_status',
                       new_value=states.GAMING)
            dbm.update(user_id=message.from_user.id,
                       item='Game_comb',
                       new_value=random_combination())
            dbm.update(user_id=message.from_user.id,
                       item='Steps',
                       new_value=str(0))
            bot.send_message(message.chat.id, message_text, parse_mode='HTML')
        else:
            bot.send_message(message.chat.id, 'Error')
Esempio n. 8
0
def group_templates_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    answer = ""
    groups = func.get_templates(message.chat.id)
    group_title = func.get_current_group(message.chat.id)[1]
    answer += "Текущая группа: <b>{0}</b>\n".format(group_title)
    last_row = ["Отмена", "Сохранить"]
    inline_keyboard = InlineKeyboardMarkup(row_width=2)
    if len(groups) == 0:
        answer += "Нет шаблонов групп, но ты можешь сохранить текущую\n"
    else:
        answer += "Выбери группу:"
        inline_keyboard.add(*[
            InlineKeyboardButton(text=name, callback_data=str(groups[name]))
            for name in groups.keys()
        ])
        if group_title in groups.keys():
            last_row = ["Отмена", "Удалить"]
    inline_keyboard.row(*[
        InlineKeyboardButton(text=name, callback_data=name)
        for name in last_row
    ])
    inline_keyboard.row(*[
        InlineKeyboardButton(text=name, callback_data=name)
        for name in ["Сменить группу"]
    ])
    bot.send_message(message.chat.id,
                     answer,
                     reply_markup=inline_keyboard,
                     parse_mode="HTML")
Esempio n. 9
0
def new_game(message: Message):
    bot.send_chat_action(action='typing', chat_id=message.from_user.id)
    if dbm.get_user_language(message.from_user.id) == "NONE" and (
            message.text != "English" and message.text != "Русский"):
        bot.send_message(message.chat.id, text.UNDEFINED_LANGUAGE)
    else:
        if dbm.get_user_game_state(user_id=message.from_user.id) == "NONE":
            message_text = getattr(
                text,
                dbm.get_user_language(message.from_user.id) +
                "_cant_end_game")()
            bot.send_message(message.chat.id, message_text)
        elif dbm.get_user_game_state(message.from_user.id) == states.GAMING:
            message_text = getattr(
                text,
                dbm.get_user_language(message.from_user.id) + "_ended_game")()
            dbm.update(user_id=message.from_user.id,
                       item='Game_status',
                       new_value=states.NONE)
            dbm.update(user_id=message.from_user.id,
                       item='Game_comb',
                       new_value=states.NONE)
            dbm.update(user_id=message.from_user.id,
                       item='Steps',
                       new_value=states.NONE)
            bot.send_message(chat_id=message.chat.id, text=message_text)
        else:
            bot.send_message(message.chat.id, 'Error')
Esempio n. 10
0
def users_callback_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    bot.forward_message(ids["my"], message.chat.id, message.message_id)
    bot.send_message(message.chat.id,
                     "Записал",
                     reply_markup=main_keyboard,
                     reply_to_message_id=message.message_id)
Esempio n. 11
0
def educator_schedule_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    answer = "Введи Фамилию преподавателя: <i>(и И. О.)</i>"
    markup = ForceReply(False)
    bot.send_message(message.chat.id,
                     answer,
                     reply_markup=markup,
                     parse_mode="HTML")
Esempio n. 12
0
def choose_educator_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    answer = "Здесь ты можешь выбрать для отображения занятие или " \
             "преподавателя:"
    inline_keyboard = InlineKeyboardMarkup(True)
    inline_keyboard.row(*[
        InlineKeyboardButton(text=name, callback_data=name)
        for name in ["Преподавателя", "Занятие"]
    ])
    bot.send_message(message.chat.id, answer, reply_markup=inline_keyboard)
Esempio n. 13
0
def write_educator_name_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    answer = ""
    name = message.text.strip(". ")
    if not func.is_correct_educator_name(name):
        answer = "Недопустимые символы"
        bot.send_message(message.chat.id,
                         answer,
                         reply_markup=schedule_keyboard)
        return

    try:
        educators_data = spbu.search_educator(name)
    except spbu.ApiException:
        answer = "Во время выполнения запроса произошла ошибка."
        bot.send_message(message.chat.id,
                         answer,
                         reply_markup=schedule_keyboard)
        return

    if not educators_data["Educators"]:
        answer = "Никого не найдено"
        bot.send_message(message.chat.id,
                         answer,
                         reply_markup=schedule_keyboard)
    elif len(educators_data["Educators"]) > 200:
        answer = "Слишком много преподавателей\n" \
                 "Пожалуйста, <b>уточни</b>"
        bot.send_message(message.chat.id, answer, parse_mode="HTML")
        answer = "Введи Фамилию преподавателя: <i>(и И. О.)</i>"
        markup = ForceReply(False)
        bot.send_message(message.chat.id,
                         answer,
                         reply_markup=markup,
                         parse_mode="HTML")
    else:
        bot.send_message(message.chat.id,
                         "Готово!",
                         reply_markup=schedule_keyboard)

        educators_keyboard = InlineKeyboardMarkup(row_width=2)
        educators_keyboard.add(*[
            InlineKeyboardButton(text=educator["DisplayName"],
                                 callback_data=str(educator["Id"]))
            for educator in educators_data["Educators"]
        ])
        educators_keyboard.row(
            InlineKeyboardButton(text="Отмена", callback_data="Отмена"))
        answer = "{0} Найденные преподаватели:\n\n".format(
            emoji["mag_right"]) + answer
        bot.send_message(message.chat.id,
                         answer,
                         reply_markup=educators_keyboard,
                         parse_mode="HTML")
Esempio n. 14
0
def problem_text_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    answer = "Если возникла проблема, то:\n" \
             "1. Возможно, информация по этому поводу есть в нашем канале" \
             " - @Spbu4u_news;\n" \
             "2. Ты всегда можешь связаться с " \
             "<a href='https://t.me/eeonedown'>разработчиком</a>."
    bot.send_message(message.chat.id,
                     answer,
                     disable_web_page_preview=True,
                     parse_mode="HTML")
Esempio n. 15
0
def chose_to_return(message):
    bot.send_chat_action(message.chat.id, "typing")
    answer = "Выбери, что ты хочешь вернуть:"
    inline_keyboard = InlineKeyboardMarkup(True)
    inline_keyboard.row(
        *[InlineKeyboardButton(text=name, callback_data=name)
          for name in ["Преподавателей", "Занятия"]])
    inline_keyboard.row(
        *[InlineKeyboardButton(text=name, callback_data=name)
          for name in ["Полный сброс"]])
    bot.send_message(message.chat.id, answer, reply_markup=inline_keyboard)
Esempio n. 16
0
def suburban_handler(message):
    bot.send_chat_action(message.chat.id, "typing")

    answer = "Меню расписания электричек\n\n" \
             "Данные предоставлены сервисом " \
             "<a href = 'http://rasp.yandex.ru/'>Яндекс.Расписания</a>"
    bot.send_message(message.chat.id,
                     answer,
                     reply_markup=suburban_keyboard,
                     parse_mode='HTML',
                     disable_web_page_preview=True)
Esempio n. 17
0
def today_schedule_handler(message):
    bot.send_chat_action(message.chat.id, "typing")

    for_date = datetime.today().date() + server_timedelta
    if message.text.capitalize() == "Завтра":
        for_date += timedelta(days=1)

    json_day = func.get_json_day_data(message.chat.id, for_date)
    full_place = func.is_full_place(message.chat.id)
    answer = func.create_schedule_answer(json_day, full_place, message.chat.id)

    func.send_long_message(bot, answer, message.chat.id)
Esempio n. 18
0
def about_author(message: Message):
    bot.send_chat_action(action='typing', chat_id=message.from_user.id)
    if dbm.get_user_language(message.from_user.id) == "NONE" and (
            message.text != "English" and message.text != "Русский"):
        # bot.send_message(message.chat.id, text.UNDEFINED_LANGUAGE)
        bot.reply_to(message, text.UNDEFINED_LANGUAGE)
    else:
        message_text = getattr(
            text,
            dbm.get_user_language(message.from_user.id) + "_about_author")()
        # bot.send_message(message.chat.id, message_text, parse_mode='HTML')
        bot.reply_to(message, message_text, parse_mode='HTML')
Esempio n. 19
0
def calendar_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    answer = "Выбери день:"
    week_day_calendar = InlineKeyboardMarkup()
    week_day_calendar.row(*[
        InlineKeyboardButton(text=name, callback_data=name)
        for name in week_day_number.keys()
    ])
    week_day_calendar.row(*[
        InlineKeyboardButton(text=name, callback_data=name)
        for name in ["Вся неделя"]
    ])
    bot.send_message(message.chat.id, answer, reply_markup=week_day_calendar)
Esempio n. 20
0
def schedule_for_day(message):
    bot.send_chat_action(message.chat.id, "typing")
    day = func.text_to_date(message.text.lower())
    json_week = func.get_json_week_data(message.chat.id, for_day=day)
    json_day = func.get_json_day_data(message.chat.id,
                                      day_date=day,
                                      json_week_data=json_week)
    full_place = func.is_full_place(message.chat.id)
    answer = func.create_schedule_answer(json_day,
                                         full_place,
                                         user_id=message.chat.id,
                                         personal=True)
    func.send_long_message(bot, answer, message.chat.id)
Esempio n. 21
0
def help_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    inline_full_info_keyboard = InlineKeyboardMarkup()
    inline_full_info_keyboard.row(*[
        InlineKeyboardButton(text=name, callback_data=name)
        for name in ["Благодарности"]
    ])
    answer = briefly_info_answer
    bot.send_message(message.chat.id,
                     answer,
                     parse_mode="HTML",
                     reply_markup=inline_full_info_keyboard,
                     disable_web_page_preview=True)
Esempio n. 22
0
def schedule_for_weekday(message):
    bot.send_chat_action(message.chat.id, "typing")
    message.text = message.text.title()
    if message.text in week_day_titles.values():
        week_day = message.text
    else:
        week_day = week_day_titles[message.text]

    day_date = func.get_day_date_by_weekday_title(week_day)
    json_day = func.get_json_day_data(message.chat.id, day_date)
    full_place = func.is_full_place(message.chat.id)
    answer = func.create_schedule_answer(json_day, full_place, message.chat.id)
    func.send_long_message(bot, answer, message.chat.id)
Esempio n. 23
0
def set_ENG_language(message: Message):
    bot.send_chat_action(action='typing', chat_id=message.from_user.id)
    if dbm.get_user_language(message.from_user.id) == "Russian":
        # bot.send_message(message.chat.id, "Этот язык уже установлен")
        bot.reply_to(message, "Этот язык уже установлен")
    else:
        dbm.update(user_id=message.from_user.id,
                   item='User_language',
                   new_value='Russian')
        # bot.send_message(message.chat.id, getattr(text, dbm.get_user_language(message.from_user.id) + "_set")())
        bot.reply_to(
            message,
            getattr(text,
                    dbm.get_user_language(message.from_user.id) + "_set")())
Esempio n. 24
0
def set_ENG_language(message: Message):
    bot.send_chat_action(action='typing', chat_id=message.from_user.id)
    if dbm.get_user_language(message.from_user.id) == "English":
        # bot.send_message(message.chat.id, "This language is already set")
        bot.reply_to(message, "This language is already set")
    else:
        dbm.update(user_id=message.from_user.id,
                   item='User_language',
                   new_value='English')
        # bot.send_message(message.chat.id, getattr(text, dbm.get_user_language(message.from_user.id) + "_set")())
        bot.reply_to(
            message,
            getattr(text,
                    dbm.get_user_language(message.from_user.id) + "_set")())
Esempio n. 25
0
def hide_lesson_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    answer = "Здесь ты можешь скрыть любое занятие\n" \
             "Выбери день, когда есть это занятие:"
    json_week_data = func.get_json_week_data(message.chat.id)
    days = json_week_data["Days"]
    days_keyboard = InlineKeyboardMarkup(True)
    for day in days:
        days_keyboard.row(*[
            InlineKeyboardButton(text=name, callback_data=name)
            for name in [day["DayString"].split(", ")[0].capitalize()]
        ])
    days_keyboard.row(*[
        InlineKeyboardButton(text=name, callback_data=name)
        for name in ["Отмена"]
    ])
    bot.send_message(message.chat.id, answer, reply_markup=days_keyboard)
Esempio n. 26
0
def rate_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    answer = "Оцените качество сервиса:"
    user_rate = func.get_user_rate(message.chat.id)
    rate_keyboard = InlineKeyboardMarkup(row_width=5)
    rate_keyboard.add(*[
        InlineKeyboardButton(text=emoji["star2"]
                             if user_rate < count_of_stars else emoji["star"],
                             callback_data=str(count_of_stars))
        for count_of_stars in (1, 2, 3, 4, 5)
    ])
    rate_keyboard.add(*[
        InlineKeyboardButton(text=name, callback_data=name)
        for name in ["Связь", "Статистика"]
    ])
    bot.send_message(message.chat.id,
                     answer,
                     parse_mode="HTML",
                     reply_markup=rate_keyboard)
Esempio n. 27
0
def place_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    answer = "Здесь ты можешь выбрать отображаемый формат адреса\nСейчас: "
    place_keyboard = InlineKeyboardMarkup(True)
    if func.is_full_place(message.chat.id):
        answer += "<b>Полностью</b>"
        place_keyboard.row(*[
            InlineKeyboardButton(text=name, callback_data="Аудитория")
            for name in ["Только аудитория"]
        ])
    else:
        answer += "<b>Только аудитория</b>"
        place_keyboard.row(*[
            InlineKeyboardButton(text=name, callback_data="Полностью")
            for name in ["Полностью"]
        ])
    bot.send_message(message.chat.id,
                     answer,
                     parse_mode="HTML",
                     reply_markup=place_keyboard)
Esempio n. 28
0
def sending_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    answer = "Здесь ты можешь <b>подписаться</b> на рассылку расписания на " + \
             "следующий день или <b>отписаться</b> от неё.\n" + \
             "Рассылка производится в 21:00"
    sending_keyboard = InlineKeyboardMarkup(True)
    if func.is_sending_on(message.chat.id):
        sending_keyboard.row(*[
            InlineKeyboardButton(text=name, callback_data="Отписаться")
            for name in [emoji["cross_mark"] + " Отписаться"]
        ])
    else:
        sending_keyboard.row(*[
            InlineKeyboardButton(text=name, callback_data="Подписаться")
            for name in [emoji["check_mark"] + " Подписаться"]
        ])
    bot.send_message(message.chat.id,
                     answer,
                     parse_mode="HTML",
                     reply_markup=sending_keyboard)
Esempio n. 29
0
def start_handler(message):
    answer = ""

    if bot_name != "Spbu4UBot" and message.chat.id not in ids.values():
        answer = "Это тестовый бот. Используйте @Spbu4UBot"
        bot.send_message(message.chat.id, answer)
        return

    if message.text == "/start":
        answer = "Приветствую!\n"
    elif message.text.split()[1].isdecimal():
        answer = "Приветствую!\nДобавляю тебя в группу..."
        bot_msg = bot.send_message(message.chat.id, answer)
        try:
            group_id = int(message.text.split()[1])
        except ValueError:
            answer = "Ошибка в id группы."
            bot.edit_message_text(answer, message.chat.id, bot_msg.message_id)
            message.text = "/start"
            start_handler(message)
            return

        try:
            res = spbu.get_group_events(group_id)
        except spbu.ApiException:
            answer = "Ошибка в id группы."
            bot.edit_message_text(answer, message.chat.id, bot_msg.message_id)
            message.text = "/start"
            start_handler(message)
            return

        group_title = res["StudentGroupDisplayName"][7:]
        func.add_new_user(message.chat.id, group_id, group_title)
        answer = "Готово!\nГруппа <b>{0}</b>".format(group_title)
        bot.edit_message_text(answer,
                              message.chat.id,
                              bot_msg.message_id,
                              parse_mode="HTML")
        answer = "Главное меню\n\n" \
                 "{0} - информация о боте\n" \
                 "{1} - оценить бота\n" \
                 "{2} - настройки\n" \
                 "{3} - электрички\n" \
                 "{4} - <b>редактор расписания</b>\n" \
                 "@Spbu4u_news - новости бота".format(emoji["info"],
                                                      emoji["star"],
                                                      emoji["settings"],
                                                      emoji["suburban"],
                                                      emoji["editor"])
        bot.send_message(chat_id=message.chat.id,
                         text=answer,
                         reply_markup=main_keyboard,
                         parse_mode="HTML")
        return
    answer += "Загружаю список направлений..."
    bot_msg = bot.send_message(message.chat.id, answer)
    bot.send_chat_action(message.chat.id, "typing")
    answer = "Укажи свое направление:"
    divisions = spbu.get_study_divisions()
    division_names = [division["Name"] for division in divisions]
    divisions_keyboard = ReplyKeyboardMarkup(True, False)
    for division_name in division_names:
        divisions_keyboard.row(division_name)
    divisions_keyboard.row("Поддержка", "Завершить")
    data = dumps(divisions)

    sql_con = func.get_connection()
    cursor = sql_con.cursor()
    cursor.execute("""DELETE FROM user_choice WHERE user_id = %s""",
                   (message.chat.id, ))
    sql_con.commit()
    cursor.execute(
        """INSERT INTO user_choice (user_id, divisions_json)
                      VALUES (%s, %s)""", (message.chat.id, data))
    sql_con.commit()
    cursor.close()
    sql_con.close()
    bot.edit_message_text(text="Готово!",
                          chat_id=message.chat.id,
                          message_id=bot_msg.message_id)
    bot.send_message(message.chat.id, answer, reply_markup=divisions_keyboard)
    reg_func.set_next_step(message.chat.id, "select_division")
Esempio n. 30
0
def exit_handler(message):
    bot.send_chat_action(message.chat.id, "typing")
    func.delete_user(message.chat.id, only_choice=False)
    remove_keyboard = ReplyKeyboardRemove(True)
    answer = "До встречи!"
    bot.send_message(message.chat.id, answer, reply_markup=remove_keyboard)