Backends API
Notification backend registry and utilities.
- class scitex_notification._backends.AudioBackend(backend: str = 'gtts', speed: float = 1.5, rate: int = 180)[source]
Bases:
BaseNotifyBackendAudio notification via scitex_audio TTS.
- async send(message: str, title: str | None = None, level: NotifyLevel = NotifyLevel.INFO, **kwargs) NotifyResult[source]
Send a notification.
- class scitex_notification._backends.BaseNotifyBackend[source]
Bases:
ABCBase class for notification backends.
- abstractmethod async send(message: str, title: str | None = None, level: NotifyLevel = NotifyLevel.INFO, **kwargs) NotifyResult[source]
Send a notification.
- class scitex_notification._backends.DesktopBackend[source]
Bases:
BaseNotifyBackendDesktop notification via native OS APIs.
Supports: - Linux: notify-send - WSL/Windows: PowerShell toast notifications
- async send(message: str, title: str | None = None, level: NotifyLevel = NotifyLevel.INFO, **kwargs) NotifyResult[source]
Send a notification.
- class scitex_notification._backends.EmacsBackend(method: str = 'popup', timeout: float = 5.0)[source]
Bases:
BaseNotifyBackendNotification via Emacs using emacsclient.
Displays notifications in Emacs minibuffer or as alerts. Supports different display methods: - popup: temporary popup buffer (default, most noticeable) - minibuffer: message function - alert: alert.el package - notifications: notifications.el (desktop notifications from Emacs)
- async send(message: str, title: str | None = None, level: NotifyLevel = NotifyLevel.INFO, **kwargs) NotifyResult[source]
Send notification via Emacs.
- class scitex_notification._backends.EmailBackend(recipient: str | None = None, sender: str | None = None)[source]
Bases:
BaseNotifyBackendEmail notification via SMTP (stdlib smtplib).
- async send(message: str, title: str | None = None, level: NotifyLevel = NotifyLevel.INFO, **kwargs) NotifyResult[source]
Send a notification.
- class scitex_notification._backends.MatplotlibBackend(timeout: float = 5.0)[source]
Bases:
BaseNotifyBackendVisual notification via matplotlib popup window.
- async send(message: str, title: str | None = None, level: NotifyLevel = NotifyLevel.INFO, **kwargs) NotifyResult[source]
Send a notification.
- class scitex_notification._backends.NotifyLevel(value)[source]
Bases:
EnumNotification urgency levels.
- CRITICAL = 'critical'
- ERROR = 'error'
- INFO = 'info'
- WARNING = 'warning'
- class scitex_notification._backends.NotifyResult(success: bool, backend: str, message: str, timestamp: str, error: str | None = None, details: dict | None = None)[source]
Bases:
objectResult of a notification attempt.
- class scitex_notification._backends.PlaywrightBackend(timeout: float = 5.0)[source]
Bases:
BaseNotifyBackendBrowser notification via Playwright.
- async send(message: str, title: str | None = None, level: NotifyLevel = NotifyLevel.INFO, **kwargs) NotifyResult[source]
Send a notification.
- class scitex_notification._backends.TelegramBackend(bot_token: str | None = None, chat_id: str | None = None)[source]
Bases:
BaseNotifyBackendTelegram message notification backend.
- async send(message: str, title: str | None = None, level: NotifyLevel = NotifyLevel.INFO, **kwargs) NotifyResult[source]
Send a notification.
- class scitex_notification._backends.TwilioBackend(account_sid: str | None = None, auth_token: str | None = None, from_number: str | None = None, to_number: str | None = None, flow_sid: str | None = None, repeat: int = 1)[source]
Bases:
BaseNotifyBackendPhone call notification via Twilio.
- async send(message: str, title: str | None = None, level: NotifyLevel = NotifyLevel.INFO, **kwargs) NotifyResult[source]
Send a notification.
- class scitex_notification._backends.WebhookBackend(url: str | None = None)[source]
Bases:
BaseNotifyBackendWebhook notification for Slack, Discord, etc.
- async send(message: str, title: str | None = None, level: NotifyLevel = NotifyLevel.INFO, **kwargs) NotifyResult[source]
Send a notification.
- scitex_notification._backends.available_backends() list[str][source]
Return list of available notification backends.
- scitex_notification._backends.get_backend(name: str, **kwargs) BaseNotifyBackend[source]
Get a notification backend by name.