138 lines
3.2 KiB
Markdown
138 lines
3.2 KiB
Markdown
|
|
||
|
|
||
|
# 🤖 Botsito para Subir Archivos al S3 MinIO
|
||
|
|
||
|
|
||
|
Este bot de Telegram te permite subir archivos de forma sencilla a tu servidor MinIO S3. Utiliza una interfaz de chat amigable para seleccionar el bucket al que deseas cargar tus archivos y te proporciona información detallada sobre los archivos subidos, incluidos los metadatos asociados.
|
||
|
|
||
|
|
||
|
[![Arch linux](https://img.shields.io/badge/Arch%20Linux-1793D1?logo=arch-linux&logoColor=fff&style=flat-square)]()
|
||
|
|
||
|
|
||
|
## Variables de entorno
|
||
|
|
||
|
Para ejecutar este proyecto, deberá agregar las siguientes variables de entorno a su archivo .env
|
||
|
|
||
|
`TELEGRAM_BOT_TOKEN=AAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBB`
|
||
|
|
||
|
`MINIO_ENDPOINT=https://play.min.io`
|
||
|
|
||
|
`MINIO_ACCESS_KEY=`
|
||
|
|
||
|
`MINIO_SECRET_KEY=`
|
||
|
|
||
|
## 🚀 Caracteristicas
|
||
|
|
||
|
- **Interfaz Intuitiva**: Utiliza comandos simples y una interfaz de chat para interactuar con el bot.
|
||
|
- **Subida de Archivos**: Permite subir archivos directamente desde Telegram al servidor MinIO S3.
|
||
|
- **Selección de Bucket**: Elige el bucket de destino para tus archivos de una lista de opciones proporcionadas.
|
||
|
- **Metadatos Detallados**: Muestra información detallada sobre los archivos subidos, incluidos los metadatos.
|
||
|
|
||
|
|
||
|
## 📚 Comandos Disponibles:
|
||
|
|
||
|
- `/start`: Inicia el bot y muestra la lista de buckets disponibles para seleccionar.
|
||
|
- `/help`: Muestra la ayuda con información sobre cómo usar el bot y los comandos disponibles.
|
||
|
|
||
|
## 💼 Lista de Buckets Disponibles:
|
||
|
- Bancoppel
|
||
|
- Caja Dr.Arroyo
|
||
|
- Caja Oblatos
|
||
|
- Caja Popular Dolores
|
||
|
- Caja Solidaria
|
||
|
- Comomfort
|
||
|
- Bucket de contingencia
|
||
|
- Cooperativa Suljaa
|
||
|
- Caja Popular 15 de Mayo
|
||
|
- Caja Popular Merced
|
||
|
- Caja Popular Santuario Guadalupano
|
||
|
- Caja Solidaria Guachinango
|
||
|
- Caja Solidaria San Miguel Huimilpan
|
||
|
- Financiera Tamazula
|
||
|
- Imperialcc
|
||
|
- Lenocirochin
|
||
|
- Mario bro
|
||
|
- Mizuho
|
||
|
- Mufg
|
||
|
- Tepayac
|
||
|
- Test
|
||
|
- Walmart
|
||
|
- XHash
|
||
|
|
||
|
## 📝 Uso del Bot:
|
||
|
1. **Inicio**: Inicia el bot con el comando `/start`.
|
||
|
2. **Selección de Bucket**: Elige uno de los buckets de la lista proporcionada.
|
||
|
3. **Subida de Archivos**: Envía el archivo que deseas subir al bucket seleccionado.
|
||
|
4. **Confirmación y Metadatos**: El bot te informará una vez que el archivo haya sido subido correctamente y te mostrará los metadatos asociados.
|
||
|
|
||
|
## Deployment
|
||
|
|
||
|
Para implementar este proyecto, ejecute
|
||
|
|
||
|
```bash
|
||
|
$ python -m venv .venv
|
||
|
```
|
||
|
```bash
|
||
|
$ source .venv/bin/activate
|
||
|
```
|
||
|
|
||
|
```bash
|
||
|
$ pip install -r requirements.txt
|
||
|
```
|
||
|
|
||
|
```bash
|
||
|
$ deactivate
|
||
|
```
|
||
|
Modifique las lineas de archivo s3bot.service segun donde dejo la carpeta del bot y su entorno virtual
|
||
|
|
||
|
```
|
||
|
[Unit]
|
||
|
Description=Telegram Bot Service
|
||
|
After=network.target
|
||
|
|
||
|
[Service]
|
||
|
WorkingDirectory=/home/mrhacker/botS3
|
||
|
ExecStart=/home/mrhacker/botS3/venv/bin/python /home/mrhacker/botS3/bots3.py
|
||
|
Restart=always
|
||
|
RestartSec=3
|
||
|
|
||
|
[Install]
|
||
|
WantedBy=multi-user.target
|
||
|
|
||
|
```
|
||
|
|
||
|
Copie el archivo .service
|
||
|
|
||
|
```bash
|
||
|
# cp s3bot.service /etc/systemd/system/s3bot.service
|
||
|
```
|
||
|
|
||
|
Reinicie el servidor de demonios y active el servicio del BotS3
|
||
|
|
||
|
```bash
|
||
|
# systemctl daemon-reload
|
||
|
```
|
||
|
|
||
|
Inicie el demonio del bot
|
||
|
|
||
|
```bash
|
||
|
# systemctl start s3bot
|
||
|
```
|
||
|
|
||
|
Active el inicio automatico
|
||
|
|
||
|
```bash
|
||
|
# systemctl enable s3bot
|
||
|
```
|
||
|
## 🛠️ Tecnologías Utilizadas:
|
||
|
|
||
|
- Python
|
||
|
- Telebot (Wrapper de la API de Telegram)
|
||
|
- Boto3 (Cliente de AWS SDK para Python)
|
||
|
|
||
|
## Autor
|
||
|
|
||
|
- [@MrHacker]()
|
||
|
|
||
|
|