AEM as a Cloud Service : problème de diffusion d’e-mail de l’API SendGrid avec le service OSGi personnalisé
Cet article décrit les étapes à suivre pour résoudre les problèmes liés à l’envoi d’e-mails via l’API SendGrid à partir d’un service OSGi personnalisé dans Adobe Experience Manager as a Cloud Service.
Description description
Environnement
Adobe Experience Manager (AEM) as a Cloud Service (toutes les versions)
problème/symptômes
Les tentatives d’envoi d’e-mails à l’aide d’un service OSGi personnalisé qui s’intègre à l’API REST SendGrid (https://api.sendgrid.com/v3/mail/send) ne parviennent pas à diffuser les messages. Le problème se produit après le déploiement du code via Cloud Manager et l’exécution d’un processus de workflow qui appelle le service de messagerie SendGrid.
- Interface de configuration OSGi personnalisée créée à l’aide de
@ObjectClassDefinition. - Fichier de configuration ajouté à l’adresse
/apps/csuf-cloud/osgiconfig/config(par exemple :com.csuf.cloud.core.config.SendGridConfiguration.cfg.json). - Clé API configurée à l’aide d’un secret Cloud Manager (
SENDGRID_API_KEY). from_emaildéfini sur une adresse d’expéditeur valide.- Le processus de workflow personnalisé déclenche le service de messagerie SendGrid.
- Aucun message d’erreur explicite n’a été fourni, mais les e-mails ne sont pas envoyés comme prévu.
Résolution resolution
-
Vérifier l’utilisation de la clé API SendGrid
-
Assurez-vous que la valeur de la clé API dans votre configuration OSGi est définie sur le secret Cloud Manager contenant la clé API SendGrid.
-
Lors de l’authentification avec l’API SendGrid, utilisez toujours la chaîne littérale
apikeycomme nom d’utilisateur, quelle que soit la valeur de clé API réelle créée dans SendGrid. -
Exemple de configuration :
code language-none "smtp.user": "apikey", "api_key": "<Cloud Manager secret reference>"
-
-
Vérifier le déploiement de la configuration OSGi
- Vérifiez que le fichier de configuration OSGi est correctement déployé sur
/apps/<project>/osgiconfig/configet qu’il est récupéré par AEM. - Vérifiez que les valeurs de configuration (clé API, e-mail de l’expéditeur) sont correctes et non vides.
- Vérifiez que le fichier de configuration OSGi est correctement déployé sur
-
Valider la référence du secret Cloud Manager
- Assurez-vous que le secret Cloud Manager (
SENDGRID_API_KEY) est correctement référencé dans votre configuration et disponible au moment de l’exécution.
- Assurez-vous que le secret Cloud Manager (
-
Tester La Diffusion E-Mail
- Déclenchez le processus de workflow dans l’environnement de création AEM et surveillez la réussite de la diffusion des e-mails.
- Vérifiez les journaux AEM et SendGrid pour détecter les erreurs ou les demandes rejetées.
Cause
L’API SendGrid requiert que le nom d’utilisateur soit défini comme apikey pour l’authentification, quelle que soit la valeur de la clé API réelle. Une configuration incorrecte du nom d’utilisateur ou de la clé API peut empêcher la diffusion réussie des e-mails.