CustomEvent

This help page is for Desktop Studio. This information is also available for Studio.

Crea un evento personalizado a través del cual puedes enviar datos únicos como una cadena a un agente específico. Se pueden generar en respuesta a una acción relacionada con el agente, como OnAnswer. También se pueden generar antes de que se asigne un agente, siempre que TargetAgent se haya rellenado en las propiedades de esta acción. El evento personalizado generado entra a la transmisión del evento del agente. Para recibir un evento personalizado, únase a la sesión del agente para escuchar los eventos, por ejemplo, usando el paradigma obtener-el-siguiente-evento. Los eventos personalizados son útiles si los eventos existentes no terminan de encajar en su caso de uso.

Tipos de scripts compatibles

The icon for a Generic script type - a rectangle with < and > symbols inside it.

The icon for the Email script type - a large @ symbol in a diamond.

The icon for the Chat script type - a chat bubble with an ellipsis inside (...), in a diamond shape.

The icon for the Phone script type - an old-style phone handset with curved lines indicating sound coming out of it.

The icon for the Voicemail script type - a symbol that looks like a cassette tape - two circles sitting on a horizontal line.

The icon for the Work Item script type-a piece of paper with one corner folded down and a bullet list on it.

The icon for the SMS script type - a smart phone with a chat bubble coming out of it.

Generic

Email Chat Phone Voicemail Work Item SMS

Propiedades de entrada

Estas propiedades definen los datos que utiliza la acción al ejecutarse.

Las propiedad

Descripción

Caption

Ingrese una frase corta que identifique de forma única esta acción en el script. La leyenda aparece en el lienzo del script debajo del ícono de acción. The default is the action name.

TargetAgent

El ID del agente al que está destinado el evento personalizado. El script de Studio rellena la variable AgentId después del evento OnAnswer para una llamada entrante. El evento personalizado sólo se ejecuta cuando se rellena AgentId. Si desea enviar un evento personalizado antes de la asignación del agente, debe proporcionar un ID de agente en el campo TargetAgent.

EventName

Introduce el nombre que le das al evento personalizado. Múltiples eventos con el mismo nombre se sobrescriben entre sí. Solo se conserva el nombre del evento más reciente. Este campo distingue entre mayúsculas y minúsculas.

PersistInMemory

Si un evento se ejecuta cuando un agente está desconectado y usted desea que reciba el evento cuando vuelva a iniciar sesión, defina este valor como true. De lo contrario, defínalo como false.

Data

Carga útil de datos para este evento.

Condiciones de la rama de resultados

Las condiciones de las ramas de resultados le permiten crear ramas en su script para manejar diferentes resultados cuando se ejecute una acción.

Condición

Descripción

Default Recorrido a menos que el script cumple una condición que requiere uno de los otros poderes. También se considera si no están definidas las demás ramas de la acción.
OnAgentNotConnected Ruta tomada si el agente de destino no está conectado.

Ejemplo de secuencia de comandos

Este es un ejemplo para demostrar cómo se puede utilizar esta acción en los scripts. No pretende ser un script completo. Es posible que se requiera programación adicional.

Ejemplo de script

En este script de ejemplo, las ramas ejemplifican tres escenarios en los que usted generaría un evento personalizado:

  • Rama 1: Iniciar y recibir un evento personalizado antes de cualquier interacción del agente. El evento personalizado lo recibe el bucle de get-custom-event cuando un contacto pulsa 1.

  • Rama 2: Iniciar y recibir un evento personalizado antes de cualquier interacción del agente. El evento personalizado lo recibe el bucle de get-custom-event cuando un contacto pulsa 2. Además, se genera otro evento personalizado después de que se activa Reqagent y antes de que el agente responda la llamada.

  • Ramas 2 y 3: Iniciar y recibir un evento personalizado después de que el agente responde la llamada.

Crear eventos personalizados mediante API

You can also create a custom event with the custom-event API . This may be necessary if the CustomEvent action does not meet the requirements of your use case. Because services typically already consume the agent event stream, this can be a convenient method of sharing data without needing to implement your own custom endpoint. This is particularly relevant for small scope apps or microservices.

Using the API is similar to the Studio action, except you use parameters instead of properties. Using NiCE CXone APIs also requires that you implement API authentication. When using the API, be sure to:

  • Name the event.

  • Assign a target agent in the agentId parameter or Target Agent property of the Studio action. You can use the ID from the AgentId variable. This is automatically populated after the OnAnswer event. If you want to send a custom event before an agent is assigned, you must still supply an agent ID.
  • Set the persistInMemory field. If the agent is logged out, this determines whether they will receive the event after logging back in.
  • Populate the Data field, which is the payload as a string.
  • Consume the custom event with the get-next-event API or Get Next Event Studio action.

Below is an example of creating a custom event via API:

Example curl:

curl -X PUT "https://api-$AREA.$DOMAIN/incontactapi/services/v30.0/agents/$AGENT_ID/custom-event?eventName=From_Postman&persistInMemory=false&data=Sent_from_Postman"

Request Type: PUT

Fields:

Parameter Type Details
agentId String The agent ID value that identifies the target agent.
eventName String The name of the event. This must be used by any consumers of the event.
persistInMemory Boolean If the agent identified by agentId is not currently logged in, the event will either be ignored or remain for the agent once they log back in.
data String Any string of data.