Adición de flujos de diálogo personalizados para integraciones
Utilice el editor de JSON del diálogo para acceder a información enviada por la integración de la conversación web.
A partir de la versión de API 2020-04-01, el objeto context que se pasa como parte de la solicitud de API v2 /message contiene un objeto integrations. Este objeto permite pasar información específica
de un tipo de integración del contexto. Para obtener más información, consulte Variables de contexto.
El objeto integrations solo está disponible en la API v2 de la versión 2020-04-01 o posterior.
Para aprovechar el objeto context.integrations, puede crear variables de contexto que se denominen de la siguiente manera para obtener y establecer valores para distintas integraciones:
| Tipo de integración | Sintaxis de variable de contexto |
|---|---|
| Teléfono | $integrations.voice_telephony |
| Servicio de atención al cliente Salesforce de la conversación web | $integrations.salesforce |
| SMS con Twilio | $integrations.text_messaging |
| Conversación web (y vista previa del asistente) | $integrations.chat |
| Servicio de atención al cliente Zendesk de la conversación web | $integrations.zendesk |
Creación de flujo de diálogo específico de la integración
Cree un único diálogo que esté optimizado para utilizar las mejores características que ofrece cada canal o interfaz de cliente en la que se despliega.
Puede personalizar la conversación de las formas siguientes:
-
Para añadir una rama de diálogo completa que solo se procese con un tipo de integración específico, añada la variable de contexto de tipo de integración adecuada, como por ejemplo
$integrations.chat, al campo Si el asistente reconoce del nodo raíz de diálogo. -
Para añadir un único nodo de diálogo que solo se procese con un tipo de integración específico, añada la variable de contexto de tipo de integración adecuada, como, por ejemplo,
$integrations.zendesk, en el campo Si el asistente reconoce del nodo hijo del diálogo. -
Para añadir respuestas ligeramente distintas para un solo único nodo diálogo basado en el tipo de integración, realice los pasos siguientes:
-
En la vista de edición del nodo, pulse Personalizar y establezca el conmutador Varias respuestas condicionadas en Activado. Pulse Aplicar.
-
En la sección de respuesta del nodo de diálogo, añada la condición adecuada y la respuesta correspondiente para cada tipo de respuesta personalizado.
Los ejemplos siguientes muestran cómo especificar un enlace de hipertexto en el mejor formato para la integración donde se visualiza la respuesta de texto. Para la integración Conversación web, que soporte el formato Markdown, puede incluir una etiqueta de enlace en el texto de respuesta para que el aspecto de la respuesta sea más agradable. Para la integración de SMS con Twilio, puede saltarse el formato que tiene sentido en una página web y añadir el URL directo.
Respuestas condicionadas personalizadas Tipo de integración Condición Respuesta de texto de ejemplo SMS con Twilio $integrations.text_messagingFor more information, go to https://www.ibm.com.Conversación web $integrations.chatFor more information, go to [the ibm.com site](https://www.ibm.com).Respuesta para mostrar si no se cumplen otras condiciones. trueFor more information, go to ibm.com.
-
Con frecuencia, los tipos de respuesta enriquecidos se comportan de manera distinta cuando se visualizan en distintas integraciones incorporadas o en la vista previa del asistente.
Si necesita proporcionar respuestas personalizadas para diferentes canales, pero no necesita modificar el flujo de diálogo en función de la integración que se utiliza, también puede utilizar la matriz channels para orientar las
respuestas a integraciones específicas.
Conversación web: Acceso a datos confidenciales
Si habilita la seguridad para la conversación web, puede configurar la implementación de su conversación web para que envía datos cifrados al diálogo. Los datos de carga útil que se envían desde la conversación web se almacenan en una variable
de contexto privada denominada context.integrations.chat.private.user_payload. No se envían variables privadas desde el diálogo a las integraciones. Para obtener más información sobre cómo pasar datos, consulte Cifrado de datos confidenciales en la conversación web.
Para acceder a los datos de carga útil, puede hacer referencia al objeto context.integrations.chat.private.user_payload en la condición del nodo de diálogo.
Debe conocer la estructura del objeto JSON que se envía en la carga útil.
Por ejemplo, si ha pasado el valor "mvp:true" en la carga útil de JSON, puede añadir un flujo de diálogo que busque este valor para definir una respuesta dirigida únicamente a clientes VIP. Añada un nodo de diálogo con
una condición como la siguiente:
| Campo | Valor |
|---|---|
| Si el asistente reconoce | $integrations.chat.private.user_payload.mvp |
| El asistente responde | I can help you reserve box seats at the upcoming conference! |
Conversación web: Acceso a la información del navegador web
Cuando utilice la integración de conversación web, la información sobre el navegador web que el cliente está utilizando para acceder a la conversación web se recopila y almacena automáticamente. La información se almacena en el objeto context.integrations.chat.browser_info.
Puede diseñar el diálogo para aprovechar los detalles sobre el navegador web en uso. Las siguientes propiedades se obtienen del objeto window que representa la ventana en la que se ejecuta la conversación web:
browser_name: nombre del navegador, como, por ejemplo,chrome,edgeofirefox.browser_version: navegador del navegador, como, por ejemplo,80.0.0.browser_OS: el sistema operativo del sistema del cliente, como, por ejemplo,Mac OS.language: el código de entorno local predeterminado del navegador, como, por ejemplo,en-US.page_url: URL completo de la página web en la que la conversación web está incorporada. Por ejemplo:https://www.example.com/productsscreen_resolution: especifica la altura y anchura de la ventana del navegador en la que se visualiza la página web. Por ejemplo:width: 1440, height: 900user_agent: Contenido de la cabecera de solicitud User-Agent. Por ejemplo:Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:80.0) Gecko/20100101 Firefox/80.0client_ip_address: dirección IP del sistema del cliente. Por ejemplo:183.49.92.42
Ejemplo: Utilización de información de URL de página en el diálogo
Puede incluir la conversación web en varias páginas del sitio web. Quizás desee direccionar las transferencias de conversación desde la conversación web a distintos agentes de Salesforce basándose en la página desde la que el cliente solicita
hablar con alguien. Si el cliente está en la página de planes de seguro de su sitio web (https://www.example.com/insurance.html), desea direccionarlos a agentes expertos en los planes de seguro de su empresa. Si el cliente está
en la página web de inversiones (https://www.example.com/invest.html), desea direccionarlos a agentes que sean expertos en las oportunidades de inversión de su empresa. Puede añadir varias respuestas condicionadas al nodo de
diálogo en el que tiene lugar la transferencia y añadir lógica como la siguiente:
Respuesta condicionada 1
- Condición:
$integrations.chat.browser_info.page_url.contains('insurance.html') - Tipo de respuesta: Conectar con un agente humano
- ID de botón:
Z23453e25vv(El botón que lleva hasta la cola del agente de expertos en seguros)
Respuesta condicionada 2
- Condición:
$integrations.chat.browser_info.page_url.contains('invest.html') - Tipo de respuesta: Conectar con un agente humano
- ID de botón:
Z23453j24ty(el botón que lleva hasta la cola del agente experto de inversión)
Conversación web: Reutilización de una JWT para la autenticación de webhooks
Puede utilizar la misma señal web de JSON (JWT - JSON Web Token) que se ha utilizado para proteger la conversación web para autenticar las llamadas de webhook. Si especifica una señal en la propiedad identityToken al añadir la conversación
web a su página web, la señal se almacena en una variable privada denominada context.integrations.chat.private.jwt. Para obtener más información sobre cómo pasar un JWT, consulte Habilitación de la seguridad de conversación web.
-
En el diálogo, abra Webhooks.
-
Pulse Añadir cabecera.
-
En Nombre de cabecera, especifique cualquier nombre, como por ejemplo
JWT. -
En el campo Valor de cabecera, añada
$integrations.chat.private.jwt.