Créer cliquez pour appeler sur des pages Visualforce personnalisées
L’intégration cliquez pour appeler par défaut permet fonctionnalité sur Salesforce les pages, telles que les pages de contact ou de compte. Lorsqu’un agent clique sur par défaut un numéro de téléphone sur Salesforce les pages, le client compose automatiquement le numéro de téléphone ou remplit automatiquement la boîte de nom ou de numéro. (Le cliquez pour appeler comportement dépend de la sélection de l’agent sous les paramètres de file d’attente. Pour plus d’informations, voir configurercliquez pour appeler.) Le client remplit le Nom et les boîtes Salesforce liées avec les objets pertinents de ces pages.
Vous pouvez cliquez pour appeler également fournir fonctionnalité sur les cliquez pour appeler pages Visualforce personnalisées en ajoutant le composant à ces pages.
Ce qui suit est cliquez pour appeler un exemple qui utilise le composant Salesforce sur une page Visualforce et tire les données de l’utilisation d’un contrôleur Apex. Pour plus d’informations, consultez soutien : clickToDial et Premiers pas avec Apex JSON dans la documentation Salesforce.
Composant Click-to-dial
Le composant cliquez pour appeler ajoute la page cliquez pour appeler fonctionnalité au formatYYZ à une page Visualforce personnalisée et vous permet d’affecter des valeurs au entityId et params les attributs. Ces deux attributs tirent les données du contrôleur Apex pour remplir le nom et les boîtes liées aux boîtes dans le client. le entityId et params Les attributs associent également automatiquement les zones Nom et Associé à à une activité sur une page Salesforce.
Attribut | Obligatoire / facultatif | Description | Notes |
---|---|---|---|
numéro | Requis | Numéro à composer. | |
entityId | Facultatif | ID d’un objet pertinent, tel qu’un contact ou un compte, à associer automatiquement à une activité. | le entityId attribut ne concerne qu’un seul enregistrement. Pour ajouter des enregistrements supplémentaires à Nom et lié à dans les journaux d’interaction, utilisez la commande les associations propriété dans l’objet params. |
params | Facultatif | Chaîne JSON pour des données supplémentaires pour cliquez pour appeler. Voir objet params. |
<apex:page standardController="Account" extensions="CustomClickToDialController" showHeader="true">
<support:clickToDial number="3172222222" entityId="{!id}" params="{!json}"/>
</apex:page>
objet params
Utilisez le format suivant pour le params objet. L’API Salesforce JSON.serialize utilise ce format pour les associations pour sérialiser des objets tels que contact et compte.
{
autoPlace: true,
callerId: '317-555-0123',
callerIdName: 'Some Name Here',
interactionAttributes: {
CustomAttribute: 'Data here'
},
interactionType: 'call',
queueId: 'Queue id GUID',
associations: [
{
Id: '00000000000',
Name: 'AccountName',
attributes: {
type: 'Account'
}
},
{
Id: '11111111111',
Name: 'John Smith',
attributes: {
type: 'Contact'
}
}
]
}
Pour plus d’informations sur ce composant, voir support :clickToDial dans Salesforce la documentation.
Contrôleur Apex
Le contrôleur Apex effectue les actions suivantes :
- Récupère les données Salesforce backend de.
- Génére des chaînes Salesforce JSON à l’aide de l’API JSON.serialize.
- Ajoute ces données comme les valeurs pour l’entitéId cliquez pour appeler et params attributs dans le composant sur les pages Visualforce personnalisées.
- Renvoie les enregistrements Who / What.
public class CustomClickToDialController {
public CustomClickToDialController(ApexPages.StandardController stdController){}
// Returns an ID of a Who/What record (for the entityId attribute).
public String getId(){
Contact contact = [SELECT id, name FROM Contact LIMIT 1];
return contact.id;
}
// Returns a JSON string representation of Who/What record(s) (for the params attribute).
// It could be a single Who/What record or a list of Who/What records.
public String getJson(){
List accountList = [Select id, name FROM Account LIMIT 1];
String accounts = JSON.serialize(accountList);
JSONGenerator gen = JSON.createGenerator(false);
gen.writeStartObject();
gen.writeStringField('associations', accounts);
gen.writeStringField('callerId', '317-555-0123');
gen.writeStringField('callerIdName', 'Some Name Here');
gen.writeStringField('interactionType', 'call');
gen.writeBooleanField('autoPlace', true);
gen.writeStringField('queueId', 'Queue id GUID);
gen.writeFieldName('interactionAttributes');
gen.writeStartObject();
gen.writeStringField('CustomAttribute', 'Data here');
gen.writeEndObject();
gen.writeEndObject();
return gen.getAsString();
}
}
Tous les enregistrements qui sont retournés apparaissent dans la liste de noms dans le journal d’interaction. Si un seul enregistrement est retourné, l’enregistrement est auto-associé à la boîte De nom dans le journal d’interaction.
Tous les documents retournés Quels enregistrements apparaissent dans la liste Relative à la liste dans le journal d’interaction. Si un seul Quel enregistrement est retourné, l’enregistrement est auto-associé à la boîte Related To dans le journal d’interaction.
Pour plus d’informations, voir Cliquer sur le cadran et configurercliquez pour appeler.
Pour plus d’informations sur l’intégration, consultezÀ propos de Genesys Cloud for Salesforce.