{"id":23943,"date":"2020-07-10T09:57:45","date_gmt":"2020-07-10T08:57:45","guid":{"rendered":"https:\/\/developer.kore.ai\/v7-3\/?p=23943"},"modified":"2020-10-15T12:21:27","modified_gmt":"2020-10-15T11:21:27","slug":"adding-the-google-assistant-channel","status":"publish","type":"post","link":"https:\/\/developer.kore.ai\/v7-3\/docs\/bots\/channel-enablement\/adding-the-google-assistant-channel\/","title":{"rendered":"Adding the Google Assistant 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>To add the Google Assistant channel to your Bot, you will need to build a project in \u2018Actions on Google\u2019, link it to an agent in Dialogflow, configure actions and enable fulfillment using webhook integration.<\/p>\n<div class=\"alert alert-info\">\n<p><strong>Note<\/strong>: Google Assistant as a channel should ideally be enabled for bots that are specifically built to work on voice-based channels. Please review the following before enabling Google Assistant as a channel for this bot<\/p>\n<ul>\n<li>Do ensure that your dialog tasks contain Bot Message node as the last node only<\/li>\n<li>Alert task notifications are currently not supported<\/li>\n<li>Some of the Hold &amp; Resume options with explicit messages to the user will not work<\/li>\n<li>Task execution will not be automatically resumed when users provide authorization using web forms. After providing authorization, users have to re-initiate the task.<\/li>\n<li>Webform based responses are not supported for Action, Information, and Alert tasks.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<\/div>\n<p>To add the Google Assistant channel to your bot, you need to:<\/p>\n<ol>\n<li><b>Create Actions on Google Project-<\/b> To enable the Google Assistant channel to your Kore.ai bot, create a project on \u2018Actions on Google\u2019 Console, and add all the required details.<\/li>\n<li><b>Define Actions &#8211;<\/b> To define actions, you will need to add an action to your project.<\/li>\n<li><b>Create Agent in Dialogflow &#8211;<\/b> You will need to create an agent in your Dialogflow Console.<\/li>\n<li><b>Enable Fulfillment &#8211; <\/b>You will need to configure a Webhook integration between your Dialogflow agent and Kore.ai bot to enable Fulfillment.<\/li>\n<li><b>Test using Simulator &#8211;<\/b> Once all the configurations are done, you need to test your actions using the built-in Simulator on the \u2018Actions by Google\u2019 console.<\/li>\n<li><b>Deploy and Release &#8211;<\/b> When you have configured the integration and tested your bot, you will need to deploy your bot for making it available to potential users.<\/li>\n<li><b>Enable Channel &#8211;<\/b> After completing the integration setup and entering the configuration details in the Bot builder, you need to enable the channel.<\/li>\n<\/ol>\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<h4>Before adding the Google Assistant channel<\/h4>\n<p>To complete this procedure, you must have or register for a new account in the \u2018Actions on Google\u2019 Console.<\/p>\n<ol>\n<li>Login to <a href=\"https:\/\/developers.google.com\/actions\/\">Actions on Google Console<\/a>, click on <b>Go To Actions Console,<\/b> and click on <b>Add\/import project<\/b>. Provide all the details in the required fields and click on <b>Create Project<\/b>.<\/li>\n<li>After your project is created, you would be redirected to the project Get Started page.<\/li>\n<li>On this page, you would need to select a category for your project. Select the project category as \u2018<em>Custom<\/em>\u2019 and click the \u2018<strong>Next<\/strong>\u2019 button.<\/li>\n<li>After your category is selected, you would need to select a project template. Scroll down to the bottom of the page and select \u2018<em>Click here to build your Action using DialogFlow<\/em>\u2019, this will redirect you to the project\u2019s overview page.<\/li>\n<li>Click the \u2018<strong>Modify languages in Settings<\/strong>\u2019 option to update languages in which your Actions will be displayed.<\/li>\n<li>Navigate back by clicking on the \u2018<strong>Overview<\/strong>\u2019 tab on top of the page.<\/li>\n<li>Now click on \u2018<strong>Decide how your Action is invoked<\/strong>\u2019 under the Quick Setup this should open up the \u2018Develop\u2019 tab.<\/li>\n<li>Now proceed to <b>Invocation<\/b> option on the left navigation bar. Provide a name that users would use to invoke your actions then click the \u2018<strong>Save<\/strong>\u201d button on the top-left corner of the screen. You may review other options available.<\/li>\n<li>Next you need to define Actions &#8211; Actions are the tasks that you intend your project to fulfill. Click the <b>Actions<\/b> option on the left navigation bar and click on <b>Add Your First Action<\/b>. A new popover screen with options to either build a custom intent or to choose built-in intents is displayed. Choose an appropriate option as per your requirement.<\/li>\n<li>Actions on Google will redirect you to the <b>Dialogflow<\/b> application for defining the action definition. If you are new to Dialogflow, you would be requested to register on Dialogflow. Once your Dialogflow account is set up, you would be redirected to the Console of Dialogflow to create a new Agent. Click the <b>Create<\/b> button to complete the creation of a new agent.<\/li>\n<li>Once your agent is created, click the <b>Intents<\/b> option on the left navigation bar. Dialogflow will add two intents by default viz. <b>Default Fallback Intent<\/b> and <b>Default Welcome Intent.<\/b><br \/>\n<b>Default Fallback Intent<\/b> is used to respond to any user input that does not match any of the other intents defined in the intent.<br \/>\n<b>Default Welcome Intent<\/b> is used to respond to the user on the first input.<br \/>\nIf no other intent is created in Dialogflow, these two intents will be used to address all user inputs.<\/li>\n<li>As you expect your Kore.ai bot to fulfill all your user requests, you would need to turn on Webhook call for both these intents. Once enabled, Dialogflow will route all user requests reaching any of these two intents to your Kore.ai bot.<\/li>\n<li>Select <b>Default Fallback Intent<\/b> to open the intent details and navigate to the end of the page. Under the <b>Fulfillment<\/b> section, turn on the toggle switch to <b>Enable webhook call for this intent<\/b> option. Click on <b>Save<\/b> to update your changes.<\/li>\n<li>Navigate back to the<b> Intents<\/b> option from the left navigation bar, select <b>Default Welcome Intent<\/b> to open the intent details, and navigate to the end of the page. Under the <b>Fulfillment<\/b> section, turn on the toggle switch to <b>Enable webhook call for this intent<\/b> option. Click on <b>Save<\/b> to update your changes.<\/li>\n<li>Next Enable Fulfillment &#8211; To configure the webhook integration between your Dialogflow agent and Kore.ai bot, click the <b>Fulfillment<\/b> option on the left navigation bar and enable the <b>Webhook<\/b> toggle switch.\n<ul>\n<li>Open the bot in the Kore.ai platform and access the <strong>Channel Enablement<\/strong> option and select the <strong>Google Assistant<\/strong> channel.<\/li>\n<li>Navigate to the Configurations tab and copy the Webhook URL provided there and update it in the <b>URL<\/b> field in the <b>Fulfillment <\/b>section of Dialogflow.<\/li>\n<li>From the Configurations tab of the Google Assistant channel page on the builder copy the Access Token. This token should be added as a header key in the Dialogflow Fulfillment screen. Under <b>Webhook<\/b> option of <b>Fulfillment<\/b> section, add key as <b>Access-token<\/b> and update the copied access token as the value for this key.<\/li>\n<\/ul>\n<\/li>\n<li>Navigate to the end of the page and click <b>Save<\/b>.<\/li>\n<li>Your configurations to enable the channel are all set up now. <b>Actions on Google<\/b> provides a built-in simulator to test your bot. For this, you would have to first enable few additional options of your Google account\u2019s <a href=\"https:\/\/myaccount.google.com\/activitycontrols\">Activity Controls<\/a> as per the details provided <a href=\"https:\/\/developers.google.com\/actions\/dialogflow\/first-app?hl=en#preview_the_app\">here<\/a>.\n<ol>\n<li>After you have configured these controls, in the Dialogflow console, click the \u2018<strong>Integrations<\/strong>\u2019 option on the left navigation bar and then click the \u2018<strong>Google Assistant<\/strong>\u2019. A popup window with Google Assistant\u2019s integration settings would be displayed. Review the required settings and then click the \u2018<strong>Test<\/strong>\u2019 button at the bottom of the popup.<\/li>\n<li>This should redirect you back to the Google Action Console and open up the test tab. Now, you can start testing your bot using Google&#8217;s in-built emulator.<\/li>\n<\/ol>\n<\/li>\n<li>Once you have configured the integration and tested your bot, you have to deploy your bot for making it available to potential users. Proceed to the \u2018<strong>Deploy<\/strong>\u2019 tab on the top navigation and furnish all the required information and submit for release by clicking the \u2018<strong>Save<\/strong>\u2019 button on the top-right of the page. Your action will be available on Google Assistant Explore only after your release submission is approved.<\/li>\n<li>Proceed to the <b>Configurations<\/b> tab on the Google Assistant channel page to continue with the channel setup process.<\/li>\n<\/ol>\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<h3><span class=\"ez-toc-section\" id=\"Editing_the_Google_Assistant_Channel\">Editing the Google Assistant Channel<\/span><\/h3>\n<p>To edit the Google Assistant channel, hover your mouse over the channel and click to modify. You can make the necessary updates to your channel configurations and save them. You may also disable or delete the channel information by clicking the <b>Settings <\/b>icon.<br \/>\n<a ref=\"magnificPopup\" href=\"\/wp-content\/uploads\/sites\/15\/8-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-15087\" src=\"\/wp-content\/uploads\/sites\/15\/8-1-1024x293.png\" alt=\"\" width=\"835\" height=\"239\" \/><\/a><br \/>\nSelect one of the following commands to modify the channel:<\/p>\n<ul>\n<li><b>Disable\/Enable<\/b> \u2013 Click <b>Disable<\/b> to temporarily disable use of the Google Assistant channel for your Bot.To enable use of the Google Assistant channel, Click <b>Enable.<\/b><\/li>\n<li><b>Delete<\/b> \u2013 Click <b>Delete<\/b>, and then click <b>OK<\/b> in the <b>Delete Confirmation<\/b> dialog to permanently delete the Bot channel configuration.<\/li>\n<\/ul>\n<div class=\"alert alert-warning\"><b>Warning: <\/b>This action is permanent, and cannot be undone.<\/div>\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":"To add the Google Assistant channel to your Bot, you will need to build a project in \u2018Actions on Google\u2019, link it to an agent in Dialogflow, configure actions and enable fulfillment using webhook integration. Note: Google Assistant as a channel should ideally be enabled for bots that are specifically built to work on voice-based...","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-23943","post","type-post","status-publish","format-standard","hentry","category-channel-enablement"],"_links":{"self":[{"href":"https:\/\/developer.kore.ai\/v7-3\/wp-json\/wp\/v2\/posts\/23943","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/developer.kore.ai\/v7-3\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/developer.kore.ai\/v7-3\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/developer.kore.ai\/v7-3\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/developer.kore.ai\/v7-3\/wp-json\/wp\/v2\/comments?post=23943"}],"version-history":[{"count":2,"href":"https:\/\/developer.kore.ai\/v7-3\/wp-json\/wp\/v2\/posts\/23943\/revisions"}],"predecessor-version":[{"id":24646,"href":"https:\/\/developer.kore.ai\/v7-3\/wp-json\/wp\/v2\/posts\/23943\/revisions\/24646"}],"wp:attachment":[{"href":"https:\/\/developer.kore.ai\/v7-3\/wp-json\/wp\/v2\/media?parent=23943"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/developer.kore.ai\/v7-3\/wp-json\/wp\/v2\/categories?post=23943"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/developer.kore.ai\/v7-3\/wp-json\/wp\/v2\/tags?post=23943"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}