{"id":23728,"date":"2020-07-03T16:34:33","date_gmt":"2020-07-03T15:34:33","guid":{"rendered":"https:\/\/developer.kore.ai\/v10-1\/?p=23728"},"modified":"2022-09-30T12:38:38","modified_gmt":"2022-09-30T11:38:38","slug":"adding-the-unblu-channel","status":"publish","type":"post","link":"https:\/\/developer.kore.ai\/v10-1\/docs\/bots\/channel-enablement\/adding-the-unblu-channel\/","title":{"rendered":"Adding the Unblu Channel"},"content":{"rendered":"<section class=\"l-section wpb_row height_auto\"><div class=\"l-section-h i-cf\"><div class=\"g-cols vc_row type_default valign_top\"><div class=\"vc_col-sm-12 wpb_column vc_column_container\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\">\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<p>Unblu is a Conversational Platform for Financial Services.<\/p>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<p>To setup Unblu as a channel, you will need to create an External Integration bot in Unblu, create a \u2018Named Area\u2019 and map this Named Area to your Kore.ai assistant.<\/p>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<div class=\"w-separator size_small with_line width_default thick_1 style_solid color_border align_center\"><div class=\"w-separator-h\"><\/div><\/div>\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<h2><span class=\"ez-toc-section\" id=\"Channel_Integration\">Channel Integration<\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"Step_1_Create_a_Named_Area\">Step 1: Create a Named Area<\/span><\/h3>\n<p>Named Areas in Unblu are used to identify the origins of the chat requests from your website. The Kore.ai assistant should be associated with a Named Area to ensure that it responds to users only when the chat has originated from the sections of your website associated with this Named Area. <span style=\"font-weight: 400\">This mapping is optional if you are enabling the Unblu channel for a single kore.ai bot alone.\u00a0<\/span><\/p>\n<ol>\n<li><a class=\"ng-binding\" href=\"https:\/\/latest.demo.unblu.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Login\u00a0<\/a>to your Unblu Account Administration.<\/li>\n<li>Under the Named Areas module, select the \u2018New named area\u2019 option.<\/li>\n<li>Provide all the requested information.<\/li>\n<li>Make a note of the name of the Named Area you have created.<\/li>\n<\/ol>\n<h3 class=\"channelstep ng-binding\"><span class=\"ez-toc-section\" id=\"Step_2_Create_Unblu_Bot\">Step 2: Create Unblu Bot<\/span><\/h3>\n<p class=\"ng-binding\">A assistant should be created in your Unblu account for integrating it with your current Kore.ai assistant.<\/p>\n<p class=\"ng-binding\">The Unblu Bot can be directly created from the Kore.ai XO Platform.<\/p>\n<ol>\n<li class=\"ng-binding\">Create or Open the assistant in the XO platform.<\/li>\n<li>Go to <strong>Deploy &gt; Channels<\/strong> and select <strong>Unblu<\/strong>..<\/li>\n<li class=\"ng-binding\">Proceed to the <strong>Configurations tab<\/strong> and provide the following details for creating an assistantin your Unblu account:\n<ul>\n<li><strong>Unblu Host URL<\/strong> -the URL of your Unblu application. For example, use <a href=\"https:\/\/www.unblu.com\/\">https:\/\/www.unblu.com\/<\/a> for the Unblu cloud.<\/li>\n<li><strong>Unblu Account Username<\/strong> &#8211;<span style=\"font-weight: 400\">Provide your Unblu account username.<\/span><\/li>\n<li><strong>Unblu Account Password<\/strong> &#8211;\u00a0<span style=\"font-weight: 400\">Provide the password associated with your Unblu username.<\/span><\/li>\n<li><strong>Unblu Bot Name<\/strong><span style=\"font-weight: 400\"> &#8211;\u00a0<\/span><span style=\"font-weight: 400\">Provide a name you would like to use for your Unblu bot<\/span><\/li>\n<li><strong>Unblu Bot Description<\/strong> &#8211; <span style=\"font-weight: 400\">Provide a short description of your Unblu bot<\/span><\/li>\n<li><strong>Bot Person<\/strong> &#8211;\u00a0<span style=\"font-weight: 400\">Provide a Name to represent the Unblu bot to your users<\/span><\/li>\n<li><strong>Secret Key<\/strong> &#8211;\u00a0<span style=\"font-weight: 400\">Provide a confidential key to secure the communication between Unblu and Kore.ai bots<\/span><\/li>\n<li><strong>Named Area<\/strong> &#8211;\u00a0<span style=\"font-weight: 400\">Provide the Named Area you would like to associate with your Kore.ai assistant. Kore.ai will respond only to the user chats that have originated in the Named Area that you have selected here. This field is optional if you are enabling Unblu channel for a single kore.ai assistant alone.\u00a0<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Select to<\/span><strong> Enable<\/strong><span style=\"font-weight: 400\"> the channel and <\/span><strong>Save <\/strong><span style=\"font-weight: 400\">your settings.<\/span><\/li>\n<\/ul>\n<\/li>\n<li><strong>Enable<\/strong> the channel.<\/li>\n<\/ol>\n<p><a ref=\"magnificPopup\" href=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20220930122924\/channel-config-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-46648\" src=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20220930122924\/channel-config-1-497x1024.png\" alt=\"\" width=\"475\" height=\"978\" srcset=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20220930122924\/channel-config-1-497x1024.png 497w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20220930122924\/channel-config-1-146x300.png 146w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-1\/wp-content\/uploads\/sites\/35\/20220930122924\/channel-config-1.png 524w\" sizes=\"auto, (max-width: 475px) 100vw, 475px\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400\">After the channel is enabled and all configurations are verified, you can optionally publish<\/span><\/p>\n<p><span style=\"font-weight: 400\">the assistant to make it available for end-users, with the new channel. Learn more about <\/span><a href=\"https:\/\/developer.kore.ai\/v10-1\/docs\/bots\/publish\/publishing-bot\/\"><span style=\"font-weight: 400\">Publishing your Virtual Assistant<\/span><\/a><span style=\"font-weight: 400\">.<\/span><\/p>\n<p><span style=\"font-weight: 400\">To learn more about working with Channels within the Kore.ai XO Platform, please see <\/span><a href=\"https:\/\/developer.kore.ai\/v10-1\/docs\/bots\/channel-enablement\/adding-channels-to-your-bot\/\"><span style=\"font-weight: 400\">Channel Enablement.<\/span><\/a><\/p>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<h2><span class=\"ez-toc-section\" id=\"Additional_Instructions\">Additional Instructions<\/span><\/h2>\n<p>For the seamless exchange of information from Unblu to Kore.ai, a few additional steps need to be performed.<br \/>For a detailed document on the implementation, <a href=\"\/docs\/bots\/how-tos\/kore-unblu-integration\/\" target=\"_blank\" rel=\"noopener noreferrer\">refer here<\/a>.<\/p>\n<ul>\n<li>The <em>host URL<\/em> where the Unblu SDK would be hosted needs to be added to the <strong>Domain<\/strong> section of your Unblu Account.<\/li>\n<li>From your Unblu Account, <strong>API Keys<\/strong> section, make a note of the <em>API Key<\/em>.<\/li>\n<li>Configure the <strong>Unblu SDK<\/strong> to give access to Kore.ai assistant, following the steps given below.<\/li>\n<li>Open the Unblu SDK HTML file. Ensure that the following attributes are set:\n<ul>\n<li>In the <code>&lt;head&gt;<\/code> the meta tag should look thus: <code>&lt;meta name=\"unblu:named-area\" content=\"&lt;your-namedArea-Id&gt;\" \/&gt;<\/code> This is the named area that you created in Step 1 above.<\/li>\n<li>Script tag to populate the visitor information needs point to the Unblu host: <code>&lt;script src=\"&lt;your-unblu-host&gt;\/unblu\/js-api\/v2\/visitor\/visitor-api.min.js\"&gt;&lt;\/script&gt;<\/code><\/li>\n<li>Invoke the function <code>setVisitorData<\/code> to pass the visitor data to Kore.ai assistant. Note that the <code>visitorData<\/code> should be in string format and if you need to pass an object use Stringify.\n<ul>\n<li>Locate the following section and populate the apiKey and serverUrl fields with the above-mentioned values.\n<pre>window.unblu.api\r\n.configure({\r\n   apiKey: \"&lt;your-unblu-apikey&gt;\",\r\n   serverUrl: \"&lt;your-unblu-host&gt;\"\r\n  })<\/pre>\n<\/li>\n<\/ul>\n<\/li>\n<li>In the following Script tag, add Unblu host URL and the API key: <code>&lt;script type=\"text\/javascript\" defer=\"defer\" src=\"&lt;your-unblu-host&gt;\/unblu\/visitor.js?x-unblu-apikey=&lt;your-unblu-apikey&gt;\"&gt;&lt;\/script&gt;<\/code><\/li>\n<li>The entire Unblu SDK HTML file would look like this:\n<pre>&lt;!DOCTYPE html&gt;\r\n&lt;html&gt;\r\n\r\n&lt;head&gt;\r\n\r\n   &lt;meta name=\"unblu:named-area\" content=\"&lt;your-namedArea-Id&gt;\" \/&gt;\r\n\r\n   &lt;script src=\"https:\/\/cdn.jsdelivr.net\/npm\/promise-polyfill@8\/dist\/polyfill.min.js\"&gt;&lt;\/script&gt;\r\n   &lt;script src=\"&lt;your-unblu-host&gt;\/unblu\/js-api\/v2\/visitor\/visitor-api.min.js\"&gt;&lt;\/script&gt;\r\n\r\n &lt;script&gt;\r\n   function setVisitorData(engagementType, visitorData) { \r\n      return Promise.resolve(JSON.stringify({ name: \"John\", about: \"Tester\" })); \r\n       }\r\n     window.unblu.api\r\n      .configure({\r\n         apiKey: \"&lt;your-unblu-apikey&gt;\",\r\n         serverUrl: \"&lt;your-unblu-host&gt;\"\r\n       })\r\n      .initialize().then(function (api) {\r\n        console.log(\"API initialized successfully!\");\r\n        api.setNewConversationInterceptor(setVisitorData);\r\n \r\n            }).catch(e =&gt; {\r\n                console.log(\"------error : \", e);\r\n                if (e.type === 'INITIALIZATION_TIMEOUT') {\r\n                  \/\/retry\r\n                 } else if (e.type === 'UNSUPPORTED_BROWSER') {\r\n                  \/\/ display unsupported browser dialog\r\n                } else {\r\n                 \/\/ show generic error message\r\n                 }\r\n           });\r\n\r\n&lt;\/script&gt;\r\n\r\n&lt;script type=\"text\/javascript\" defer=\"defer\"\r\nsrc=\"&lt;your-unblu-host&gt;\/unblu\/visitor.js?x-unblu-apikey=&lt;your-unblu-apikey&gt;\"&gt;&lt;\/script&gt;\r\n&lt;\/head&gt;\r\n\r\n&lt;body&gt;\r\n&lt;\/body&gt;\r\n\r\n&lt;\/html&gt;<\/pre>\n<\/li>\n<li>You can access the Visitor Data from the <code>usercontext.customData<\/code>\u00a0 along with the user information for each message from Unblu,<\/li>\n<li>Following is the structure of the <code>usercontext.customData<\/code>\n<pre>{\r\n\"timestamp\" : 1594113137065.0,\r\n\"eventType\" : \"bot.dialog.opened\",\r\n\"accountId\" : \"wZvcAnbBSpOps9oteH-Oxw\",\r\n\"dialogToken\" : \"qG8dFE7ZQPW1p6qcI293hQ-c-QY7P7MNqTCuM6FHT-m-FSQ\",\r\n\"dialogType\" : \"ONBOARDING\",\r\n\"counterpartPerson\" : {\r\n   \"type\" : \"PersonData\",\r\n   \"id\" : \"xZHnVmhxQNKvyf5ybxyLoQ\",\r\n   \"accountId\" : \"wZvcAnbBSpOps9oteH-Oxw\",\r\n   \"personSource\" : \"VIRTUAL\",\r\n   \"sourceId\" : \"awhFjUq1RQCvdMDoV5OW2Q\",\r\n   \"sourceData\" : null,\r\n   \"firstName\" : null,\r\n   \"lastName\" : null,\r\n   \"username\" : null,\r\n   \"nickname\" : null,\r\n   \"displayName\" : \"Visitor - xZHnV\",\r\n   \"personType\" : \"VISITOR\",\r\n   \"authorizationRole\" : \"ANONYMOUS_USER\",\r\n   \"email\" : null,\r\n   \"phone\" : null,\r\n   \"teamId\" : null,\r\n   \"teamName\" : null,\r\n   \"avatar\" : null\r\n   },\r\n\"conversation\" : {\r\n   \"type\" : \"ConversationData\",\r\n   \"id\" : \"qG8dFE7ZQPW1p6qcI293hQ\",\r\n   \"accountId\" : \"wZvcAnbBSpOps9oteH-Oxw\",\r\n   \"topic\" : null,\r\n   \"recipient\" : {\r\n   \"type\" : \"NamedAreaData\", \r\n   \"id\" : \"WkUGFqcORCCor3bxHa3I5A\",\r\n   \"accountId\" : \"wZvcAnbBSpOps9oteH-Oxw\",\r\n   \"displayName\" : \"testlocal\",\r\n   \"avatar\" : null\r\n  },\r\n\"participants\" : [\r\n {\r\n   \"type\" : \"ParticipantData\",\r\n   \"state\" : \"ACTIVE\",\r\n   \"personId\" : \"yb8ALAiGQOWlCoBahUCfgQ\",\r\n   \"connectedViaExternalMessenger\" : false,\r\n   \"hidden\" : true\r\n }\r\n ],\r\n \"assigneePersonId\" : null,\r\n \"contextPersonId\" : \"xZHnVmhxQNKvyf5ybxyLoQ\",\r\n \"state\" : \"ONBOARDING\",\r\n \"initialEngagementType\" : \"CHAT_REQUEST\",\r\n \"locale\" : \"en\",\r\n \"tokboxSessionId\" : null,\r\n \"visitorData\" : \"{\\\"name\\\":\\\"John\\\",\\\"about\\\":\\\"Tester\\\"}\",\r\n \"conversationTemplateId\" : \"R6W3x2uzQ1KXzARnIqdNZw\",\r\n \"links\" : [\r\n {\r\n   \"type\" : \"OPEN_IN_VISITOR_DESK\",\r\n   \"url\" : \"https:\/\/kore.dev.unblu-test.com\/unblu\/visitordesk\/#\/conversation\/qG8dFE7ZQPW1p6qcI293hQ\"\r\n },\r\n {\r\n  \"type\" : \"OPEN_IN_AGENT_DESK\",\r\n  \"url\" : \"https:\/\/kore.dev.unblu-test.com\/unblu\/desk\/#\/conversation\/qG8dFE7ZQPW1p6qcI293hQ\"\r\n },\r\n{\r\n  \"type\" : \"OPEN_IN_AGENT_SINGLE_VIEW\",\r\n  \"url\" : \"https:\/\/kore.dev.unblu-test.com\/unblu\/single\/#\/conversation\/qG8dFE7ZQPW1p6qcI293hQ\"\r\n }\r\n ],\r\n \"externalMessengerChannelId\" : null,\r\n \"sourceId\" : null,\r\n \"configuration\" : null,\r\n \"text\" : null\r\n},\r\n\"presencePersonInfo\" : {\r\n  \"id\" : \"OuG04Q0WSFe3-iaIA1GlLw\",\r\n  \"creationTimestamp\" : 1594112743472.0,\r\n  \"modificationTimestamp\" : 1594112743472.0,\r\n  \"accountId\" : \"wZvcAnbBSpOps9oteH-Oxw\",\r\n  \"joinedTimestamp\" : 1594112743472.0,\r\n  \"leftTimestamp\" : null,\r\n  \"personId\" : \"xZHnVmhxQNKvyf5ybxyLoQ\",\r\n  \"deviceInfo\" : {\r\n    \"id\" : \"fx7Q8qZyQXmnf62xpoePWg\",\r\n    \"creationTimestamp\" : 1594112743454.0,\r\n    \"modificationTimestamp\" : 1594112743454.0,\r\n    \"accountId\" : \"wZvcAnbBSpOps9oteH-Oxw\",\r\n    \"osName\" : \"Ubuntu\",\r\n    \"osVersion\" : \"Other\",\r\n    \"browserName\" : \"Chromium\",\r\n    \"browserVersion\" : \"81.0\",\r\n    \"userAgent\" : null,\r\n    \"screenWidth\" : null,\r\n    \"screenHeight\" : null,\r\n    \"screenPixelRatio\" : null,\r\n    \"type\" : \"DESKTOP\",\r\n    \"identifier\" : \"awhFjUq1RQCvdMDoV5OW2Q\",\r\n    \"identifierSource\" : \"COOKIE\",\r\n    \"pushToken\" : null,\r\n    \"ownerPersonId\" : \"xZHnVmhxQNKvyf5ybxyLoQ\"\r\n  },\r\n \"touchTimestamp\" : 1594113153628.0,\r\n \"impersonationType\" : \"NONE\",\r\n \"impersonatedFromUserId\" : null,\r\n \"impersonatedFromAccountId\" : null,\r\n \"additionalInfo\" : null,\r\n \"authInfo\" : null,\r\n \"propagated\" : false\r\n }\r\n}<\/pre>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<h2><span class=\"ez-toc-section\" id=\"Special_Notes\">Special Notes<\/span><\/h2>\n<p>There are multiple functionalities that can be achieved by the integration of Unblu channel with Kore.ai assistant<\/p>\n<ul>\n<li>When mapping named area to a bot, <em>multiple named areas<\/em> can be mapped. This way a single Kore.ai assistant has the ability to accept Unblu dialog offer requests from different origins like SDKs or namedAreas.<\/li>\n<li>Also, the named area mapping is optional <span style=\"font-weight: 400\">if you are enabling the Unblu channel for a single Kore.ai assistant.\u00a0<\/span><\/li>\n<li>You can redirect user conversations to agents by adding an <em>agent transfer<\/em> node in the dialog flow, note that you need not enable the Agent Transfer or BotKit specifically for this Channel. Having an agent transfer node is sufficient.<\/li>\n<li>The user information for each message from Unblu is available in the <code>usercontext.customData<\/code> and you can use it for further processing. This information includes <em>deviceInfo<\/em>, <em>authInfo<\/em>, <em>joinedTime<\/em> of the user. <a href=\"\/docs\/bots\/bot-builder-tool\/dialog-task\/context-object\/\" target=\"_blank\" rel=\"noopener noreferrer\">See here for how to use context object<\/a>.<\/li>\n<\/ul>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<h2><span class=\"ez-toc-section\" id=\"Using_Unblu_supported_message_templates\">Using Unblu supported message templates<\/span><\/h2>\n<p>By default, the following message templates are used &#8211; Button\/multi-choice, List template. You can override templates like card message, List message, multi-choice\/Button message.<\/p>\n<p>Following is a code example for how to use the above mentioned templates, change it to suit your requirements:<\/p>\n<ul>\n<li><strong>Card Template<\/strong>:\n<pre>var unbluCardTemplate = {\r\n    \"$_type\": \"CardPostMessageData\",\r\n    \"type\": \"CARD\",\r\n    \"imageUrl\": \"data:image\/png;base64,\",\r\n    \"imageAltText\": \"test image\",\r\n    \"title\": \"Title\",\r\n    \"body\": \"This is the **body text** with markdown\",\r\n    \"bodyTextType\": \"MARKDOWN\",\r\n    \"actions\": [\r\n      {\r\n        \"$_type\": \"MessageAction\",\r\n        \"actionType\": \"LINK_INTERNAL\",\r\n        \"label\": \"Unblu homepage\",\r\n        \"value\": \"https:\/\/unblu.com\"\r\n      },\r\n      {\r\n        \"$_type\": \"MessageAction\",\r\n        \"actionType\": \"LINK_EXTERNAL\",\r\n        \"label\": \"Wikipedia\",\r\n        \"value\": \"https:\/\/www.wikipedia.org\/\"\r\n      },\r\n      {\r\n        \"$_type\": \"MessageAction\",\r\n        \"actionType\": \"REPLY_MESSAGE\",\r\n        \"label\": \"More info\",\r\n        \"value\": \"Could you provide me with more info?\"\r\n      }\r\n    ]\r\n  };\r\n\r\nprint(JSON.stringify(unbluCardTemplate));\r\n<\/pre>\n<\/li>\n<li><strong>List Template<\/strong>:\n<pre>var unbluListTemplate = {\r\n    \"$_type\": \"ListPostMessageData\",\r\n    \"type\": \"LIST\",\r\n    \"header\": {\r\n      \"$_type\": \"MessageHeader\",\r\n      \"imageUrl\": \"data:image\/png;base64,\",\r\n      \"imageAltText\": \"test image\",\r\n      \"title\": \"Title\",\r\n      \"body\": \"This is the **body text** with markdown\",\r\n      \"bodyTextType\": \"MARKDOWN\"\r\n    },\r\n    \"items\": [\r\n      {\r\n        \"$_type\": \"PostListMessageCardItemData\",\r\n        \"imageUrl\": \"data:image\/png;base64,\",\r\n        \"imageAltText\": \"test image\",\r\n        \"title\": \"Title\",\r\n        \"body\": \"This is the **body text** with markdown\",\r\n        \"bodyTextType\": \"MARKDOWN\",\r\n        \"action\": null\r\n      },\r\n      {\r\n        \"$_type\": \"PostListMessageCardItemData\",\r\n        \"imageUrl\": \"data:image\/png;base64,\",\r\n        \"imageAltText\": \"test image\",\r\n        \"title\": \"Title\",\r\n        \"body\": \"This is the **body text** with markdown\",\r\n        \"bodyTextType\": \"MARKDOWN\",\r\n        \"action\": {\r\n          \"$_type\": \"MessageAction\",\r\n          \"actionType\": \"LINK_INTERNAL\",\r\n          \"label\": \"Unblu homepage\",\r\n          \"value\": \"https:\/\/unblu.com\"\r\n        }\r\n      }\r\n    ],\r\n    \"actions\": [\r\n      {\r\n        \"$_type\": \"MessageAction\",\r\n        \"actionType\": \"LINK_INTERNAL\",\r\n        \"label\": \"Unblu homepage\",\r\n        \"value\": \"https:\/\/unblu.com\"\r\n      },\r\n      {\r\n        \"$_type\": \"MessageAction\",\r\n        \"actionType\": \"LINK_EXTERNAL\",\r\n        \"label\": \"Wikipedia\",\r\n        \"value\": \"https:\/\/www.wikipedia.org\/\"\r\n      },\r\n      {\r\n        \"$_type\": \"MessageAction\",\r\n        \"actionType\": \"REPLY_MESSAGE\",\r\n        \"label\": \"More info\",\r\n        \"value\": \"Could you provide me with more info?\"\r\n      }\r\n    ]\r\n}\r\nprint(JSON.stringify(unbluListTemplate));\r\n<\/pre>\n<\/li>\n<li><strong>Multi Choice Template<\/strong>:\n<pre>var unbluMultiChoiceTemplate =  {\r\n    \"$_type\": \"MultichoiceQuestionPostMessageData\",\r\n    \"type\": \"MULTICHOICE_QUESTION\",\r\n    \"text\": \"Choose one of the options\",\r\n    \"textType\": \"MARKDOWN\",\r\n    \"options\": [\r\n      {\r\n        \"$_type\": \"MultichoiceQuestionOption\",\r\n        \"label\": \"Option 1\",\r\n        \"value\": \"1\",\r\n        \"primary\": true\r\n      },\r\n      {\r\n        \"$_type\": \"MultichoiceQuestionOption\",\r\n        \"label\": \"Option 2\",\r\n        \"value\": \"2\",\r\n        \"primary\": false\r\n      }\r\n    ]\r\n  };\r\nprint(JSON.stringify(unbluMultiChoiceTemplate));\r\n<\/pre>\n<\/li>\n<\/ul>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<div class=\"w-separator size_small with_line width_default thick_1 style_solid color_border align_center\"><div class=\"w-separator-h\"><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/section>\n","protected":false},"excerpt":{"rendered":"Unblu is a Conversational Platform for Financial Services. To setup Unblu as a channel, you will need to create an External Integration bot in Unblu, create a \u2018Named Area\u2019 and map this Named Area to your Kore.ai assistant. Channel Integration Step 1: Create a Named Area Named Areas in Unblu are used to identify the...","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[25],"tags":[],"class_list":["post-23728","post","type-post","status-publish","format-standard","hentry","category-channel-enablement"],"_links":{"self":[{"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/posts\/23728","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/comments?post=23728"}],"version-history":[{"count":13,"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/posts\/23728\/revisions"}],"predecessor-version":[{"id":46658,"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/posts\/23728\/revisions\/46658"}],"wp:attachment":[{"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/media?parent=23728"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/categories?post=23728"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/developer.kore.ai\/v10-1\/wp-json\/wp\/v2\/tags?post=23728"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}