mirror of
https://github.com/marcogll/talia_bot.git
synced 2026-01-13 21:35:19 +00:00
feat: Add /print command for authorized users
This commit introduces a new `/print` command that is restricted to authorized users. The main changes are: - Created `app/modules/print.py` to house the handler for the new command. - The handler uses the existing `is_admin` function from `app/permissions.py` to check for authorization. - Integrated the new command into `app/main.py`. - Updated `tasks.md` to document the new feature.
This commit is contained in:
@@ -28,6 +28,7 @@ from modules.equipo import (
|
|||||||
from modules.aprobaciones import view_pending, handle_approval_action
|
from modules.aprobaciones import view_pending, handle_approval_action
|
||||||
from modules.servicios import get_service_info
|
from modules.servicios import get_service_info
|
||||||
from modules.admin import get_system_status
|
from modules.admin import get_system_status
|
||||||
|
from modules.print import print_handler
|
||||||
|
|
||||||
# Enable logging
|
# Enable logging
|
||||||
logging.basicConfig(
|
logging.basicConfig(
|
||||||
@@ -101,6 +102,7 @@ def main() -> None:
|
|||||||
|
|
||||||
application.add_handler(conv_handler)
|
application.add_handler(conv_handler)
|
||||||
application.add_handler(CommandHandler("start", start))
|
application.add_handler(CommandHandler("start", start))
|
||||||
|
application.add_handler(CommandHandler("print", print_handler))
|
||||||
application.add_handler(CallbackQueryHandler(button_dispatcher))
|
application.add_handler(CallbackQueryHandler(button_dispatcher))
|
||||||
|
|
||||||
logger.info("Starting Talía Bot...")
|
logger.info("Starting Talía Bot...")
|
||||||
|
|||||||
13
app/modules/print.py
Normal file
13
app/modules/print.py
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
# app/modules/print.py
|
||||||
|
|
||||||
|
from telegram import Update
|
||||||
|
from telegram.ext import ContextTypes
|
||||||
|
from app.permissions import is_admin
|
||||||
|
|
||||||
|
async def print_handler(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
|
||||||
|
"""Handles the /print command."""
|
||||||
|
chat_id = update.effective_chat.id
|
||||||
|
if is_admin(chat_id):
|
||||||
|
await update.message.reply_text("This is a restricted command for authorized users.")
|
||||||
|
else:
|
||||||
|
await update.message.reply_text("You are not authorized to use this command.")
|
||||||
5
tasks.md
5
tasks.md
@@ -26,6 +26,7 @@ This file tracks the development tasks for the Talía project.
|
|||||||
- [x] Implement `aprobaciones.py` module.
|
- [x] Implement `aprobaciones.py` module.
|
||||||
- [x] Implement `servicios.py` module.
|
- [x] Implement `servicios.py` module.
|
||||||
- [x] Implement `admin.py` module.
|
- [x] Implement `admin.py` module.
|
||||||
|
- [x] Add `/print` command for authorized users.
|
||||||
|
|
||||||
## Phase 4: Integrations
|
## Phase 4: Integrations
|
||||||
|
|
||||||
@@ -43,3 +44,7 @@ This file tracks the development tasks for the Talía project.
|
|||||||
- Implemented the `agenda` and `citas` modules.
|
- Implemented the `agenda` and `citas` modules.
|
||||||
- Implemented the conversational flow for proposing and approving activities.
|
- Implemented the conversational flow for proposing and approving activities.
|
||||||
- Completed Phase 3 by implementing all modules and refactoring the main dispatcher.
|
- Completed Phase 3 by implementing all modules and refactoring the main dispatcher.
|
||||||
|
|
||||||
|
### 2024-05-23
|
||||||
|
|
||||||
|
- Add `/print` command for authorized users.
|
||||||
|
|||||||
Reference in New Issue
Block a user