- Introduced a new `trusted_groups` table to store groups authorized to receive duty information. - Implemented functions to add, remove, and check trusted groups in the database. - Enhanced command handlers to manage trusted groups, including `/trust_group` and `/untrust_group` commands for admin users. - Updated internationalization messages to support new commands and group status notifications. - Added unit tests for trusted groups repository functions to ensure correct behavior and data integrity.
28 lines
1.2 KiB
Python
28 lines
1.2 KiB
Python
"""Expose a single register_handlers(app) that registers all handlers."""
|
|
|
|
from telegram.ext import Application
|
|
|
|
from . import commands, errors, group_duty_pin, import_duty_schedule
|
|
|
|
|
|
def register_handlers(app: Application) -> None:
|
|
"""Register all Telegram handlers (commands, import, group pin, error handler) on the application.
|
|
|
|
Args:
|
|
app: python-telegram-bot Application instance.
|
|
"""
|
|
app.add_handler(commands.start_handler)
|
|
app.add_handler(commands.help_handler)
|
|
app.add_handler(commands.set_phone_handler)
|
|
app.add_handler(commands.calendar_link_handler)
|
|
app.add_handler(commands.set_role_handler)
|
|
app.add_handler(import_duty_schedule.import_duty_schedule_handler)
|
|
app.add_handler(import_duty_schedule.handover_time_handler)
|
|
app.add_handler(import_duty_schedule.duty_schedule_document_handler)
|
|
app.add_handler(group_duty_pin.group_duty_pin_handler)
|
|
app.add_handler(group_duty_pin.pin_duty_handler)
|
|
app.add_handler(group_duty_pin.refresh_pin_handler)
|
|
app.add_handler(group_duty_pin.trust_group_handler)
|
|
app.add_handler(group_duty_pin.untrust_group_handler)
|
|
app.add_error_handler(errors.error_handler)
|