System Architecture: The Triumvirate Interconnected
Dynaris unifies Email, Chat, and Voice into a single orchestration layer. This is not three tools with an integration layer. It is one system where every channel shares the same contact record, conversation history, and agent logic. This page explains how the triumvirate connects and how events flow.
Why This Architecture Is Our Competitive Advantage
Most vendors offer email automation, or a chat widget, or a voice bot. They integrate them after the fact. A prospect who emails, then calls, then messages on WhatsApp appears in three places. Context is fragmented. Follow-ups cannot span channels cleanly.
Dynaris was designed with the triumvirate at the core. Email, Chat, and Voice feed the same event pipeline, resolve to the same contact, and use the same supervisor and specialist agents. A follow-up sequence can start with an email, move to a voice call, and continue on WhatsApp -- with full context at every step. That interconnection is what competitors cannot match.
Every inbound event (email, call, chat, form) is captured and processed. There is no queue that gets ignored, no inbox that sits unread, no call that goes to voicemail without a path to response. With Auto Mode enabled, the system runs continuously: every event triggers an agent, every agent executes, and every interaction is logged. The result: continuous responses, never missing inquiries.
Overview
All channels feed into the same core:
- Event ingestion -- New emails, Slack messages, inbound calls, WhatsApp messages, and form submissions become events
- Contact resolution -- Events are matched to contacts in your database; new contacts are created when needed
- Agent execution -- A supervisor agent routes each event to the right specialist (email, scheduling, voice, research)
- Tool execution -- Agents call Gmail, Slack, Google Calendar, Twilio, WhatsApp, HubSpot, and other tools
- State persistence -- Every interaction is logged, synced to CRM, and available for future context
Channel Flow: Step by Step
Email Flow
- Trigger -- New email arrives in Gmail (or Outlook) via OAuth-connected inbox
- Event -- Dynaris receives the event (webhook or polling, depending on integration)
- Contact match -- Sender email is matched to an existing contact or a new contact is created
- Agent assignment -- Supervisor assigns to the email/sales agent
- Context load -- Agent loads: contact history, Knowledge Base, CRM data, calendar availability
- Decision -- Agent decides: reply immediately, add to sequence, escalate to human, or wait
- Action -- Agent sends reply via Gmail/Outlook, updates CRM, creates calendar event, or posts to Slack
- Log -- Full transcript and actions are stored; contact record is updated
Voice Flow (Twilio)
- Trigger -- Inbound call hits your Twilio number
- Twilio webhook -- Twilio forwards the call to Dynaris voice endpoint
- Voice agent -- Dynaris connects the caller to an AI voice agent (speech-to-text, LLM, text-to-speech)
- Tool use -- During the call, the agent can: check calendar, look up contact, send email, create task
- Contact match -- Caller phone number is matched to contact; call log is attached
- Post-call -- Transcript saved, CRM updated, follow-up email or task created if configured
- Outbound -- Same voice agent can place outbound calls from Dynaris (e.g., follow-up sequence)
Chat Flow (Website, WhatsApp)
- Trigger -- Visitor opens chat widget, or prospect sends WhatsApp message
- Session -- Dynaris creates or resumes a chat session (linked to contact if identified)
- Agent -- Chat agent responds using Knowledge Base, pricing, FAQs, and calendar tools
- Lead capture -- When prospect shares email/name, contact is created or updated
- Meeting booking -- Agent checks Google Calendar, offers slots, creates event
- CRM sync -- Contact and conversation are pushed to HubSpot/Salesforce
- Escalation -- If human takeover is needed, agent notifies team via Slack/email
WhatsApp-Specific Flow
- Template message -- First outbound message to a user must use an approved Meta template (Marketing, Utility, or Authentication)
- 24-hour window -- After user replies, you can send free-form messages for 24 hours
- Dynaris handling -- Chat agent responds within the window; if window expires, next message must use a template again
- Meta Business API -- Dynaris connects via Composio to Meta Cloud API; templates are managed in Meta Business Suite
How Channels Interlock
| Scenario | Voice | Chat | |
|---|---|---|---|
| Lead emails in | Processed by email agent | - | - |
| Lead calls in | - | Voice agent answers | - |
| Lead messages on WhatsApp | - | - | Chat agent responds |
| Lead books meeting (any channel) | Calendar event created | Calendar event created | Calendar event created |
| Follow-up sequence | Email sent | Outbound call placed | WhatsApp message sent |
| Escalation to human | Email to rep | Call transfer (if configured) | Slack/email notification |
| CRM update | All channels write to same contact | All channels write to same contact | All channels write to same contact |
The same contact record and conversation history are used across all channels. A prospect who emails, then calls, then messages on WhatsApp is one contact with a unified timeline.
Integration Points
| Integration | Role |
|---|---|
| Gmail / Outlook | Inbound/outbound email, event triggers |
| Slack | Notifications, triggers, team coordination |
| Google Calendar | Availability checks, event creation (used by voice and chat) |
| Twilio | Phone numbers, inbound/outbound voice |
| WhatsApp (Meta Business API) | Chat agent, template messages |
| HubSpot / Salesforce | Contact sync, deal updates, activity logging |
| Composio | OAuth and API connections for many tools |
Auto Mode and Manual Mode
- Manual -- Events appear in the dashboard; you approve or trigger each action
- Auto Mode -- Events are processed automatically; agents execute without approval
Both modes use the same architecture. Auto Mode is a toggle that controls whether the supervisor proceeds without human confirmation.
For Internal Staff
When troubleshooting or onboarding:
- Event source -- Check which integration produced the event (Gmail, Twilio, WhatsApp, etc.)
- Contact -- Verify contact exists and is correctly matched (email, phone)
- Agent logs -- Inspect agent decisions and tool calls in the dashboard
- Integration status -- Confirm OAuth/tokens are valid in Connectors
See Internal Staff Guide for operational procedures.