Reply types for channels
The platform provides layers of adaptation to different communication channels and operator chat systems. The table contains the types of supported replies and their parameters for each channel.
Alice
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
"tts":"....",
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
|
audio |
{
"type":"audio",
"audioUrl":"http://..."
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
inlineButtons |
{
"type":"inlineButtons"
"buttons":[
{
"text":"button",
"url":"http://example.com"
}
]
}
|
raw |
{
"type":"raw",
"body":{ ... },
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
carousel |
{
"type": "carousel",
"text": "carousel description"
"content": [
{
"title": "title",
"description": "description",
"image": "imageUrl",
"url": "appUrl",
"btnText": "button text"
}
]
}
|
Please note several channel details:
- Before using the
carousel message type in a script, read how to use it in the Yandex documentation.
- When connecting audio in the
tts parameter for the text message type from the Alice sound library, you must specify the .opus file format for the audio.
Azure Bot
Learn more about connecting a bot in Microsoft Teams to the JAICP platform
| Type |
Parameters |
text |
"type":"text",
"text":"....",
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
"text":"description",
}
|
audio |
{
"type":"audio",
"audioUrl":"http://..."
"audioName":"file name",
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
inlineButtons |
{
"type":"inlineButtons"
"buttons":[
{
"text":"button",
"url":"http://example.com"
}
]
}
|
timeout |
{
"type":"timeout",
"interval":10,
"targetState":"/timeout"
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
Bitrix24
Learn more about Bitrix24 channel connection
| Type |
Parameters |
text |
"type":"text",
"text":"....",
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
"text":"description",
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
timeout |
{
"type":"timeout",
"interval":10,
"targetState":"/timeout"
}
|
Chat2Desk
Learn more about how to connect a Chat2Desk channel
| Type |
Parameters |
text |
"type":"text",
"text":"....",
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false
}
|
timeout |
{
"type":"timeout",
"interval":10,
"targetState":"/timeout"
}
|
Chatwidget
Learn more about how to connect a bot to the chat widget
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
"tts":"....",
}
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
"text":"description",
}
|
audio |
{
"type":"audio",
"audioUrl":"http://..."
"audioName":"file name",
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
inlineButtons |
{
"type":"inlineButtons"
"buttons":[
{
"text":"button",
"url":"http://example.com"
}
]
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
timeout |
{
"type":"timeout",
"interval":10,
"targetState":"/timeout"
}
|
carousel |
{
"type": "carousel",
"text": "carousel description"
"content": [
{
"title": "title",
"description": "description",
"image": "imageUrl",
"url": "appUrl",
"btnText": "button text"
}
]
}
|
Facebook
Learn more how to connect Facebook channel
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
inlineButtons |
{
"type":"inlineButtons"
"buttons":[
{
"text":"button",
"url":"http://example.com"
}
]
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
"text":"description",
}
|
audio |
{
"type":"audio",
"audioUrl":"http://..."
"audioName":"audio file name",
}
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false
}
|
raw |
{
"type":"raw",
"body":{ ... },
}
|
location |
{
"type": "location",
"lat": 59.934280,
"lon": 30.335099
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
timeout |
{
"type":"timeout",
"interval":10,
"targetState":"/timeout"
}
|
carousel |
{
"type": "carousel",
"text": "carousel description"
"content": [
{
"title": "title",
"description": "description",
"image": "imageUrl",
"url": "appUrl",
"btnText": "Button text"
}
]
}
|
Please note, before using the carousel message type in a script, read how to use it in the Facebook documentation.
Google Assistant
Learn more about how to connect a Google Assistant channel
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
"tts":"....",
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
"text":"description",
}
|
audio |
{
"type":"audio",
"audioUrl":"http://..."
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
inlineButtons |
{
"type":"inlineButtons"
"buttons":[
{
"text":"button",
"url":"http://example.com"
}
]
}
|
htmlResponse |
{
"type":"htmlResponse",
"updatedState": "some",
"suppressMic":true|false,
"url": "appUrl"
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
i-Digital: WhatsApp
Learn more about how to connect a bot in WhatsApp
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
"text":"description",
}
|
audio |
{
"type":"audio",
"audioUrl":"http://..."
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
timeout |
{
"type":"timeout",
"interval":10,
"targetState":"/timeout"
}
|
JivoSite
Learn more about how to connect an incoming JivoSite channel
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
}
|
audio |
{
"type":"audio",
"audioUrl":"http://..."
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
timeout |
{
"type":"timeout",
"interval":10,
"targetState":"/timeout"
}
|
Marusya
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
"tts":"....",
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
inlineButtons |
{
"type":"inlineButtons"
"buttons":[
{
"text":"button",
"url":"http://example.com"
}
]
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
MFMS: WhatsApp
Read more about connecting a bot in WhatsApp
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
}
|
video |
{
"type":"video",
"videoUrl":"http://..."
}
|
file |
{
"type":"file",
"fileUrl":"http://..."
}
|
audio |
{
"type":"audio",
"audioUrl":"http://..."
}
|
location |
{
"type": "location",
"lat": 59.934280,
"lon": 30.335099
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
Vonage
Learn more about how to connect a Vonage channel
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
"text":"description",
}
|
audio |
{
"type":"audio",
"audioUrl":"http://..."
"audioName":"audio file name",
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
timeout |
{
"type":"timeout",
"interval":10,
"targetState":"/timeout"
}
|
Salut
Learn more about connecting a Salut channel
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
"text":"description",
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
inlineButtons |
{
"type":"inlineButtons"
"buttons":[
{
"text":"button",
"url":"http://example.com"
}
]
}
|
Slack
Learn more about how to connect a Slack channel
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
timeout |
{
"type":"timeout",
"interval":10,
"targetState":"/timeout"
}
|
Telegram
Learn more about how to connect a Telegram channel
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
inlineButtons |
{
"type":"inlineButtons"
"buttons":[
{
"text":"button",
"url":"http://example.com"
}
]
}
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
"text":"description",
}
|
audio |
{
"type":"audio",
"audioUrl":"http://..."
"audioName":"audio file name",
}
|
location |
{
"type": "location",
"lat": 59.934280,
"lon": 30.335099
}
|
raw |
{
"type":"raw",
"body":{ ... },
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
timeout |
{
"type":"timeout",
"interval":10,
"targetState":"/timeout"
}
|
Telephony
Learn more about how to connect a telephone channel
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false,
"destination": catchAll.operatorGroup,
"phoneNumber": 88008000000,
"headers": {
"Remote-Party-ID": remotePartyId ,
testheader:"header"
},
"transferChannel": "237-test-237"
}
|
dtmf |
{
"type":"dtmf",
"max":"1",
"timeout": "15000"
}
|
audio |
{
"type":"audio",
"audioUrl":"http://..."
}
|
hangup |
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
edna.chatCenter
Learn more about how to connect a edna.chatCenter channel
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
"text":"description",
}
|
audio |
{
"type":"audio",
"audioUrl":"http://..."
"audioName":"audio file name",
}
|
file |
{
"type":"file",
"fileUrl":"http://..."
"mimeType":"application/vnd.openxmlformats-officedocument.wordprocessingml"
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
inlineButtons |
{
"type":"inlineButtons"
"buttons":[
{
"text":"button",
"url":"http://example.com"
}
]
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
Viber
Learn more about how to connect a Viber channel
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
inlineButtons |
{
"type":"inlineButtons"
"buttons":[
{
"text":"button",
"url":"http://example.com"
}
]
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
"text":"description",
}
|
raw |
{
"type":"raw",
"body":{ ... },
}
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false
}
|
location |
{
"type": "location",
"lat": 59.934280,
"lon": 30.335099
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
timeout |
{
"type":"timeout",
"interval":10,
"targetState":"/timeout"
}
|
VK
Learn more about how to connect an incoming VK channel
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
"text":"description",
}
|
audio |
{
"type":"audio",
"audioUrl":"http://..."
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
timeout |
{
"type":"timeout",
"interval":10,
"targetState":"/timeout"
}
|
carousel |
{
"type": "carousel",
"text": "carousel description"
"content": [
{
"title": "title",
"description": "description",
"image": "imageUrl",
"url": "appUrl",
"btnText": "button text"
}
]
}
|
Please note, before using the carousel message type in a script, read how to use it in the VK documentation.
Webim
Learn more about how to connect an incoming Webim channel
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
switch |
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
Webim v2
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
audio |
{
"type":"audio",
"audioUrl":"http://..."
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
}
|
file |
{
"type":"file",
"fileUrl":"http://..."
"mimeType":"application/vnd.openxmlformats-officedocument.wordprocessingml"
}
|
switch |
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
WeChat
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
switch |
{
"type":"switch",
"firstMessage":"..." ,
"closeChatPhrases": [".."],
"ignoreOffline":true|false,
"oneTimeMessage": true|false
}
|
image |
{
"type":"image",
"imageUrl":"http://..."
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
timeout |
{
"type":"timeout",
"interval":10,
"targetState":"/timeout"
}
|
Zendesk Chat
Learn more about how to connect a Zendesk Chat channel
| Type |
Parameters |
text |
{
"type":"text",
"text":"....",
}
|
buttons |
{
"type":"buttons"
"buttons":[
{
"text":"button",
}
]
}
|
crmIntegration |
script:
var reply = {type:"crmIntegration"};
reply.channelType = "BITRIX";
reply.task = "DEAL_UPDATE";
reply.parameters = {
"fields[TITLE]": "Deal name"
};
|
timeout |
{
"type":"timeout",
"interval":10,
"targetState":"/timeout"
}
|