Installation & Configuration
Éditions Supportées
Cette application fonctionne avec les éditions Salesforce suivantes :
- Enterprise Edition
- Unlimited Edition
- Developer Edition
- Performance Edition
Non Supportées
- Group Edition
- Essentials Edition
- Professional Edition (sauf si achetée en tant qu'add-on)
Note : Veuillez consulter ce lien vers la documentation Salesforce pour plus de détails.
Dépendances
- Salesforce Messaging for Web Deployment
- Salesforce CLI
- Visual Studio Code
- Extensions Salesforce pour Visual Studio Code, incluant l'extension Lightning Web Components
Options d'Installation
Option 1 : Installation via Package Déverrouillé
Connectez-vous à votre org
Assurez-vous d'être connecté à votre organisation Salesforce avec les permissions administratives appropriées.
Installez le package
Cliquez sur ce lien pour installer le package déverrouillé dans votre org.
Sélectionnez les options d'installation
Sélectionnez "Installer pour Tous les Utilisateurs" ou votre option d'installation préférée.
Configurez le package
Après l'installation du package, vous devez configurer les Named Credentials et les paramètres Custom Metadata avec le client_id, client_secret et les URLs fournis par Optave. Suivez les étapes de la section Prérequis ci-dessous pour compléter cette configuration.
Note : L'installation du package peut prendre jusqu'à 2 heures. Vous recevrez un email de Salesforce lorsque l'installation sera terminée.
Option 2 : Installation Manuelle via Code Source
Prérequis
Avant de configurer le projet Salesforce, assurez-vous de compléter ces prérequis :
Configuration des Named Credentials et External Credentials
Les External Credentials seront utilisées conjointement avec les Named Credential pour authentifier et autoriser les appels API.
Pour configurer les External Credentials :
- Naviguez vers Configuration dans Salesforce.
- Dans la boîte de recherche rapide, entrez "Named Credentials" et sélectionnez-le.
- Sélectionnez l'onglet External Credentials.
- Cliquez sur Nouveau.
- Fournissez un Label et un Nom pour le Named Credential.
- Sélectionnez Personnalisé pour le Protocole d'Authentification.
- Créez un Nouveau Principal.
- Fournissez un Nom de Paramètre et commencez à Ajouter des Paramètres.
- Pour chaque Paramètre Ajouté, fournissez un Nom et la Valeur du Paramètre (ex. client_id, client_secret)
- Cliquez sur Nouveau pour les En-têtes Personnalisés et fournissez les informations suivantes
(Nom: Authorization, Valeur: {!'Basic ' & BASE64ENCODE(BLOB($Credential.{Nom_de_External_Credential}.{Nom_du_Paramètre_Client_ID} & ':' & $Credential.{Nom_de_External_Credential}.{Nom_du_Paramètre_Client_Secret}))}
- Cliquez sur Sauvegarder
Les Named Credentials dans Salesforce sont utilisées pour simplifier la configuration d'appels authentifiés vers des services externes. Dans ce projet, les Named Credentials sont utilisées pour stocker de manière sécurisée le point de terminaison API et les secrets requis pour récupérer le token JWT d'authentification.
Pour configurer les Named Credentials :
- Naviguez vers Configuration dans Salesforce.
- Dans la boîte de recherche rapide, entrez "Named Credentials" et sélectionnez-le.
- Cliquez sur New Named Credential.
- Fournissez un Label et un Nom pour le Named Credential. Nous recommandons d'utiliser "OCO_Service" comme nom. Si vous choisissez un nom différent, assurez-vous de mettre à jour la référence dans le fichier
force-app/main/default/classes/NamedCredentials.clsen conséquence. - Dans le champ URL, entrez l'URL du point de terminaison fournie par Optave pour le service externe.
- Cochez Activé pour les Callouts.
- Sélectionnez l'External Credential que vous souhaitez associer aux Named Credentials.
- Assurez-vous que Autoriser les Formules dans l'En-tête HTTP et Générer l'En-tête d'Autorisation sont sélectionnés.
- Cliquez sur Sauvegarder.
Après la sauvegarde, vous aurez un Named Credential configuré qui peut être référencé dans votre code Apex ou intégrations API REST pour récupérer de manière sécurisée le token JWT et effectuer des appels authentifiés vers le service externe.
Configuration des Custom Metadata
Les Types de Custom Metadata dans Salesforce vous permettent de créer des configurations personnalisées que vos applications peuvent utiliser au moment de l'exécution. Dans ce projet, nous créerons un Type de Custom Metadata pour stocker les détails de configuration, y compris l'URL WebSocket.
Création d'un Type de Custom Metadata
- Naviguez vers Configuration dans Salesforce.
- Dans la boîte de recherche rapide, entrez "Custom Metadata Types" et sélectionnez-le.
- Cliquez sur New Custom Metadata Type.
- Entrez un Label pour votre Type de Custom Metadata. Cela remplira automatiquement les champs Plural Label et Object Name. Nous recommandons d'utiliser "OCO_Metadata". Si vous choisissez un label différent, assurez-vous de mettre à jour la référence dans le fichier
force-app/main/default/classes/OCOSecretController.clsen conséquence ainsi que dans d'autres fichiers. - (Optionnel) Entrez une Description pour décrire l'objectif de ce Type de Custom Metadata.
- Définissez le Statut de Déploiement sur "Deployed".
- Cliquez sur Sauvegarder.
Ajout d'un Champ pour l'URL WebSocket
- Sur la page de détail du Type de Custom Metadata, faites défiler vers le bas jusqu'à la section "Custom Fields".
- Cliquez sur New Field.
- Choisissez Text comme type de champ et cliquez sur Suivant.
- Entrez un Field Label, par exemple, "OCOWebsocketURL". Cela remplira automatiquement le Field Name.
- Définissez la Longueur selon vos exigences (ex. 255 caractères).
- Entrez une Description et un Texte d'Aide si nécessaire.
- Définissez les paramètres de Sécurité au Niveau du Champ et de Mise en Page selon les besoins.
- Cliquez sur Sauvegarder.
Création d'un Enregistrement Custom Metadata
- Naviguez de nouveau vers Configuration.
- Dans la boîte de recherche rapide, entrez le nom de votre Type de Custom Metadata et sélectionnez-le.
- Dans la section "Custom Metadata Records", cliquez sur Manage Records.
- Cliquez sur Nouveau.
- Entrez un Label pour votre enregistrement. Cela remplira automatiquement le Record Name. Nous recommandons d'utiliser "Tenant_Record". Si vous choisissez un label différent, assurez-vous de mettre à jour la référence dans le fichier
force-app/main/default/classes/OCOSecretController.clsen conséquence. - Dans le champ "WebSocket URL", entrez l'URL de votre WebSocket.
- Cliquez sur Sauvegarder.
Après avoir complété ces étapes, vous aurez un Type de Custom Metadata avec un champ URL WebSocket et un enregistrement contenant l'URL WebSocket. Cette configuration permet à votre application Salesforce de récupérer dynamiquement l'URL WebSocket au moment de l'exécution, offrant flexibilité et facilité de gestion de configuration.
Configuration du Code
Localisez le fichier NamedCredentials.cls dans le projet et assurez-vous qu'il reflète ce qui suit
public with sharing class NamedCredentials {
@AuraEnabled
public static string getCred(){
try {
HttpRequest req = new HttpRequest();
req.setEndpoint('callout:Named_Credential_Name?grant_type=client_credentials');
req.setMethod('POST');
req.setHeader('Content-Type', 'application/x-www-form-urlencoded');
Http http = new Http();
HTTPResponse res = http.send(req);
return res.getBody();
} catch (Exception e) {
throw new AuraHandledException(e.getMessage());
}
}
}
N'oubliez pas de remplacer Named_Credential_Name par les Named Credentials que vous avez créées dans Salesforce Configuration
Localisez le fichier OCOSecretController.cls suivant et assurez-vous qu'il reflète ce qui suit
public with sharing class OCOSecretController {
@AuraEnabled
public static Custom_Metadata_API_Name getSecret(){
try {
Custom_Metadata_API_Name mc = Custom_Metadata_API_Name.getInstance('Record_Name');
return mc;
} catch (Exception e) {
throw new AuraHandledException(e.getMessage());
}
}
}
N'oubliez pas de remplacer Custom_Metadata_API_Name et Record_Name par les Custom Metadata et l'Enregistrement que vous venez de créer dans Salesforce Configuration
Une fois que vous avez terminé la configuration des Named Credentials et des Custom Metadata, procédez aux étapes ci-dessous pour déployer l'application dans votre organisation Salesforce.
Clonez le dépôt
Clonez le dépôt et naviguez vers le répertoire du projet :
git clone https://github.com/optave/integration-salesforce-oco-PRD.git
cd OCOClient
Connectez-vous à Salesforce
Authentifiez-vous avec votre Organisation Salesforce :
sf auth:web:login -a VotreAliasOrg
Déployez l'application
Exécutez cette commande dans un terminal pour déployer l'app :
sf project deploy start -d force-app
Ouvrez votre organisation
Si votre org n'est pas déjà ouverte, ouvrez-la maintenant :
sf org open -o VotreAliasOrg
Configuration Post-Installation
Après l'installation, ajoutez l'Assistant Optave à vos pages Salesforce pour commencer à utiliser ses capacités IA.
Ajout de l'Assistant à Vos Pages Salesforce
Pour rendre l'Assistant Optave disponible dans votre environnement Salesforce :
- Naviguez vers Configuration > Lightning App Builder
- Sur le côté gauche, localisez le composant
agentUIdans le bloc Personnalisé - Glissez et déposez le composant à l'emplacement souhaité sur la page
- Sauvegardez et activez la page
Ajout des Paramètres IA à la Barre Utilitaire
Pour ajouter le composant Paramètres IA à votre Barre Utilitaire :
- Dans la Configuration Salesforce, utilisez la boîte de recherche rapide pour chercher App Manager
- Trouvez et sélectionnez l'application Service Console, sélectionnez Modifier
- Naviguez vers la section Utility Items
Si vous ne trouvez pas le composant "Paramètres IA" dans Utility Items :
- Cliquez sur Add Utility Item
- Recherchez settings dans la liste Personnalisée
- Sélectionnez-le et cliquez sur Ajouter
- Configurez les propriétés du composant selon les besoins :
- Définissez le label (par défaut "Paramètres IA")
- Ajustez la largeur et hauteur du panneau si nécessaire
- Définissez quand l'élément utilitaire doit s'ouvrir (automatiquement ou manuellement)
- Cliquez sur Sauvegarder pour appliquer vos changements
Après avoir ajouté l'élément utilitaire, les Paramètres IA seront disponibles dans la barre utilitaire en bas de votre Console de Service, permettant aux opérateurs de configurer leurs préférences d'assistant IA.
En activant cette intégration, vous nous autorisez à envoyer vos données à un fournisseur de services externe (Salesforce). Vous êtes seul responsable de confirmer que le fournisseur dispose de mesures de sécurité appropriées et de configurer et gérer l'intégration. Optave ne contrôle pas, ni n'est responsable de votre utilisation de ces services tiers ou de votre conformité à leurs conditions. Veuillez vous assurer d'avoir les permissions nécessaires avant d'activer l'intégration.