Habilitar las notificaciones de Cloud Pub/Sub para los eventos de Asistente de agente de CCAI

Si habilitas las notificaciones de Cloud Pub/Sub, recibirás una notificación cada vez que se complete un evento de Asistente. Puedes configurar Asistente para agentes para que envíe una notificación de todos los eventos o solo de los que especifiques, como las sugerencias de Asistente para agentes, la información del ciclo de vida de la conversación y las transcripciones en directo.

Requisitos previos

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

Habilitar notificaciones de Cloud Pub/Sub

Puedes configurar Asistente para enviar una notificación para todos los eventos o para eventos específicos de 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. Puedes configurar las notificaciones de Cloud Pub/Sub mediante la consola de Asistente o llamando directamente a la API. Puedes configurar cada tipo de notificación por separado con los temas que hayas creado.

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

Habilitar las notificaciones de Cloud Pub/Sub mediante la consola de Agent Assist

Cuando creas un perfil de conversación con la consola Asistente, puedes seleccionar los tipos de notificaciones que quieres recibir en función de los temas que hayas creado:

Habilitar notificaciones de Cloud Pub/Sub mediante la API

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

En el siguiente ejemplo, se habilita todas las notificaciones de Cloud Pub/Sub que coincidan con un TOPIC_ID designado.

{
  "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"
  },
  "newRecognitionResultNotificationConfig": {
    "topic": "projects/PROJECT_ID/topics/NEW_RECOGNITION_RESULT_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
Defina SuggestionFeatureConfig.enableEventBasedSuggestion en "true" para las funciones seleccionadas

Funciones admitidas: ARTICLE_SUGGESTION, FAQ y DIALOGFLOW_ASSIST
life_cycle_event Cuando se abre o se cierra una conversación ConversationProfile.notificationConfig
new_message_event Cuando aparece la transcripción de un mensaje o una frase nuevos ConversationProfile.newMessageEventNotificationConfig
new_recognition_result_event Cuando hay una transcripción intermedia disponible ConversationProfile.newRecognitionResultNotificationConfig

Contenido del mensaje de Cloud Pub/Sub

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

Notificación Datos del mensaje Ejemplo de datos de mensaje
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
}
new_recognition_result_event ConversationEvent {
"conversation": "projects/PROJECT_ID/locations/LOCATION/conversations/CONVERSATION_ID",
"type": "NEW_RECOGNITION_RESULT",
"newRecognitionResultPayload": StreamingRecognitionResult
}