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

Si habilitas las notificaciones de Cloud Pub/Sub, recibirás una notificación cada vez que se complete un evento de Agent Assist. Puedes configurar el Asistente de agente para que envíe una notificación de todos los eventos o solo de los eventos especificados, incluidas las sugerencias del Asistente de agente, 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 específicos 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 las notificaciones de Cloud Pub/Sub con la consola de Agent Assist o llamando directamente a la API. Puedes configurar cada tipo de notificación por separado 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.

El siguiente ejemplo está configurado para habilitar 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
Establece SuggestionFeatureConfig.enableEventBasedSuggestion como verdadero para las funciones seleccionadas

Funciones compatibles: ARTICLE_SUGGESTION, FAQ y DIALOGFLOW_ASSIST
life_cycle_event Cuando se abre o cierra la conversación ConversationProfile.notificationConfig
new_message_event Cuando aparece una nueva transcripción de mensaje o expresión 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 activa esa notificación de Cloud Pub/Sub.

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