Utilice los puntos de extensión para personalizar el clic para marcar
Puede utilizar los puntos de extensión para personalizar el comportamiento de hacer clic para marcar en Genesys Cloud para Salesforce. Los puntos de extensión utilizan el lenguaje de programación Salesforce Apex.
Prerrequisitos
- Una versión del paquete administrado que incluye la sección Configuración de punto de extensión. Para más información, ver Configurar puntos de extensión.
En Salesforce, cree un solo archivo Apex con una clase Apex que implemente la purecloud.CTIExtension.ClickToDial interfaz. Defina la clase Apex como global para que la integración pueda llamar al código.
interfaz purecloud.CTIExtension.ClickToDial
Contiene una firma de método que puede definir para personalizar la funcionalidad de clic para marcar en Genesys Cloud para Salesforce.
Uso
Para definir cómo funciona la funcionalidad de clic para marcar, utilice la firma del método en la interfaz purecloud.CTIExtension.ClickToDial.
método onClickToDial
Inicia una llamada telefónica o un mensaje SMS.
Cuando Salesforce alerta al cliente sobre un evento de clic para marcar, el cliente realiza el evento de clic para marcar según los parámetros de su código Apex. El método puede devolver datos que cambian el comportamiento de clic para marcar predeterminado.
Si el código Apex desencadena una excepción, la integración realiza el comportamiento predeterminado de clic para marcar. Si no se devuelve ningún valor, la integración suprime el comportamiento de hacer clic para marcar.
Propiedades de entrada
Las siguientes propiedades se incluyen en los datos JSON que se pasan al método.
Nombre | Tipo de datos | Descripción | Notas |
---|---|---|---|
número | Cuerda | Número de teléfono al que llama la integración. | |
objeto | Cuerda | Tipo de objeto, como un contacto o una cuenta en Salesforce. | |
objectId | Cuerda | ID de un objeto relevante, como un contacto o una cuenta, para asociarlo automáticamente con una actividad. | objectId es solo para un solo registro. |
nombre del objeto | Cuerda | Nombre del registro en Salesforce. |
Propiedades de salida
Las siguientes propiedades son compatibles con los datos JSON devueltos por el método.
Nombre | Tipo de datos | Descripción | Notas |
---|---|---|---|
número | Cuerda | Ver Propiedades de entrada mesa. | |
objeto | Cuerda | Ver Propiedades de entrada mesa. | |
objectId | Cuerda | Ver Propiedades de entrada mesa. | |
nombre del objeto | Cuerda | Ver Propiedades de entrada mesa. | |
atributos | Objeto | Pares de atributos clave-valor para agregar a la interacción. | |
queueId | Cuerda | ID de la cola para realizar una llamada en nombre de. | |
autoPlace | Booleano | La integración realiza una llamada automáticamente (verdadero), o la integración completa el cuadro Nombre o Número con el número de teléfono (falso). | |
escribe | Cuerda | Tipo de interacción. |
Valores válidos: llamar, sms. Si no escribe se proporciona, el valor predeterminado es llamar. |
callerIdName | Cuerda | Nombre que se muestra a los destinatarios de sus llamadas telefónicas. | |
identificador de llamadas | Cuerda | Número de teléfono que se muestra a los destinatarios de sus llamadas telefónicas. | |
asociaciones | Formación | Lista de registros de Salesforce para agregar al cuadro Nombre o Relacionado con en el cliente. | |
utilizationLabelId | Cuerda | Categoriza la conversación. Los ajustes de utilización máxima pueden configurarse a nivel de etiqueta. | El agente debe estar en cola o el campo queueId debe estar rellenado para que se muestre la etiqueta. |
Para más información, ver Clic para marcar, Configurar clic para marcar, y Crear clic para marcar en páginas personalizadas de Visualforce.
Ejemplo
- Defina la clase Apex como global para que la integración pueda llamar al código.
- Si implementa más de un punto de extensión (o interfaz), colóquelos todos en el mismo archivo Apex.
global class MyCTIExtensions implements purecloud.CTIExtension.ClickToDial {
public String onClickToDial(String data) {
// Example: Specify On Behalf of Queue, Caller ID, Utilization Label, and Name for click-to-dial.
Map<String, Object> clickToDialData = (Map<String, Object>) JSON.deserializeUntyped(data);
clickToDialData.put('queueId', '04a183b6-de9e-4c01-9e88-eabxxxxxad0d');
clickToDialData.put('callerIdName', 'John Smith');
clickToDialData.put('callerId', '+13175550123');
clickToDialData.put('utilizationLabelId', '62f1e0d5-cb8e-4cf7-9049-53dfb00d1983');
return JSON.serialize(clickToDialData);
}
}
Para más información, ver Puntos de extensión en Genesys Cloud para Salesforce.
Para obtener más información sobre la integración, consulte Acerca de Genesys Cloud para Salesforce.