Example #1
0
def start_messaging(message):
    user_id = message.from_user.id
    add_user(user_id)
    set_user_state(user_id, 'start', db)
    bot.send_message(
        message.chat.id,
        "Здравствуйте! Наш бот может работать для вас в качестве вашего личного словаря, а также поможет запомнить трудно дающиеся вам слова."
    )
    end_any_operation(message)
Example #2
0
def show_commands(message):
    reply = ''
    reply += '/add - Добавить карточку слово - перевод\n'
    reply += '/training - Начать тренировку\n'
    reply += '/show_all_cards - Список всех ваших карточек\n'
    reply += '/delete_card - Удалить карточку\n'
    reply += '/delete_all_cards - Удалить все карточки\n'
    reply += '/help - Cписок доступных команд\n'
    bot.send_message(message.chat.id, reply)
    set_user_state(message.from_user.id, 'start', db)
Example #3
0
def training_cmd_handler(message):
    user_id = message.from_user.id
    words = get_words_for_training(user_id)
    if len(words) > 0:
        set_user_state(user_id, "training", db)
        trainings[user_id] = words
        bot.send_message(message.chat.id,
                         'Введите перевод слова: ' + trainings[user_id][0][0])
    else:
        bot.send_message(message.chat.id,
                         'Список слов пуст. Сначала добавьте слова')
Example #4
0
def user_training_handler(message):
    user_id = message.from_user.id
    card = trainings[user_id].pop(0)

    word, translation = card[0], card[1]
    user_answer = message.text.lower().strip()

    success = user_answer == translation
    change_score(user_id, word, success)

    reply = 'Верно!\n' if success else 'Неверно!\nПравильный ответ: ' + translation + '.\n'

    if len(trainings[user_id]) == 0:
        set_user_state(user_id, "start", db)
        reply += 'Тренировка окончена'
    else:
        reply += 'Введите перевод слова: ' + trainings[user_id][0][0]

    bot.send_message(message.chat.id, reply)
Example #5
0
def delete_word_state(message):
    set_user_state(message.from_user.id, 'card_deleting', db)
    bot.send_message(
        message.chat.id,
        'Введите либо слово либо перевод, которые хотите удалить: ')
Example #6
0
def add_word_handler(message):
    user_id = message.from_user.id
    set_user_state(user_id, "adding_word", db)
    bot.send_message(
        message.chat.id,
        'Вводите карточки в формате слово - перевод. /end - закончить: ')
Example #7
0
def end_any_operation(message):
    set_user_state(message.from_user.id, 'start', db)
    help_show_main_message(message)
Example #8
0
def delete_all_cards_state(message):
    set_user_state(message.from_user.id, 'deleting_all_cards', db)
    bot.send_message(
        message.chat.id,
        'Вы действительно хотите удалить все ваши карточки? (yes).')