Skip to content

ivanvit100/secretary_bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Бот-секретарь

menu

Описание

Этот проект - телеграм-бот, который выполняет роль личного секретаря. Он помогает автоматизировать различные задачи, такие как управление балансом, отправка отчетов, уведомления и многое другое. Бот предназначен для упрощения повседневных задач и улучшения продуктивности.

Languages

This file on another languages:

Скриншоты

report email permissions

Функционал

Команды

  • /start - Приветственное сообщение.
  • /help - Список доступных команд.
  • /call <сообщение> - Отправить анонимное сообщение владельцу бота.
  • /report - Отчет по балансу за месяц.
  • /balance - Показать текущий баланс.
  • /balance <число> - Изменить баланс на указанное число.
  • /notification <дата> <время> <сообщение> - Создать уведомление.
  • /notification - Показать список уведомлений.
  • /notification delete <номер> - Удалить уведомление по номеру.
  • /task <название> <сообщение> - Добавить задачу.
  • /task - Показать список задач.
  • /task delete <номер> - Удалить задачу по номеру.
  • /email <сообщение> - Отправить сообщение на почту.
  • /email - Показать список сообщений на почту.
  • /save - Сохранить файл на веб-сервере.
  • /download <имя> - Скачать файл с сервера.
  • /delete <имя> - Удалить файл с сервера.
  • /files - Показать список файлов.
  • /share - Поделиться файлом.
  • /pdownload <имя> - Скачать общедоступный файл.
  • /pdelete <имя> - Удалить общедоступный файл.
  • /pfiles - Список общедоступных файлов.
  • /log - Показать последние 25 строк логов.
  • /ssh <команда> - Выполнить команду на сервере.
  • /stats - Показать статистику Beget.
  • /language - Сменить язык интерфейса.
  • /menu - Показать меню.
  • /user add <id> <name> - Добавить пользователя.
  • /user permissin <id> <permission> <bool> - Выдать/забрать разрешение на использование модуля.

Автоматические задачи

  • Ежедневная проверка задач.
  • Ежемесячная отправка отчета по балансу.
  • Оповещение о запланированных задачах.

Установка

  1. Клонируйте репозиторий:
git clone https://github.com/ivanvit100/secretary_bot
cd secretary_bot
  1. Запустите скрипт установки:
python setup.py
  1. В процессе установки скрипт выполнит:
    • Создание необходимых директорий (data, files, public_files, documents)
    • Настройку виртуального окружения Python
    • Установку требуемых пакетов из requirements.txt
    • Создание файлов-шаблонов:
      • balance.json - для отслеживания финансовых данных
      • tasks.json - для управления задачами
      • email.html - шаблон электронной почты
  2. При запросе введите следующую информацию:
Telegram Bot Token: [Токен бота, полученный от @BotFather]
Your Telegram User ID: [Ваш ID в Telegram]
Email Address: [Адрес электронной почты для отправки уведомлений]
Email Password: [Пароль от электронной почты - ввод будет скрыт]
SMTP Server Address: [Нажмите Enter для стандартного значения (smtp.gmail.com) или введите свой сервер]
IMAP Server Address: [Нажмите Enter для стандартного значения (imap.gmail.com) или введите свой сервер]
VPS User Stats URL: [URL для статистики VPS (бот настроен под использование API Beget)]
  1. Пользователям Linux будет предложено установить сервис systemd:
Do you want to install the secretary.service for automatic startup? (y/n):
  • Если вы выберете y, скрипт:
    • Создаст файл службы systemd
    • Запросит пароль sudo для установки службы
    • Включит автозапуск службы при загрузке системы
    • Сразу же запустит службу
  1. Настройте пользовательские переменные в config.py (предпочитаемый язык, имя владельца бота и тд)
  2. После успешной установки активируйте окружение и запустите бота:
  • Для Linux/Mac:
source venv/bin/activate
python main.py
  • Для Windows:
.\venv\Scripts\activate
python main.py

Использование

После запуска бота, вы можете использовать команды, перечисленные выше, для взаимодействия с ботом. Бот будет автоматически выполнять ежедневные и ежемесячные задачи.

Лицензия

Этот проект лицензирован под MIT License.

Контакты

Если у вас есть вопросы или предложения, вы можете связаться с автором проекта через GitHub.

About

Modular Python personal assistant bot for Telegram with task management, mail, finance, file management, remote server administration and user permissions system.

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages