Utilisez les points d'extension pour personnaliser l'affichage de l'écran
Vous pouvez utiliser les points d’extension pour personnaliser le comportement de la fenêtre contextuelle dans Genesys Cloud for Salesforce. Les points d'extension utilisent le langage de programmation Salesforce Apex.
Conditions préalables
Dans Salesforce, créez un seul fichier Apex avec une classe Apex qui implémente le purecloud.CTIExtension.ScreenPop interface. Définissez la classe Apex comme globale afin que le code puisse être appelé par l'intégration.
Interface purecloud.CTIExtension.ScreenPop
Contient une signature de méthode que vous pouvez définir pour personnaliser la fonctionnalité fenêtre contextuelle dans Genesys Cloud for Salesforce.
Utilisation
Utilisez la signature de méthode dans le purecloud.CTIExtension.ScreenPop pour définir le fonctionnement de la fonctionnalité d'affichage de l'écran.
méthode onScreenPop
Utilisé pour piloter la logique de pop d'écran.
Cette méthode est appelée pour une interaction d'alerte entrante. onScreenPop n'est appelé qu'une seule fois pour chaque agent pour chaque interaction d'alerte. La méthode peut renvoyer des données qui modifient le comportement par défaut de l'affichage de l'écran.
Si le code Apex déclenche une exception, l'intégration exécute le comportement de survol d'écran par défaut. Si aucune valeur n'est renvoyée, l'intégration supprime le comportement de surgissement de l'écran.
Propriété d’entrée
Les propriétés suivantes sont incluses dans les données JSON transmises à la méthode.
Nom | Type de données | Description | Notes |
---|---|---|---|
searchValue | Chaîne | Valeur de recherche. | Exemples de règles : adresse e-mail (pour les interactions par chat et e-mail), numéro de téléphone (pour les interactions vocales et SMS). |
interaction | Objet | Objet de données qui représente les données d'interaction. | Pour plus d'informations, voir le format de l'objet de données dans Condensed conversation information. |
Propriété de sortie
Nom | Type de données | Description | Notes |
---|---|---|---|
url | Chaîne | URL d'une page dans Salesforce. | Il fenêtre contextuelle peut s’agit peut-être d’une page standard, Salesforce d’une Architect page Visualforce ou d’une nouvelle page d’enregistrement avec des données pré-remplies d’un flux. |
searchValue | Chaîne | Valeur recherchée dans les enregistrements Salesforce. |
Il peut s'agir d'un numéro de dossier, d'un numéro de téléphone, d'un nom de contact ou d'autres éléments. Pour plus d’informations, consultez la section Paramètres de disposition du téléphone logiciel dans Écran contextuel dans Genesys Cloud for Salesforce. |
defaultScreenPop | Booléen | Effectue un affichage d'écran par défaut (true) ou n'exécute pas d'affichage d'écran par défaut (faux). |
Pour plus d’informations, consultez la section Comportement par défaut de la fenêtre contextuelle dans Écran contextuel dans Genesys Cloud for Salesforce. |
Pour plus d’informations, voir Pop écran PureCloud pourSalesforce.
Exemple
- Définissez la classe Apex comme globale afin que le code puisse être appelé par l'intégration.
- Si vous implémentez plusieurs points d'extension (ou interfaces), placez-les tous dans le même fichier Apex.
global class MyCTIExtensions implements purecloud.CTIExtension.ScreenPop {
public String onScreenPop(String data) {
// Example: Find a recent Case record by phone number. if not found, fall back to default screen pop behavior.
Map<String, Object> screenPopData = (Map<String, Object>) JSON.deserializeUntyped(data);
Map<String, Object> dataToReturn = new Map<String, Object>();
String phoneNumber = (String) screenPopData.get('searchValue');
if (String.isNotBlank(phoneNumber)) {
List cases = [SELECT Id FROM Case WHERE ContactPhone =: phoneNumber ORDER BY LastModifiedDate DESC LIMIT 1];
if (cases.size() > 0) {
dataToReturn.put('url', cases.get(0).Id);
return JSON.serialize(dataToReturn);
}
}
dataToReturn.put('defaultScreenPop', true);
return JSON.serialize(dataToReturn);
}
}
Pour plus d’informations, consultez Points d’extension dans Genesys Cloud for Salesforce.
Pour plus d’informations sur l’intégration, consultezÀ propos de Genesys Cloud for Salesforce.