Бот для загрузки файлов на S3 + запись данных в 1С
Core: python 3, aiogram 2.x
Database: mysql
S3 client: Boto3
-
Скачайте репозиторий
git clone https://github.com/rasulovdd/s3_upload_bot.git && cd s3_upload_bot
-
Устанавливаем виртуальное окружение
apt install -y python3-venv
python3 -m venv env
-
Активируем её
source env/bin/activate
-
Скачиваем и устанавливаем нужные библиотеки
pip install -r requirements.txt
-
Изменить в скрипте mysql-setup.sh следующие параметры:
Пользователь: bot_user Пароль: password1! База данных: s3_upload_bot
-
Запустить скрипт mysql-setup.sh
даем праваchmod +x mysql-setup.sh
запускаем скрипт
/root/s3_upload_bot/mysql-setup.sh
-
Создаем .env файл с вашими данными, можно создать из шаблона и просто поправить поля
cp .env.sample .env nano .env
-
Создаем .service файл для вашего бота sudo nano /etc/systemd/system/s3_upload_bot.service
[Unit] Description='Service for s3_upload_bot' After=network.target [Service] Type=idle Restart=on-failure StartLimitBurst=2 # Restart, but not more than once every 30s (for testing purposes) StartLimitInterval=120 User=root ExecStart=/bin/bash -c 'cd ~/s3_upload_bot/ && source env/bin/activate && python3 app.py' [Install] WantedBy=multi-user.target
-
Включаем сервис и запускаем
systemctl enable s3_upload_bot.service systemctl start s3_upload_bot.service
-
Бот готов к использованию
Для регистрации в 1С, у пользователя сотрудника должна быть установлена роль "Вложения Данные По Ремонту Добавление"