Habilita las notificaciones de Cloud Pub/Sub para los eventos de CCAI Agent Assist

Si habilitas las notificaciones de Cloud Pub/Sub, puedes recibir una notificación cada vez que se completa un evento de Agent Assist. Puedes configurar Agent Assist para que envíe una notificación para todos los eventos o solo para eventos específicos, incluidas las sugerencias de Agent Assist, la información del ciclo de vida de la conversación y las transcripciones en vivo.

Requisitos previos

  1. Habilita la API de Dialogflow.
  2. Sigue las instrucciones para crear un tema de Cloud Pub/Sub.

Habilitar las notificaciones de Cloud Pub/Sub

Puedes configurar Agent Assist para que envíe una notificación para todos los eventos o para eventos especificados en tu perfil de conversación.

Un perfil de conversación configura un conjunto de parámetros que controlan las sugerencias o notificaciones que se le hacen a un agente durante una conversación. Tienes la opción de configurar notificaciones de Cloud Pub/Sub con la consola de Agent Assist o llamando directamente a la API. Puedes configurar cada tipo de notificación separadamente con los temas que creaste.

Para obtener más detalles sobre los parámetros de configuración de Cloud Pub/Sub, consulta la documentación de referencia de conversationProfile.

Habilita las notificaciones de Cloud Pub/Sub con la consola de Agent Assist

Cuando creas un perfil de conversación nuevo con la consola de Agent Assist, puedes seleccionar los tipos de notificaciones que deseas recibir con los temas que creaste:

Habilita las notificaciones de Cloud Pub/Sub con la API

Si prefieres llamar a la API directamente para crear o actualizar un perfil de conversación, consulta esta sección para conocer las ubicaciones que debes configurar en el recurso ConversationProfile.

En el siguiente ejemplo, se configuran todas las notificaciones de Cloud Pub/Sub que coinciden con un TOPIC_ID designado para habilitarlas.

{
  "name": "projects/PROJECT_ID/locations/global/conversationProfiles/CONVERSATION_PROFILE_ID",
  "displayName": "CONVERSATION_PROFILE_NAME",
  "automatedAgentConfig": {
  },
  "humanAgentAssistantConfig": {
    "notificationConfig": {
      "topic": "projects/PROJECT_ID/topics/FEATURE_SUGGESTION_TOPIC_ID",
      "messageFormat": "JSON"
    },
    "humanAgentSuggestionConfig": {
      "featureConfigs": [{
        "enableEventBasedSuggestion": true,
        "suggestionFeature": {
          "type": "ARTICLE_SUGGESTION"
        },
        "conversationModelConfig": {
        }
      }]
    },
    "messageAnalysisConfig": {
    }
  },
  "notificationConfig": {
    "topic": "projects/PROJECT_ID/topics/CONVERSARION_LIFECYCLE_TOPIC_ID",
    "messageFormat": "JSON"
  },
  "newMessageEventNotificationConfig": {
    "topic": "projects/PROJECT_ID/topics/LIVE_TRANSCRIPT_TOPIC_ID",
    "messageFormat": "JSON"
  },
  "languageCode": "en-US"
}

Configuración del mensaje de Cloud Pub/Sub

Notificación Activador Configuración en ConversationProfile
suggestion_event Cuando Agent Assist genera una sugerencia ConversationProfile.humanAgentAssistantConfig.notificationConfig
Establece SuggestionFeatureConfig.enableEventBasedSuggestion en verdadero para las funciones seleccionadas

Funciones admitidas: ARTICLE_SUGGESTION, FAQ Y DIALOGFLOW_ASSIST
life_cycle_event Cuando se abre o cierra una conversación ConversationProfile.notificationConfig
new_message_event Cuando aparece una transcripción de mensaje o de enunciado nueva ConversationProfile.newMessageEventNotificationConfig

Contenido del mensaje de Cloud Pub/Sub

El contenido del mensaje de Cloud Pub/Sub depende del evento que activa esa notificación.

Notificación Datos de mensajes Ejemplo de datos de mensajes
suggestion_event HumanAgentAssistantEvent {
"conversation": "projects/PROJECT_ID/locations/LOCATION/conversations/CONVERSATION_ID",
"participant": "projects/PROJECT_ID/locations/LOCATION/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID",
"suggestionResults": [SuggestionResult]
}
life_cycle_event ConversationEvent {
"conversation": "projects/PROJECT_ID/locations/LOCATION/conversations/CONVERSATION_ID",
"type": "CONVERSATION_STARTED"
}
new_message_event ConversationEvent {
"conversation": "projects/PROJECT_ID/locations/LOCATION/conversations/CONVERSATION_ID",
"type": "NEW_MESSAGE",
"newMessagePayload": Message
}