kaman.ai

Docs

Documentation

Guides, use cases & API reference

  • Overview
    • Getting Started
    • Platform Overview
  • Features
    • Features Overview
    • AI Assistant
    • Workflow Automation
    • Intelligent Memory
    • Data Management
    • Universal Integrations
    • Communication Channels
    • Security & Control
  • Use Cases Overview
  • Financial Services
  • Fraud Detection
  • Supply Chain
  • Technical Support
  • Software Development
  • Smart ETL
  • Data Governance
  • ESG Reporting
  • TAC Management
  • Reference
    • API Reference
  • Guides
    • Getting Started
    • Authentication
  • Endpoints
    • Workflows API
    • Tools API
    • KDL (Data Lake) API
    • OpenAI-Compatible API
    • A2A Protocol
    • Skills API
    • Knowledge Base (RAG) API
    • Communication Channels

Communication Channels

Meet Your Users Where They Are

Kaman's multi-channel architecture enables your AI agents and workflows to communicate through 14 distinct channels, from business messaging platforms to scheduled automation. Each channel is a configured instance that routes messages to your agents and workflows.


Channel Architecture


Channel Types Overview

ChannelTypeMethodUse Case
SlackMessagingWebhookTeam collaboration, bot commands
Microsoft TeamsMessagingWebhook + BotEnterprise collaboration
MattermostMessagingWebhookSelf-hosted team chat
DiscordMessagingWebhookCommunity engagement
TelegramMessagingWebhookGlobal messaging, bots
WhatsApp BusinessBusinessWebhookCustomer communication
WhatsApp (Baileys)PersonalSocketDirect WhatsApp integration
Twilio SMSBusinessWebhookSMS notifications
Email (IMAP/SMTP)BusinessPollingTraditional email
GmailBusinessPolling + OAuthGoogle email integration
HTTP WebhookIntegrationWebhookCustom integrations
CronAutomationScheduledTime-based triggers
Google WorkspaceAutomationPollingDrive file monitoring
Odoo EventsAutomationPollingERP event monitoring

Messaging Platforms

Slack Channel

Full Slack integration with bot mentions, direct messages, and slash commands.

Configuration:

FieldDescription
botTokenSlack Bot User OAuth Token (xoxb-*)
signingSecretSlack App Signing Secret
defaultChannelDefault channel ID (optional)
appIdSlack App ID (optional)

Features:

  • Bot mention detection in channels
  • Direct message handling
  • Slash command support
  • Response streaming
  • Events API integration

Setup: Create app at https://api.slack.com/apps, enable Events API, add bot scopes


Microsoft Teams Channel

Bot Framework and incoming webhook integration for enterprise Teams.

Configuration:

FieldDescription
webhookUrlIncoming webhook URL (optional)
appIdBot Framework App ID (optional)
appPasswordBot Framework App Password (optional)
tenantIdAzure AD Tenant ID (optional)

Features:

  • Bot Framework activity handling
  • Adaptive card actions
  • OAuth2 bot authentication
  • Message card formatting
  • Dual mode (webhook + Bot Framework)

Setup: Azure Portal Bot Channels Registration + Teams admin approval


Mattermost Channel

Self-hosted team chat integration via outgoing webhooks.

Configuration:

FieldDescription
MM_URLMattermost server URL
channelIdTarget channel ID
tokenAPI authentication token

Features:

  • Channel message reception
  • Response streaming
  • Token-based authentication

Setup: Configure outgoing webhook in Mattermost admin panel


Discord Channel

Discord Bot API with slash commands and interactive components.

Configuration:

FieldDescription
botTokenDiscord Bot Token
applicationIdDiscord Application ID
publicKeyApplication Public Key (optional)
defaultChannelIdDefault channel for messages (optional)

Features:

  • Slash command handling
  • Message component interactions (buttons, selects)
  • Interaction token-based responses
  • 2000 character message splitting
  • PING endpoint verification

Setup: Discord Developer Portal + configure interaction endpoint URL


Telegram Channel

Telegram Bot API with webhook integration.

Configuration:

FieldDescription
botTokenTelegram Bot Token (from @BotFather)
parseModeMessage format: HTML, Markdown, MarkdownV2
disableWebPagePreviewLink preview control (optional)

Features:

  • Message and edited message handling
  • Callback query (inline button) support
  • Bot command detection (/start, /help)
  • 4096 character message splitting
  • Multiple parse mode support

Setup: Create bot via @BotFather, configure webhook via Telegram API


Business Communication

WhatsApp Business Channel

Official Meta WhatsApp Business API integration.

Configuration:

FieldDescription
phoneNumberIdWhatsApp Business Phone Number ID
accessTokenWhatsApp Business API Access Token
webhookVerifyTokenVerification token for webhooks
apiVersionWhatsApp API version (default: v18.0)

Features:

  • Text message handling
  • Interactive button reply support
  • Webhook verification (hub.challenge)
  • Message and interactive payload parsing

Setup: Meta Developers console + configure webhook endpoint


WhatsApp (Baileys) Channel

Direct WhatsApp integration via personal phone number using Baileys library.

Configuration:

FieldDescription
phoneNumberWhatsApp phone with country code (e.g., 972501234567)

Features:

  • Pairing code authentication (no QR scanning)
  • Full media support (images, video, audio, documents)
  • Session persistence via S3 storage
  • Automatic reconnection
  • Message buffering per session
  • Status notifications (pairing, connected, logged_out)

Setup: Enter phone number → receive pairing code → link device

Special: This channel maintains a persistent WebSocket connection and requires the cron system for connection management.


Twilio SMS Channel

SMS sending and receiving via Twilio.

Configuration:

FieldDescription
accountSidTwilio Account SID
authTokenTwilio Auth Token
twilioPhoneNumberTwilio phone number (E.164 format)
messagingServiceSidMessaging Service SID (optional)

Features:

  • SMS message reception
  • Status callback handling
  • TwiML response format
  • 1500 character message splitting
  • Messaging Service support

Setup: Twilio console phone number configuration + webhook URL


Email Channel (IMAP/SMTP)

Traditional email integration with polling-based reception.

Configuration:

FieldDescription
smtpHostSMTP server hostname
smtpPortSMTP port (587 or 465)
smtpSecureUse SSL (boolean)
imapHostIMAP server hostname
imapPortIMAP port (993 or 143)
imapSecureUse SSL (boolean)
usernameEmail account username
passwordEmail password or app password
fromEmailFrom address for outgoing
checkIntervalPoll interval in minutes (default: 5)

Features:

  • IMAP email polling
  • SMTP outgoing email
  • Unread email detection
  • Subject-aware replies
  • Attachment support

Setup: For Gmail, enable app passwords; for others, use standard IMAP/SMTP credentials


Gmail Channel

Gmail API with OAuth2 for enhanced integration.

Configuration:

FieldDescription
clientIdGoogle OAuth2 Client ID
clientSecretGoogle OAuth2 Client Secret
refreshTokenOAuth2 Refresh Token
redirectUriOAuth2 Redirect URI (optional)
checkIntervalPoll interval in minutes (default: 5)

Features:

  • OAuth2 authentication
  • History-based change detection (efficient polling)
  • Multipart message handling
  • Base64 email encoding for sending

Setup: Google Cloud Console + OAuth consent screen + Gmail API enablement


Automation & Integration

HTTP Webhook Channel

Generic webhook for custom integrations with any system.

Configuration:

FieldDescription
responseWebhookUrlResponse endpoint URL (optional)
webhookSecretHMAC-SHA256 secret for verification (optional)
messageFieldJSON path to message (e.g., "data.message")
sessionIdFieldJSON path to session ID
responseHeadersCustom response headers (JSON)
syncResponseWait for response (boolean, default: false)

Features:

  • Flexible JSON payload parsing
  • HMAC-SHA256 signature verification
  • Custom field path extraction (dot notation)
  • Synchronous or asynchronous response modes
  • 30-second timeout for sync responses

Use Cases:

  • Custom application integration
  • Third-party service webhooks
  • Internal system automation
  • API-triggered workflows

Cron Channel

Time-based scheduled execution using cron expressions.

Configuration:

FieldDescription
cronScheduleCron expression (minute hour day month weekday)
messageMessage to send on trigger
timezoneTimezone (default: UTC)
enabledEnable/disable flag

Cron Expression Examples:

ExpressionDescription
0 9 * * *Daily at 9:00 AM
0 9 * * 1-5Weekdays at 9:00 AM
*/15 * * * *Every 15 minutes
0 0 1 * *First day of month at midnight
30 8 * * 1Mondays at 8:30 AM

Features:

  • 5-field cron expression support
  • Timezone awareness
  • Manual trigger capability
  • Job status monitoring
  • Proper cleanup on destruction

Use Cases:

  • Daily report generation
  • Scheduled data sync
  • Reminder notifications
  • Periodic health checks

Google Workspace Channel

Google Drive folder monitoring for file changes.

Configuration:

FieldDescription
clientIdGoogle OAuth2 Client ID
clientSecretGoogle OAuth2 Client Secret
refreshTokenOAuth2 Refresh Token
folderIdGoogle Drive folder ID to monitor
checkIntervalPoll interval in minutes (default: 10)
fileTypesComma-separated file types (e.g., "pdf,docx")
webhookUrlDrive push notification webhook (optional)

Features:

  • File change detection (create/update/delete)
  • File type filtering
  • Drive API watch/push notifications
  • Response document creation

Use Cases:

  • Document processing automation
  • File-triggered workflows
  • Content moderation
  • Backup notifications

Odoo Events Channel

Odoo ERP database event monitoring.

Configuration:

FieldDescription
odooUrlOdoo server URL
databaseOdoo database name
usernameOdoo username
passwordOdoo password or API key
modelsComma-separated models (e.g., "sale.order,crm.lead")
eventsEvent types (create, write, unlink)
checkIntervalPoll interval in minutes (default: 5)

Features:

  • Model event tracking (create, write, unlink)
  • JSON-RPC API calls
  • Mail message creation
  • Multi-model monitoring
  • Write date tracking for changes

Use Cases:

  • Order processing automation
  • CRM lead handling
  • Inventory alerts
  • Customer communication

Channel Instances

Each channel can have multiple configured instances:

Downstream Routing

Each channel instance routes messages to a specific target:

Target TypeFormatDescription
Agentagent::agentId_expertIndexLangGraph AI agent
Appapp::appId_expertIndexApplication
Workflowworkflow::workflowIdDAG workflow execution
Functionfunction::functionIdSingle function call

Message Flow


Capabilities Matrix

ChannelWebhookPollingOAuthMediaStreaming
SlackYesNoYesNoYes
TeamsYesNoYesNoYes
MattermostYesNoNoNoYes
DiscordYesNoYesNoYes
TelegramYesNoNoNoYes
WhatsApp BusinessYesNoNoNoYes
WhatsApp (Baileys)NoNoNoYesYes
Twilio SMSYesNoNoNoYes
EmailNoYesNoYesYes
GmailNoYesYesYesYes
HTTP WebhookYesNoNoNoYes
CronNoNoNoNoYes
Google WorkspaceNoYesYesNoYes
Odoo EventsNoYesNoNoYes

Identity Resolution

Channels automatically identify users across external platforms and link them to Kaman accounts:

How It Works:

  • Each channel resolves the sender's external identity (phone number, email, Slack ID, etc.)
  • The platform looks up the external identity in the Auth Service
  • If matched, the user inherits their Kaman permissions, credits, and context
  • If unmatched, verification flows (Telegram phone verification, email OTP) can link the account

Supported Identity Types:

ChannelIdentity Field
TelegramPhone number, Telegram user ID
WhatsAppPhone number
SlackSlack user ID, email
Email/GmailEmail address
DiscordDiscord user ID
TeamsAzure AD user ID

Manage Connected Identities: Users can view and manage their linked external accounts from Settings > Connected Identities.


Tool Confirmation Through Channels

When an agent needs to execute a sensitive tool, it can ask for confirmation directly through the channel:

User Responses:

ResponseEffect
yesApprove this one execution
noDeny this execution
alwaysAuto-approve this tool for the session

Artifact Delivery

Agents can send generated files and artifacts directly through channels:

ChannelSupported Artifacts
TelegramDocuments, images, audio, video
SlackFiles via file upload API
DiscordFile attachments
WhatsApp (Baileys)Documents, images, audio, video
Email/GmailEmail attachments
TeamsFile attachments
MattermostFile attachments
Twilio SMSMedia URLs

Scheduling & Reminders

Agents can schedule messages and reminders through any channel:

Capabilities:

  • One-shot reminders ("remind me in 2 hours")
  • Recurring schedules using cron expressions
  • Timezone-aware scheduling
  • Automatic cleanup of one-shot jobs after execution

Powered by BullMQ: Scheduled jobs are managed through the cron channel system with Redis-backed persistence.


Getting Started

1. Choose Your Channel

Select the channel(s) that match where your users are:

  • Internal teams: Slack, Teams, Mattermost
  • Customers: WhatsApp, SMS, Email
  • Automation: Cron, HTTP Webhook
  • Communities: Discord, Telegram

2. Create a Channel Instance

  1. Go to Channels in the platform
  2. Select your channel type
  3. Fill in the configuration fields
  4. Choose the downstream target (agent or workflow)
  5. Activate the instance

3. Configure the External Platform

Follow the setup instructions for your channel:

  • Create bots/apps in external platforms
  • Configure webhook URLs
  • Set up OAuth if required
  • Test the connection

4. Test and Monitor

  • Send a test message
  • Check the response
  • Monitor in Observatory telemetry
  • Adjust configuration as needed

Communication Channels - 14 ways to connect with your AI, with identity resolution and tool confirmation built in

On this page

  • Meet Your Users Where They Are
  • Channel Architecture
  • Channel Types Overview
  • Messaging Platforms
  • Slack Channel
  • Microsoft Teams Channel
  • Mattermost Channel
  • Discord Channel
  • Telegram Channel
  • Business Communication
  • WhatsApp Business Channel
  • WhatsApp (Baileys) Channel
  • Twilio SMS Channel
  • Email Channel (IMAP/SMTP)
  • Gmail Channel
  • Automation & Integration
  • HTTP Webhook Channel
  • Cron Channel
  • Google Workspace Channel
  • Odoo Events Channel
  • Channel Instances
  • Downstream Routing
  • Message Flow
  • Capabilities Matrix
  • Identity Resolution
  • Tool Confirmation Through Channels
  • Artifact Delivery
  • Scheduling & Reminders
  • Getting Started
  • 1. Choose Your Channel
  • 2. Create a Channel Instance
  • 3. Configure the External Platform
  • 4. Test and Monitor