Skip to content

[Broadcast] Scheduling system #123

@viganogabriele

Description

@viganogabriele

Parent Epic: #120

Part of #120

Implement the scheduling system for delayed message delivery.

Requirements

  • Store scheduled announcements in database with:
    • Message content (including media file_id)
    • Target tag number
    • Status (pending, sent, cancelled)
    • Scheduled datetime
    • Creation datetime
    • Creator admin ID
  • Implement a cron job / scheduler that:
    • Checks for pending announcements
    • Triggers delivery when scheduled time is reached
    • Handles bot restart without losing scheduled jobs
  • Support:
    • Immediate delivery (trigger right away)
    • Scheduled delivery (at specific datetime)
    • Cancel pending announcements

Technical Notes

  • Consider using a job queue (Bull, Agenda, etc.) or built-in scheduling
  • Handle timezone correctly
  • Ensure atomic status updates

Labels: enhancement

Metadata

Metadata

Assignees

No one assigned

    Labels

    broadcastBroadcast/announcement featureenhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions