Skip to main content

Crate ironclad_channels

Crate ironclad_channels 

Source
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

§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 dispatch
  • delivery – Outbound delivery queue with retry logic
  • filter – Addressability filter (per-channel routing rules)

Modules§

a2a
delivery
discord
email
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
whatsapp

Structs§

InboundMessage
MediaAttachment
A media attachment received from a channel adapter.
OutboundMessage

Enums§

MediaType
Classification of a media attachment received from any channel.

Traits§

ChannelAdapter

Functions§

sanitize_platform
Strip control characters and truncate to MAX_PLATFORM_LEN bytes. Callers constructing an InboundMessage should pass the platform name through this function to ensure it contains only printable characters and stays within a reasonable length.