Expand description
§ironclad-channels
Channel adapters for user-facing chat platforms and the zero-trust
agent-to-agent (A2A) communication protocol. All adapters implement the
ChannelAdapter trait for unified message handling.
§Key Types
ChannelAdapter– Async trait:recv(),send(),platform_name()InboundMessage– Normalized inbound message from any platformOutboundMessage– Normalized outbound message for any platform
§Modules
telegram– Telegram Bot API (long-poll + webhook, Markdown V2)whatsapp– WhatsApp Cloud API (webhook, message templates)discord– Discord Gateway + REST API (slash commands, rich embeds)signal– Signal Protocol via signal-cli daemon (JSON-RPC)web– WebSocket interface (axum, JSON frames, ping/pong)voice– Voice channel (WebRTC, STT, TTS)email– Email adapter (IMAP listener + SMTP sender)a2a– Zero-trust A2A protocol (ECDH key exchange, AES-256-GCM)router– Multi-channel message routing and dispatchdelivery– Outbound delivery queue with retry logicfilter– Addressability filter (per-channel routing rules)
Modules§
- a2a
- delivery
- discord
- filter
- formatter
- Channel-specific output formatting for human-readable delivery.
- media
- Media download and storage service for multimodal channel messages.
- router
- signal
- telegram
- voice
- web
Structs§
- Inbound
Message - Media
Attachment - A media attachment received from a channel adapter.
- Outbound
Message
Enums§
- Media
Type - Classification of a media attachment received from any channel.
Traits§
Functions§
- sanitize_
platform - Strip control characters and truncate to
MAX_PLATFORM_LENbytes. Callers constructing anInboundMessageshould pass the platform name through this function to ensure it contains only printable characters and stays within a reasonable length.