Channels
A channel is an interface that clients use to communicate with your chatbot. On the Channels tab, you can configure all such external interfaces that your chatbot will utilize.
Channels
Supported channels
The following channels are supported in JAICP:
-
Inbound channels — text and hybrid channels where clients communicate with bots, such as messengers, social networks, voice assistants, prompters, and others.
-
Voice assistants:
- Alice
- Marusia
- Sber Salut
tip -
Messengers:
-
Social networks
-
Platforms and services:
-
The universal Chat API for integration with applications and web services.
-
Customizable chat widget that can be published on a website.
-
Aimybox SDK that can be used to create a voice assistant and embed it into an application or a device.
-
-
Phone channels — telephony connections whereby bots can handle inbound and outbound calls. These require dedicated SIP server connections and integrations with speech recognition and synthesis APIs.
-
Customer engagement platforms — channels where clients can have live chats with customer service agents. These channels are connected to inbound channels, so bots can switch the dialog to the agent and back.
- Aimychat (by Just AI)
- Chat2Desk
- JivoChat
- LiveTex
- Salesforce
- Webim (Custom Channel API)
- The universal Operator API for integration with applications and web services.
Supported features and restrictions
Each channel has a number of its own features and restrictions that you may encounter when developing a bot.
Channel setup
Follow along the following steps to create a channel.
- Open a project and go to the Channels tab. Choose the necessary channel type.
- Click Connect channel. A modal window for creating a channel will be displayed.
- For inbound channels and customer engagement platforms, select the necessary channel type.
- Fill in the connection settings and click Create.
After you have created a channel, use the icon to edit its connection settings or remove the channel.
Channel properties
All connected channels have the following properties displayed.
Property | Description | Note |
---|---|---|
Type | The channel logo. | |
Name | The name set up when creating the channel. | Under the channel name, you can find its botId — the identifier of the bot in this channel. |
Test | The icon which brings up the test widget. | The icon is available only for the chat widget channel. |
Deployment / Branch | The deploy mode and the branch deployed into the channel. You can also select a Git tag or enter a specific commit hash. | One of the following deploy modes can be selected when creating the channel: Automatic — every time new changes are saved in the project. Manual — when the Deploy button is pressed. |
Status | The current status of the channel. | The possible statuses for inbound channels are Works, In progress, Tests failed, Deploy failed, Unavailable. |
Log | The icon which shows the deploy history and results. |
Telephony channels have an additional Lines property whose value indicates the number of phone lines available to this channel.
Customer engagement platforms only have the Type, Name, and Status properties. The latter is either Waiting for connection or Connected to the specified number of inbound channels.
Integrations
Also on the Channels tab, you can set up integrations to integrate your chatbot with various external services which you can access from the bot script.
Supported integrations
The following integrations are supported in JAICP:
- Google Sheets — this integration allows accessing Google Sheets from the script: reading data from spreadsheets and writing it back.
Integration setup
Perform the following steps to create a new integration:
- Open a project and go to the Channels tab.
- Click Create integration and select an integration with the necessary service.
- Sign in to the appropriate account in the service and grant all the required permissions.
Once an integration has been successfully created, it will show up in the integration list with a unique integrationId
under the integration type.
integrationId
is an identifier which is used when calling the $integration
API in order to interact with external services.