13 Commits

Author SHA1 Message Date
Marco Gallegos
d66e8118eb feat: refactor schedule storage to vanity_hr schema, update onboarding command to /registro, and enhance horario flow with short name collection 2025-12-20 22:43:34 -06:00
Marco Gallegos
b009d60043 feat: Implementar flujo de conversación /horario
Se ha implementado un nuevo flujo de conversación para que los usuarios puedan definir su horario de trabajo a través del comando .

Cambios:

1.  **Nuevo **: Se ha añadido un nuevo archivo JSON que define las preguntas y los estados de la conversación para la definición de horarios.
2.  **Actualización de **: Se ha añadido el comando  a la lista de comandos del bot para que sea visible en el menú de Telegram.

El  existente carga dinámicamente este nuevo flujo, haciéndolo disponible para los usuarios sin necesidad de cambios adicionales en la lógica principal del bot.
2025-12-20 10:11:21 -06:00
Marco Gallegos
b68cb14837 refactor: Implement dynamic conversation flow builder from JSON
This commit refactors the bot's architecture to dynamically load and build conversation flows from JSON files instead of hardcoding them in Python.

- Added  to read flow definitions from the  directory and dynamically build s.
- Refactored  to use the new flow builder and load all conversation handlers at startup.
- Moved hardcoded links to environment variables for better configuration.
- Updated  to support conditional branching for 'Other' options, using a  field to define state transitions.
- Updated  with the new link variables.
2025-12-20 09:56:28 -06:00
google-labs-jules[bot]
4e2b6335a6 feat: Implement multi-database architecture
This commit introduces a three-database architecture to the application,
as specified in the `db_logic.md` file.

The changes include:
- A SQL initialization script (`db/init/init.sql`) to create the
  `USERS_ALMA`, `vanity_hr`, and `vanity_attendance` databases and their
  respective tables.
- SQLAlchemy models for all tables, organized into separate files
  within the `models` directory.
- Refactoring of the database connection logic in `modules/database.py`
  to support connections to all three databases.
- Creation of a `modules/logger.py` to handle request logging to the
  `USERS_ALMA` database.
- Updates to `docker-compose.yml` to mount the initialization script and
  build the bot image locally.
- Updates to `.env.example` to include the new database environment
  variables.
- Restoration of the data dictionary to `db_tasks.md`.
2025-12-18 19:36:40 +00:00
Marco Gallegos
ae8436b01e feat: Integrate Google Sheets for duplicate chat ID verification and update main actions keyboard logic 2025-12-15 19:11:09 -06:00
Marco Gallegos
8422a874d9 feat: Implement a new links menu, consolidate the main action keyboard into a ui module, and update employee ID generation logic. 2025-12-15 09:49:50 -06:00
Marco Gallegos
ebbb6c3f00 refactor: Remove printing feature, enhance onboarding derivations, and update bot commands. 2025-12-14 22:32:18 -06:00
Marco Gallegos
29b2605072 feat: Implement detailed onboarding data capture, refactor HR request date processing, and enhance bot command menu. 2025-12-14 22:09:23 -06:00
Marco Gallegos
cbfcee557a feat: Add database health checks and host configuration, enhance the start command with a quick reply keyboard, and improve general text cleaning. 2025-12-14 15:33:47 -06:00
Marco Gallegos
220b78886d feat: Enhance database connection robustness, update onboarding command to /welcome, and remove /socia_finder functionality. 2025-12-14 11:53:45 -06:00
Marco Gallegos
7ce9bacce1 feat: Configure environment variables, refactor onboarding conversation states, and expose database port in Docker Compose. 2025-12-14 10:04:34 -06:00
google-labs-jules[bot]
fec578bd7c feat: Dockerize application and add MySQL logging
This commit introduces Docker and Docker Compose to containerize the application and orchestrate it with a MySQL database.

Key changes include:
- Added a `Dockerfile` to create a container for the Python bot.
- Created a `docker-compose.yml` file to manage the bot and MySQL services.
- Added a `modules/database.py` module to handle database connections and logging with SQLAlchemy.
- Integrated request logging into all command handlers.
- Updated `requirements.txt` with necessary dependencies for MySQL.
- Updated `.env` and `.gitignore` to manage database credentials securely.
- Updated `Readme.md` with instructions on how to run the application using Docker Compose.
2025-12-14 03:28:56 +00:00
Marco Gallegos
1cb382b4ef first commit 2025-12-13 19:06:14 -06:00