Skip to content

Latest commit

 

History

History
220 lines (165 loc) · 13.2 KB

manual_ru.md

File metadata and controls

220 lines (165 loc) · 13.2 KB

Руководство пользователя

Установка библиотек:

pip install -r requirements.txt

Список версий библиотек

Команды приложения

Запуск приложения:

python main.py

Создание и добавление информации в базу данных:

python main.py new_db new_database.db

Расширение названия базы данных должно быть .db.

Настройки приложения

Настройки приложения находятся в файле setting.json

  • "NAME_DB" - название базы.
  • "BOT_TOKEN" - токен телеграм бота.
  • "WELCOME_MESSAGE" - сообщение приветствия бота.
  • "PASSWORD_REGISTRATION" - пароль для регистрации пользователя (если не задано, то генерируется случайное число).

Заполнение базы данных (примеры)

Добавление меню

Для создания меню необходимо добавить запись в таблицу Menu.

Таблица Menu
id_menu name_menu id_template id_type_menu
1 1 1 1
1 1 2 2
1 1 1 1

Имя меню (name_menu) должно быть уникальным. Подробнее о id_template и id_type_menu смотрите в таблицах Template и Type_Menu.

Добавление кнопок в меню

Для добавления кнопок в меню необходимо добавить запись в таблицу Button. Затем необходимо связать id_menu (см. Menu) и id_button (см. Button) посредством добавления записи в таблицу List_Buttons.

Таблица Button
id_button name_button callback_data line id_event
1 button1 callback1 1 1
2 button2 callback2 2 2
3 button3 callback3 1 3

Поле line определяет количество кнопок в ряду, при этом если в ряду 2 кнопки (вторая запись), то значение следующей записи (третья запись) игнорируется и выполняется переход на последующую запись. Подробнее о id_event смотрите в таблице Event.

Таблица List_Buttons
id_list_buttons id_menu id_button
1 1 1
2 1 2
3 1 3

Присвоение перехода для кнопки

Для того чтобы при нажатии на кнопку выполнялся переход в соответствующее меню необходимо добавить запись в таблицу List_Void_Menu с требуемыми id_menu (см. Menu) и id_button (см. Button).

Таблица List_Void_Menu
id_list_void_menu id_menu id_button
1 1 1
2 2 2
3 3 3

Добавление ключевых слов для меню

Таблица Key_Word содержит все возможные ключевые слова, которые не повторяются (являются уникальными). Для связывания ключевого слова по которому будет выполняться переход в соответствующее меню необходимо добавить запись в таблицу List_Key_Words с опредленными id меню и ключевого слова.

Таблица Key_Word
id_key_word word
1 key_word1
2 key_word2
3 key_word3
Таблица List_Key_Words
id_list_key_words id_menu id_key_word
1 1 1
2 2 2
3 3 3

Добавление информации для меню

Таблица Information содержит различную информацию (см. Type_Information). Для того чтобы задать тип добавленной информации необходимо добавить запись в таблицу List_Information с соответствующими id_information (см. Information) и id_type_infromation (см. Type_Information).

Таблица Information
id_information id_information
1 information1
2 information2
3 information3
Таблица List_Information
id_list_infromation id_infromation id_type_infromation
1 1 1
2 2 2
3 3 3

Добавление пользователей

Добавление информации о пользователе в таблицу User выполняется автоматически при регистрации пользователя или добавлением записи в базу данных. Для задания категории пользователя необходимо иметь права администратора (см. панель администратора), изначально все зарегистрированные пользователи имеют категорию "Пользователь". Информация о категории пользователя содержится в таблице List_Users.

Таблица User
id_user name_account id_account
1 anecdote1 1424242646
2 anecdote2 2545454454
3 anecdote3 3663532232
Таблица List_Users
id_list_users id_user id_category_users
1 1 1
2 2 2
3 3 3

Добавление анекдотов

Информация об анекдотах находится в таблице Anecdote, добавление анекдотов сводится добавлением записи в эту таблицу.

Таблица Anecdote
id_anecdote text_anecdote
1 anecdote1
2 anecdote2
3 anecdote3

Таблицы не требующие изменений

Таблица Event содержит информацию о возможных событиях при нажатии кнопки (см. Button).

Таблица Event
id_event name_event
1 Переход в другое меню
2 Смена изображения вперед
3 Смена изображения назад

Таблица Template содержит информацию о шаблоне меню (см. Menu).

Таблица Template:
id_template name_template
1 Текст
2 Текст с картинкой
3 Изменение текста с картинкой
4 Изменение текста
5 Текст с файлом

Таблица Type_Information содержит информацию о типе информации (см. Information). Типы "Изображение" и "Файл" представляют собой информацию о пути к файлам .jpg и .doc.

Таблица Type_Information
id_type_information name_type
1 Текст
2 Изображение
3 Файл

Таблица Type_Menu содержит информацию о типе меню (см. Menu). Тип "Reply" представляет собой начальное меню, тип "Inline" - меню в виде сообщений.

Таблица Type_Menu
id_type_menu type_menu
1 Reply
2 Inline

Таблица Category_Users содержит категории пользователей (см. встроенные команды бота и панель администратора).

Таблица Category_Users
id_category_users name_category
1 Пользователь
2 Администратор
3 Черный список

Встроенные команды бота:

  1. /start - начало работы с ботом (для любого пользователя).
  2. /registration - регистрация пользователя (для незарегистрированного пользователя, регистрация автоматическая - пользователю ничего не нужно вводить).
  3. /admin - панель администратора (только для администратора).

Панель администратора

Администратор имеет следующие возможности:

  • изменить категорию пользователя (необходимо будет ввести id аккаунта пользователя);
  • изменить или посмотреть пароль регистрации пользователя;
  • посмотреть пользователей любой категорий.