email_channel
email_channel
¶
EmailChannel — SMTP/IMAP email adapter (stdlib only, zero extra deps).
Classes¶
EmailChannel
¶
EmailChannel(smtp_host: str = '', smtp_port: int = 587, *, imap_host: str = '', imap_port: int = 993, username: str = '', password: str = '', use_tls: bool = True, bus: Optional[EventBus] = None)
Bases: BaseChannel
Email channel adapter using stdlib smtplib and imaplib.
| PARAMETER | DESCRIPTION |
|---|---|
smtp_host
|
SMTP server hostname.
TYPE:
|
smtp_port
|
SMTP server port (default 587 for STARTTLS).
TYPE:
|
imap_host
|
IMAP server hostname for incoming messages.
TYPE:
|
imap_port
|
IMAP server port (default 993 for SSL).
TYPE:
|
username
|
Email username. Falls back to
TYPE:
|
password
|
Email password. Falls back to
TYPE:
|
use_tls
|
Whether to use TLS (default
TYPE:
|
bus
|
Optional event bus for publishing channel events.
TYPE:
|
Source code in src/openjarvis/channels/email_channel.py
Functions¶
connect
¶
Start IMAP polling for incoming messages (if configured).
Source code in src/openjarvis/channels/email_channel.py
disconnect
¶
Stop the IMAP listener thread.
Source code in src/openjarvis/channels/email_channel.py
send
¶
send(channel: str, content: str, *, conversation_id: str = '', metadata: Dict[str, Any] | None = None) -> bool
Send an email via SMTP. channel is the recipient address.
Source code in src/openjarvis/channels/email_channel.py
status
¶
status() -> ChannelStatus