Interaction Channels
Deployment Channels define the communication channel through which a deployment is accessible. Each Deployment Configuration has exactly one channel (1:1 relationship). Multi-channel deployments require separate Deployment Configurations.
Source: src/core/service-configuration/interaction-channels.schema.ts
DeploymentChannel​
Base deployment channel schema.
Schema: DeploymentChannelSchema
Attributes​
| Attribute | Type | Required | Default | Description |
|---|---|---|---|---|
id | string | — | — | Unique identifier for the channel |
deploymentType | enum | Yes | — | Type of channel. One of CALLS, SMS, WEB, or MOBILE. |
channelName | string | No | — | Human-readable name for administration |
recordingEnabled | boolean | No | true | Whether interactions should be recorded |
channelIdentifier | string | Yes | — | Channel-specific identifier |
configuration | object | Yes | — | Channel-specific configuration |
createdAt | number | — | — | Unix timestamp when created |
updatedAt | number | — | — | Unix timestamp when last updated |
Channel Types​
Call Channel​
Voice telephony channel for phone calls.
| Attribute | Type | Description |
|---|---|---|
channelIdentifier | string | Phone number in E.164 format |
configuration.phoneConfigurationId | string | Reference to PhoneConfiguration |
SMS Channel​
Text messaging channel.
| Attribute | Type | Description |
|---|---|---|
channelIdentifier | string | Phone number in E.164 format |
configuration.phoneConfigurationId | string | Reference to PhoneConfiguration |
Web Channel​
Browser-based chat widget.
| Attribute | Type | Description |
|---|---|---|
channelIdentifier | string | Website URL |
configuration.communicationType | enum | Communication protocol. One of UNIFIED. |
configuration.widgetConfiguration | object | Widget appearance settings |
Mobile App Channel​
Native mobile application integration.
| Attribute | Type | Description |
|---|---|---|
channelIdentifier | string | App bundle ID or package name |
configuration.packageName | string | Package identifier |
configuration.platform | enum | Platform type. One of IOS or ANDROID. |
Example​
Call Channel​
{
"id": "chan_abc123",
"deploymentType": "CALLS",
"channelName": "Customer Support Line",
"recordingEnabled": true,
"channelIdentifier": "+12125551234",
"configuration": {
"phoneConfigurationId": "phone_xyz789"
},
"createdAt": 1709856000000,
"updatedAt": 1709856000000
}
Web Channel​
{
"id": "chan_def456",
"deploymentType": "WEB",
"channelName": "Website Chat",
"recordingEnabled": true,
"channelIdentifier": "https://example.com",
"configuration": {
"communicationType": "UNIFIED",
"widgetConfiguration": {
"position": "right",
"customTheme": {
"primaryColor": "#007bff"
}
}
},
"createdAt": 1709856000000,
"updatedAt": 1709856000000
}
Create / Update Schemas​
| Schema | Description |
|---|---|
DeploymentChannelRequestSchema | For creating channels with type validation |
DeploymentChannelUpdateRequestSchema | For partial channel updates |
ChannelSetupRequestSchema | Complete deployment setup request |
Related​
- Phone Configuration - Phone number resource management
- Deployment Configuration - Uses channels for deployments