Channel Output
Description

Within a code node you have the ability to output a text message along with a data object by using the following actions
functions:
actions.output("<YOUR_TEXT>", {"key": "value" });
// OR
actions.say("<YOUR_TEXT>", {"key": "value" });
The data
parameter should take the json payload that defines the custom channel message:
const jsonPayload = {
"_cognigy":{
// Channel Specific Payload
}
}
actions.say("<YOUR_TEXT", jsonPayload);
See the next sections for the required format.
Alexa

Example
We'll output a simple card to our contact by using the following snippet:
{
"_cognigy": {
"_alexa": {
"response": {
"shouldEndSession": false,
"card": {
"type": "Standard",
"title": "Title of the card",
"content": "Content of a simple card",
"text": "Text content for a standard card",
"image": {
"smallImageUrl": "https://url-to-small-card-image",
"largeImageUrl": "https://url-to-large-card-image"
}
}
}
}
}
}
Messenger

For the messenger you can send send multiple templates by building a json object or by using the facebook-bot-messenger module. For further information got to their GitHub Page.
Example
The following snippet will send a simple text message and a quick reply to the contact:
{
"_cognigy": {
"_facebook": {
"message": {
"text": "Hello World",
"quick_replies": [
{
"content_type": "text",
"condition": "",
"title": "Hi",
"image_url": "",
"payload": "Hi"
}
]
}
}
}
}
Or you can use the facebook-bot-messenger module for building custom json. Here we'll send quck replies to the contact:
// use facebook-bot-messenger to compile reply
const builder = new MessengerPlatform.QuickRepliesMessageBuilder('Pick a color:');
builder.addImageOption('Red', 'DEVELOPER_DEFINED_PAYLOAD_FOR_PICKING_RED', 'http://petersfantastichats.com/img/red.png')
.addImageOption('Green', 'DEVELOPER_DEFINED_PAYLOAD_FOR_PICKING_GREEN', 'http://petersfantastichats.com/img/green.png');
// output the reply
actions.output("test", { "_cognigy": { "_facebook": {"message": builder.buildMessage() }}});
Google Actions

Google Actions Responses Reference
Example
Here we'll output some suggestion chips to the contact:
{
"_cognigy":{
"_google": {
"conversationToken": "",
"expectUserResponse": true,
"expectedInputs": [
{
"inputPrompt": {
"richInitialPrompt": {
"items": [
{
"simpleResponse": {
"textToSpeech": "Howdy! I can tell you fun facts about almost any number like 0, 42, or 100. What number do you have in mind?",
"displayText": "Howdy! I can tell you fun facts about almost any number. What number do you have in mind?"
}
}
],
"suggestions": [
{
"title": "0"
},
{
"title": "42"
},
{
"title": "100"
},
{
"title": "Never mind"
}
]
}
},
"possibleIntents": [
{
"intent": "actions.intent.TEXT"
}
]
}
]
}
}
}
Webchat

The Webchat uses the same format as the Messenger but instead of adding the _facebook
property you have to add _webchat
.
Example
The following example sends a text message and a quick reply to the contact:
{
"_cognigy": {
"_webchat": {
"message": {
"text": "Hello World",
"quick_replies": [
{
"content_type": "text",
"condition": "",
"title": "Hi",
"image_url": "",
"payload": "Hi"
}
]
}
}
}
}
LINE

Example
The following outputs a simple confirm prompt to the contact:
{
"_cognigy": {
"_line": {
"type": "template",
"altText": "this is a confirm template",
"template": {
"type": "confirm",
"text": "Are you sure?",
"actions": [
{
"type": "message",
"label": "Yes",
"text": "yes"
},
{
"type": "message",
"label": "No",
"text": "no"
}
]
}
}
}
}
Smooch

Example
The following outputs a simple image to the end user:
{
"role": "appMaker",
"type": "image",
"text": "Hello!",
"mediaUrl": "http://example.org/image.jpg",
"actions": [{
"text": "More info",
"type": "link",
"uri": "http://example.org"
}]
}
Updated over 3 years ago