{"id":23187,"date":"2020-02-07T12:23:19","date_gmt":"2020-02-07T12:23:19","guid":{"rendered":"https:\/\/developer.kore.ai\/v8-0\/?p=23187"},"modified":"2021-03-25T08:36:00","modified_gmt":"2021-03-25T08:36:00","slug":"panels-widgets","status":"publish","type":"post","link":"https:\/\/developer.kore.ai\/v8-0\/docs\/bots\/bot-builder-tool\/panels-widgets\/","title":{"rendered":"Panels &amp; Widgets"},"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>Interactions with virtual agents are typically conducted using chat \/ messaging tools, voice channels or digital assistants. In the majority of the cases, the virtual agents respond to the user queries only when the users have requested for some information. This works well for conducting on-demand tasks that need user input for execution and the result is usually a short response, confirmation or acknowledgment. But, with the emergence of Digital Assistants, the need for proactive updates to users via engaging user interface has become a key requirement. This can be achieved by providing engaging widgets that present relevant information to end-users with minimal need for user input. The widgets can also trigger mobile\/web apps from within the chatbot.<\/p>\n<p>Using <strong>Panels and Widgets<\/strong> from the Kore.ai Bots platform, you can design interactive components to proactively present relevant information to your customers. Panels are the placeholders that hold one or more widgets. Widgets are individual components that display information to the end-users.\u00a0 Your customers can interact with your bot either in the conversation mode or directly get the required information from the widgets.<\/p>\n<p>Note: This feature was introduced in ver 7.2 of the platform<\/p>\n<p>This document gives an overview of the working and implementation of Panels and Widgets. For an step-by-step usage instructions, <a href=\"\/docs\/bots\/how-tos\/how-to-configure-panels-widgets\/\">refer\u00a0 to this how to<\/a>.<\/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><div class=\"g-cols wpb_row  type_default valign_top vc_inner \"><div class=\"vc_col-sm-6 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<div style=\"width: 281px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-23187-1\" width=\"281\" height=\"500\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"\/wp-content\/uploads\/sites\/16\/PanelsWidgets-final.mp4?_=1\" \/><a href=\"\/wp-content\/uploads\/sites\/16\/PanelsWidgets-final.mp4\">\/wp-content\/uploads\/sites\/16\/PanelsWidgets-final.mp4<\/a><\/video><\/div>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<\/div><\/div><\/div><div class=\"vc_col-sm-6 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<h1><span class=\"ez-toc-section\" id=\"Use_Case\">Use Case<\/span><\/h1>\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<ol>\n<li>Using Panels &amp; Widgets, an organization offers to its employees a single interface for various work-related activities.<\/li>\n<li>Each of the Panels gives access to various functions like Sales, HR, ITSM, etc.<\/li>\n<li>Employee accesses these panels for information pertaining to each of the above functions and perform follow up actions.<\/li>\n<li>As an example, HR Panel has multiple widgets showing:\n<ul>\n<li>company-wide announcements;<\/li>\n<li>leave balance;<\/li>\n<li>benefits and option to enrol for additional benefits through bot conversation.<\/li>\n<\/ul>\n<\/li>\n<li>Similarly, the ITSM panel shows the outage report and other details.<\/li>\n<\/ol>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<\/div><\/div><\/div><\/div><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<p>This document gives an overview and the implementation details of the features. For an use case example, <a href=\"\/docs\/bots\/how-tos\/how-to-configure-panels-widgets\/\">refer here<\/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<h1><span class=\"ez-toc-section\" id=\"Setup\">Setup<\/span><\/h1>\n<p>You can access <strong>Panels &amp; Widgets<\/strong> from under the <strong>Bot Tasks<\/strong> menu.<\/p>\n<p>Following are the steps to setting up Panels and Widgets:<\/p>\n<ul>\n<li><strong>Configure Widgets<\/strong>: Define widgets by connecting them either to your bot tasks or any other source like JavaScript generating JSON file. Note that the dialog tasks should have a Bot response defined for Widget SDK channel using the Widget SDK supported message template. <a href=\"\/docs\/bots\/sdks\/widget-sdk-message-formatting-and-templates\/\" target=\"_blank\" rel=\"noopener noreferrer\">See here for supported message templates<\/a>.<\/li>\n<li><strong>Preview the Widgets<\/strong>: Preview your widgets from the Bot Builder.<\/li>\n<li><strong>Set up Panels<\/strong>: You may create multiple panels and each panel can host widgets that present relevant information. You can use the pre-defined widgets or create new.<\/li>\n<li><strong>Test the Panels<\/strong> to see how the Panels and Widgets will be rendered in the chat window.<\/li>\n<li><strong>Publish the Bot<\/strong>: Publish the bot so that the panels and widgets can be made available for your end-users.<\/li>\n<li><strong>Host the Panel<\/strong>: You can choose to host your widgets independently or co-host them along with the WebSDK. You can download the SDKs from Kore.ai GitHub page. Do ensure to enable WidgetSDK as a channel.<\/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>\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<h1><span class=\"ez-toc-section\" id=\"Configure_Widgets\">Configure Widgets<\/span><\/h1>\n<p>Widgets are individual components that can communicate with the bot for presenting information to the end-users. The source of information for widgets can be from a Dialog Task or a JSON using any of the pre-defined widget templates.<\/p>\n<p><strong>Steps in configuring Widgets:<\/strong><\/p>\n<ol>\n<li>Use\u00a0<strong>Create Widget<\/strong> button to create a widget.<a ref=\"magnificPopup\" href=\"\/wp-content\/uploads\/sites\/16\/widget_creation.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-22939\" src=\"\/wp-content\/uploads\/sites\/16\/widget_creation.png\" alt=\"\" width=\"528\" height=\"766\" \/><\/a><\/li>\n<li>In the\u00a0<strong>New Widget<\/strong> popover, enter\n<ul>\n<li><strong>Name<\/strong> of the Widget<\/li>\n<li><strong>Display Name<\/strong> for the Widget<\/li>\n<li><strong>Auto Refresh<\/strong> to set the frequency with which this widget needs poll for fresh data. The refresh is applicable only when the Panel containing the Widget is active.<\/li>\n<li><strong>Source<\/strong> for a widget can be either from the execution of Dialog Task or from JavaScript defining a JSON:\n<ul>\n<li><strong>JSON<\/strong> can be specified in the JavaScript Editor that is presented.<br \/>\n<a ref=\"magnificPopup\" href=\"\/wp-content\/uploads\/sites\/16\/widget_JSON.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-22943\" src=\"\/wp-content\/uploads\/sites\/16\/widget_JSON.png\" alt=\"\" width=\"525\" height=\"765\" \/><\/a><\/li>\n<li><strong>Dialog Task<\/strong> option allows you to trigger a task and present the output in the widget.\n<ol>\n<li><strong>Select Dialog Task<\/strong> dropdown will list all available tasks in the current bot, select one from the list.<br \/>\nNote: In the connected Dialog Task make sure to use a Message node to present the required information in the widget using any of the supported widget templates. <a href=\"\/docs\/bots\/sdks\/widget-sdk-message-formatting-and-templates\/\" target=\"_blank\" rel=\"noopener noreferrer\">See here for supported message templates<\/a><br \/>\nYou can use the icon next to the Dialog Task to open the Dialog Task for checking the task details like entity names etc..<br \/>\n<a ref=\"magnificPopup\" href=\"\/wp-content\/uploads\/sites\/16\/widget_dialog_open.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-22820\" src=\"\/wp-content\/uploads\/sites\/16\/widget_dialog_open.png\" alt=\"\" width=\"1366\" height=\"768\" \/><\/a><\/li>\n<li>Any Entities used by the selected Dialog Task needs to be pre-populated with values by mapping <strong>Entity Name<\/strong> with <strong>Entity Values<\/strong>.<\/li>\n<li>If the selected Dialog Task has any authorization profile defined, the same will be displayed here.<\/li>\n<\/ol>\n<\/li>\n<\/ul>\n<\/li>\n<li><strong>Save<\/strong> the Widget.<\/li>\n<\/ul>\n<\/li>\n<li>Once Saved the Widget will be <em>In Development<\/em> state. You can <strong>Edit<\/strong> or\u00a0<strong>Delete<\/strong> the Widget.<br \/>\n<a ref=\"magnificPopup\" href=\"\/wp-content\/uploads\/sites\/16\/widget_options.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-22818\" src=\"\/wp-content\/uploads\/sites\/16\/widget_options.png\" alt=\"\" width=\"440\" height=\"343\" \/><\/a><\/li>\n<li><strong>Edit<\/strong> widget, apart from allowing modification to any of the above fields, will allow you to <strong>Run &amp; Preview<\/strong> the widget.<br \/>\nYou can save the preview as the thumbnail display for the widget.<\/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<h1><span class=\"ez-toc-section\" id=\"Set_up_Panels\">Set up Panels<\/span><\/h1>\n<p>Panel refers to containers that hold one or more widgets. You can add an existing widget to the Panel or create new widgets.<\/p>\n<ol>\n<li>Use\u00a0<strong>Create Panel<\/strong>\u00a0button to create a panel.<br \/>\n<a ref=\"magnificPopup\" href=\"\/wp-content\/uploads\/sites\/16\/panel_creation.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-23224\" src=\"\/wp-content\/uploads\/sites\/16\/panel_creation.png\" alt=\"\" width=\"907\" height=\"477\" srcset=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/wp-content\/uploads\/sites\/16\/20221201095821\/panel_creation.png 907w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/wp-content\/uploads\/sites\/16\/20221201095821\/panel_creation-300x158.png 300w\" sizes=\"auto, (max-width: 907px) 100vw, 907px\" \/><\/a><\/li>\n<li>In the\u00a0<strong>New Panel<\/strong>\u00a0popover, enter\n<ul>\n<li><strong>Name<\/strong> of the Panel.<\/li>\n<li><strong>Display Name<\/strong> for the Panel.<\/li>\n<li><strong>Panel Icon<\/strong> to be displayed in the chat window (URL to the location of the image file).<\/li>\n<li><strong>Save<\/strong> the Panel.<\/li>\n<\/ul>\n<\/li>\n<li>Once Saved the Panel will be <em>In Development<\/em> state.<\/li>\n<li>Use the\u00a0<strong>Add Widget<\/strong> button to add widgets to the panel. Select widgets from the drop down list.<br \/>\n<a ref=\"magnificPopup\" href=\"\/wp-content\/uploads\/sites\/16\/panel_add_widget.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-22826\" src=\"\/wp-content\/uploads\/sites\/16\/panel_add_widget.png\" alt=\"\" width=\"909\" height=\"421\" \/><\/a><\/li>\n<li>You have the following options for a given Panel:\n<ul>\n<li><strong>Edit<\/strong> the panel details;<\/li>\n<li><strong>Panel Management<\/strong> to add existing widgets, create new widget or remove already added widgets from the Panel;<\/li>\n<li><strong>Test<\/strong> the individual Panel &#8211; this will open the talk to bot window along with the panel listing with the current panel active and data presented;<\/li>\n<li><strong>Delete<\/strong> the Panel.<\/li>\n<\/ul>\n<p><a ref=\"magnificPopup\" href=\"\/wp-content\/uploads\/sites\/16\/panel_options.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-22827\" src=\"\/wp-content\/uploads\/sites\/16\/panel_options.png\" alt=\"\" width=\"457\" height=\"317\" \/><\/a><\/li>\n<li><strong>Test<\/strong> panels will open the <strong>Talk to Bot<\/strong> window listing all the Panels with the chat window active. You can interact and test the Panels.<\/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<h1><span class=\"ez-toc-section\" id=\"Publish\">Publish<\/span><\/h1>\n<p>Publish your bot ensuring that the panels and widgets are selected.<\/p>\n<p><a ref=\"magnificPopup\" href=\"\/wp-content\/uploads\/sites\/16\/WP_publish.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-22846\" src=\"\/wp-content\/uploads\/sites\/16\/WP_publish.png\" alt=\"\" width=\"1366\" height=\"768\" \/><\/a><\/p>\n<p><a href=\"\/docs\/bots\/publish\/publishing-bot\/\" target=\"_blank\" rel=\"noopener noreferrer\">Refer here for details on Publishing a Bot<\/a><\/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<h1><span class=\"ez-toc-section\" id=\"Hosting\">Hosting<\/span><\/h1>\n<p>Widget SDK is provided by the platform for hosting and managing panels and widgets. You can choose to host your widgets independently or co-host them along with the WebSDK. You can download the SDKs from Kore.ai GitHub page. Do ensure to enable WidgetSDK as a channel. <a href=\"\/docs\/bots\/sdks\/kore-ai-widget-sdk-tutorial\/\" target=\"_blank\" rel=\"noopener noreferrer\">Refer to this tutorial on how<\/a>.<\/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><\/div><\/div><\/div><\/div><\/div><\/section>\n","protected":false},"excerpt":{"rendered":"Interactions with virtual agents are typically conducted using chat \/ messaging tools, voice channels or digital assistants. In the majority of the cases, the virtual agents respond to the user queries only when the users have requested for some information. This works well for conducting on-demand tasks that need user input for execution and the...","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[19],"tags":[],"class_list":["post-23187","post","type-post","status-publish","format-standard","hentry","category-bot-builder-tool"],"_links":{"self":[{"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/posts\/23187","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/comments?post=23187"}],"version-history":[{"count":12,"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/posts\/23187\/revisions"}],"predecessor-version":[{"id":23384,"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/posts\/23187\/revisions\/23384"}],"wp:attachment":[{"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/media?parent=23187"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/categories?post=23187"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/tags?post=23187"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}