Skip to content

New handlers #13

Description

@joamag

Problem (Why)

Pushi delivers notifications through a small set of handlers (Web Push, APN, SMTP, webhooks), but users increasingly need to reach recipients on Slack, SMS, WhatsApp and managed email gateways. Each new channel duplicates a well-established adapter pattern (base handler, subscription model, REST controller, API client, state registration, tests). This umbrella tracks the addition of several new handlers so they land consistently and reuse shared infrastructure (notably the Twilio backend shared by SMS and WhatsApp).

Description (What)

Add new notification handlers to pushi, each following the existing per-adapter conventions and exposing the associated REST API surface (subscription management endpoints plus API client methods). Routing supports both subscription-stored destinations and per-event overrides, and credentials follow the existing App-model + environment-variable pattern. The individual adapters are tracked as sub-issues.

Implementation (How)

  1. Slack adapter — see sub-issue.
  2. SMS adapter with pluggable backends, Twilio first — see sub-issue.
  3. WhatsApp adapter via Twilio (reuses the SMS Twilio backend) — see sub-issue.
  4. Mailme adapter for email delivery via the Hive Mailme gateway — see sub-issue.
  5. Ensure each handler is registered in State.load_handlers() and exported from the base, api, app/models, and app/controllers __init__.py files.
  6. Land the SMS/Twilio backend before WhatsApp so the shared client is available.

Metadata

Metadata

Assignees

No one assigned

    Fields

    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions