Jump to Content
Public Sector

Simplified CCAI virtual agent management for business users

September 30, 2022
Jamar Thomas

Customer Engineer, Public Sector, Google Cloud

Rich Ellis

Global AppSheet CE Lead, Google Cloud

Maintaining CCAI virtual agent conversation content with AppSheet

Intelligent virtual agents are enabling agencies to address constituent questions and provide routine information at scale. But the value of these agents depends on the quality and quantity of information available. In times of crisis or busy periods, it can be challenging to stay on top of necessary content updates.  To keep information relevant and timely, government users and call center practitioners need to establish a governance process for content management. Specifically, agency leaders need a governance process that can manage workflow approvals and change tracking across large bodies of content at scale. One government leader has discovered that AppSheet can help with this challenge.

How the State of Hawaii Department of Human Services usesAppSheet for CCAI Content Management 

Mark Choi, Enterprise Technology Officer of the Hawaii Department of Human Services (DHS), shared an innovative solution to this problem with us. He's making it easier for both technical and non-technical staff to adopt conversational AI with AppSheet. Hawaii DHS plans to use AppSheet as a user-friendly front end to manage the conversational content that powers the virtual agent. Here’s why it works:

  • Simplified User Interface - Non-technical users do not need to interact with the Google Cloud Dialogflow console where the virtual agent content (like training phrases and responses)are stored. Although Dialogflow has an intuitive interface, it’s designed for developers and technical staff. AppSheet can provide a simplified, focused UI for non-technical staff. It also gives agencies the ability to customize the application via AppSheet’s no-code UI.

  • Content Level Access Controls - Access controls in Dialogflow are based on functionality. Agencies often need content-level access controls to ensure certain individuals or teams only see a subset of intents that are created in the virtual agent. For example, Health and Human Services agencies may want different team members to be responsible for Supplemental Nutrition Assistance specific content versus Children's Health Insurance content.

  • Content Governance - Content quality controls are important because intent responses are constituent-facing (chatbot or call center). AppSheet can create approval workflows before content is published. These workflows can incorporate reviewers, approvers, as well as content translators. Change tracking can be implemented to keep track of changes over time, to allow for auditing and reverts as needed.

Technical Approach to using Appsheet

AppSheet, a no-code platform, allows for integration with Dialogflow via APIs. These APIs are used to search, create, and update virtual agents, intents, and training phrases. AppSheet provides integration with Apigee, a Google Cloud GCP API Management platform.  Apigee serves as a proxy layer to Dialogflow, and appears as a Datasource within AppSheet.

Additional data sources, like CloudSQL or Google Sheets, can be leveraged to implement the functionality, such as tables for intent/role mappings or change tracking. The figure below outlines the responsibilities of each component in the solution.  

https://storage.googleapis.com/gweb-cloudblog-publish/images/Screenshot_2022-09-29_8.53.55_AM.max-1200x1200.png

CCAI Content Manager High Level Architecture


Appsheet is part of the Google Workspace portfolio, and Apigee provides a native integration into GCP.  A reference architecture of the approach is depicted and described below:

AppSheet - AppSheet serves as the mobile/desktop application UI content contributors use to manage conversation content.  In this reference architecture, Google Sheets is used as the data source backend, and “AppSheet in Gmail” is used to create dynamic emails for content workflow approvals.
  • Key entities defined in the data model include:

    • Agents - A table containing a list of virtual agents associated to the user

    • Intents - A table containing a list of intents associated to a virtual agent

    • Intent Role Mapping - A table containing a mapping between intents and associated content level roles

    • Triggers - A table containing a “refresh intents” boolean flag entry.  When AppSheet updates the “Intents” table, it sets the flag to “true” to trigger an AppSheet Automation that will invoke the Apigee API to persist the change in Dialogflow

    • Update Log - A table containing the update history.  To keep track of version history, AppSheet first inserts a record in the “update log” table before updating the “Intents” table

    • Roles - A table containing a list of content level access roles (i.e. Social Services Viewer, Social Services Editor)

    • Users - A table containing a list of users and assigned roles

Apigee - Apigee is used as the glue to the underlying Dialogflow APIs. This creates an AppSheet-compatible OpenAPI Specification, an API proxy with policies to transform Dialogflow responses into AppSheet friendly formats, and a GCP Authentication Shared Flow for authentication into GCP. Apigee could also extend to Google Translate API, for automatic translation of content. Key constructs defined in Apigee include Dialogflow Open API Specification, API Proxies and GCP Authentication Shared Flow.

Dialogflow -  Apigee invokes the Dialogflow APIs to access the virtual agents assigned to the user, including the underlying intents (training phrases and responses) that drive the conversation flow. The CCAI Content Manager works best with intents containing static responses, but can be extended to support dynamic responses.

To learn more about how to create a web-based application using Google’s no-code platform, visit our Google Workspace AppSheet solution page. You can also visit our Google Cloud Apigee solution page to learn how to create API proxies and our Contact Center AI solutions page to hear how conversational virtual agents can transform call centers.

Posted in