AEM sendet E-Mail-Benachrichtigungen an Benutzer, die:
Seitenereignisse wie Änderungen oder Replikationen abonniert haben. Im Abschnitt Benachrichtigungs-Posteingang ist beschrieben, wie solche Ereignisse abonniert werden können.
Forumsveranstaltungen abonniert haben.
Führen Sie einen Schritt in einem Workflow aus. Die Teilnehmer-Schritt -Abschnitt beschreibt den Trigger von E-Mail-Benachrichtigungen in einem Workflow.
Voraussetzungen:
Wenn ein Benutzer benachrichtigt wird, erhält er eine E-Mail in der Sprache, die in seinem Profil definiert ist. Jede Sprache verfügt über eine eigene Vorlage, die angepasst werden kann. Für neue Sprachen können neue E-Mail-Vorlagen hinzugefügt werden.
Bei der Verwendung von AEM gibt es mehrere Methoden zur Verwaltung der Konfigurationseinstellungen für solche Dienste. Weitere Informationen und empfohlene Praktiken finden Sie unter Konfigurieren von OSGi.
Damit AEM E-Mails versenden können, muss die Day CQ Mail Service muss ordnungsgemäß konfiguriert sein. Sie können die Konfiguration in der Webkonsole anzeigen. Bei der Verwendung von AEM gibt es mehrere Methoden zur Verwaltung der Konfigurationseinstellungen für solche Dienste. Weitere Informationen und empfohlene Praktiken finden Sie unter Konfigurieren von OSGi.
Es gelten die folgenden Beschränkungen:
Der SMTP-Server-Port muss 25 oder höher sein.
Der SMTP-Server-Hostname darf nicht leer sein.
Die „Von“-Adresse darf nicht leer sein.
Zum Debuggen eines Problems mit dem Day CQ Mail Service können Sie die Protokolle des Dienstes betrachten:
com.day.cq.mailer.DefaultMailService
Die Konfiguration sieht in der Web-Konsole wie folgt aus:
Wenn Sie entweder Benachrichtigungen zu Seiten- oder Forenereignissen abonniert haben, ist die „Von“-E-Mail-Adresse standardmäßig auf no-reply@acme.com
eingestellt. Sie können diesen Wert durch die Konfiguration des Diensts Benachrichtigungs-E-Mail-Kanal in der Web-Konsole ändern.
Fügen Sie zum Konfigurieren der „Von“-E-Mail-Adresse einen sling:OsgiConfig
-Knoten zum Repository hinzu. Verwenden Sie das folgende Verfahren, um den Knoten direkt mithilfe von CRXDE Lite hinzuzufügen:
Fügen Sie in CRXDE Lite einen Ordner mit dem Namen config
unter Ihrem Programmordner hinzu.
Fügen Sie im Konfigurationsordner einen Knoten mit folgendem Namen hinzu:
com.day.cq.wcm.notification.email.impl.EmailChannel
vom Typ sling:OsgiConfig
Fügen Sie eine String
-Eigenschaft zum Knoten mit dem Namen email.from
hinzu. Geben Sie als Wert die E-Mail-Adresse an, die Sie verwenden möchten.
Klicken Sie auf Alle speichern.
Gehen Sie wie folgt vor, um den Knoten in den Quellordnern des Inhaltspakets zu definieren:
Erstellen Sie in jcr_root/apps/*app_name*/config folder
eine Datei mit dem Namen com.day.cq.wcm.notification.email.impl.EmailChannel.xml
.
Fügen Sie die folgende XML für den Knoten hinzu:
<?xml version="1.0" encoding="UTF-8"?> <jcr:root xmlns:sling="https://sling.apache.org/jcr/sling/1.0" xmlns:jcr="https://www.jcp.org/jcr/1.0" jcr:primaryType="sling:OsgiConfig" email.from="name@server.com"/>
Ersetzen Sie den Wert des Attributs email.from
(name@server.com
) durch Ihre E-Mail-Adresse.
Speichern Sie die Datei.
Wenn Sie Workflow-E-Mail-Benachrichtigungen erhalten, werden sowohl die E-Mail-Adresse als auch das Host-URL-Präfix auf Standardwerte gesetzt. Sie können diese Werte ändern, indem Sie die Day CQ Workflow Email Notification Service in der Web-Konsole. Wenn Sie dies tun, wird empfohlen, die Änderung im Repository beizubehalten.
Die Standardkonfiguration sieht in der Web-Konsole wie folgt aus:
E-Mail-Vorlagen für Seitenbenachrichtigungen finden Sie unten:
/libs/settings/notification-templates/com.day.cq.wcm.core.page
Die standardmäßige englische Vorlage (en.txt
) wird wie folgt definiert:
subject=[CQ Page Event Notification]: Page Event
header=-------------------------------------------------------------------------------------\n \
Time: ${time}\n \
User: ${userFullName} (${userId})\n \
-------------------------------------------------------------------------------------\n\n
message=The following pages were affected by the event: \n \
\n \
${modifications} \n \
\n\n
footer=\n \
-------------------------------------------------------------------------------------\n \
This is an automatically generated message. Please do not reply.
Die englische E-Mail-Vorlage für die Seitenbenachrichtigung können Sie wie folgt anpassen:
Öffnen Sie in CRXDE die Datei:
/libs/settings/notification-templates/com.day.cq.wcm.core.page/en.txt
Ändern Sie die Datei nach Bedarf.
Speichern Sie die Änderungen.
Die Vorlage muss das folgende Format aufweisen:
subject=<text_1>
header=<text_2>
message=<text_3>
footer=<text_4>
Dabei kann <text_x> ein Mix von statischem Text und dynamischen Zeichenfolgenvariablen sein. Die folgenden Variablen können innerhalb der E-Mail-Vorlage für Seitenbenachrichtigungen verwendet werden:
${time}
, Ereignisdatum und -uhrzeit
${userFullName}
, der vollständige Name des Benutzers, der das Ereignis ausgelöst hat
${userId}
, die ID des Benutzers, der das Ereignis ausgelöst hat
${modifications}
, beschreibt den Typ des Seitenereignisses und den Seitenpfad im folgenden Format:
<Seitenereignistyp> => <Seitenpfad>
Beispiel:
PageModified => /content/geometrixx/en/products
Die E-Mail-Vorlage für Workflow-Benachrichtigungen (Englisch) befindet sich unter:
/libs/settings/workflow/notification/email/default/en.txt
Sie wird wie folgt definiert:
subject=Workflow notification: ${event.EventType}
header=-------------------------------------------------------------------------------------\n \
Time: ${event.TimeStamp}\n \
Step: ${item.node.title}\n \
User: ${participant.name} (${participant.id})\n \
Workflow: ${model.title}\n \
-------------------------------------------------------------------------------------\n\n
message=Content: ${host.prefix}${payload.path.open}\n
footer=\n \
-------------------------------------------------------------------------------------\n \
View the overview in your ${host.prefix}/aem/inbox\n \
-------------------------------------------------------------------------------------\n \
This is an automatically generated message. Please do not reply.
Die englische E-Mail-Vorlage für die Benachrichtigung über ein Workflow-Ereignis können Sie wie folgt anpassen:
Öffnen Sie in CRXDE die Datei:
/libs/settings/workflow/notification/email/default/en.txt
Ändern Sie die Datei nach Bedarf.
Speichern Sie die Änderungen.
Die Vorlage muss das folgende Format aufweisen:
subject=<text_1>
header=<text_2>
message=<text_3>
footer=<text_4>
Dabei kann <text_x>
ein Mix von statischem Text und dynamischen Zeichenfolgenvariablen sein. Jede Zeile eines <text_x>
-Elements muss mit einem umgekehrten Schrägstrich (\
) enden, außer der letzten Instanz, wo das Fehlen des umgekehrten Schrägstrichs das Ende der <text_x>
-Zeichenfolgenvariable anzeigt.
Weitere Informationen zum Vorlagenformat werden von der Methode javadocs der Properties.load()-Methode bereitgestellt.
Die Methode ${payload.path.open}
legt den Pfad zur Payload des Arbeitselements offen. Bei einer Seite in Sites würde payload.path.open
dann /bin/wcmcommand?cmd=open&path=…
ähneln, das den Server-Namen nicht enthält. Aus diesem Grund stellt die Vorlage diesem ${host.prefix}
voran.
Die folgenden Variablen können innerhalb der E-Mail-Vorlage verwendet werden:
${event.EventType}
, Ereignistyp
${event.TimeStamp}
, Datum und Uhrzeit des Ereignisses
${event.User}
, der Benutzer, der das Ereignis ausgelöst hat
${initiator.home}
, der Knotenpfad des Initiators
${initiator.name}
, der Name des Initiators
${initiator.email}
, die E-Mail-Adresse des Initiators
${item.id}
, die ID des Arbeitselements
${item.node.id}
, die ID des Knotens innerhalb des Workflow-Modells, das mit diesem Arbeitselement verknüpft ist
${item.node.title}
, der Titel des Arbeitselements
${participant.email}
, die E-Mail-Adresse des Teilnehmers
${participant.name}
, der Vorname des Teilnehmers
${participant.familyName}
, der Familienname des Teilnehmers
${participant.id}
, die ID des Teilnehmers
${participant.language}
, die Sprache des Teilnehmers
${instance.id}
, die ID des Workflows
${instance.state}
, der Status des Workflows
${model.title}
, der Titel des Workflow-Modells
${model.id}
, die ID des Workflow-Modells
${model.version}
, die Version des Workflow-Modells
${payload.data}
, die Payload
${payload.type}
, der Typ der Payload
${payload.path}
, der Pfad der Payload
${host.prefix}
, das Host-Präfix, z. B. http://localhost:4502
So fügen Sie eine Vorlage für eine neue Sprache hinzu:
Fügen Sie in CRXDE eine Datei <language-code>.txt
hinzu unter:
/libs/settings/notification-templates/com.day.cq.wcm.core.page
: für Seitenbenachrichtigungen/libs/settings/workflow/notification/email/default
: für Workflow-BenachrichtigungenPassen Sie die Datei an die Sprache an.
Speichern Sie die Änderungen.
Der <language-code>
, der als Dateiname der E-Mail-Vorlage verwendet wird, muss ein von AEM anerkannter, aus zwei Kleinbuchstaben bestehender Sprach-Code sein. AEM nutzt die Sprach-Codes gemäß ISO-639-1.
Wenn Sammlungen in AEM Assets freigegeben oder nicht freigegeben sind, können Benutzer E-Mail-Benachrichtigungen von AEM erhalten. Gehen Sie wie folgt vor, um E-Mail-Benachrichtigungen zu konfigurieren.
AEM bietet OAuth2-Unterstützung für seinen integrierten E-Mail-Service, um Unternehmen die Einhaltung von E-Mail-Sicherheitsanforderungen zu ermöglichen.
Sie können OAuth für mehrere E-Mail-Anbieter konfigurieren, wie unten beschrieben.
Dieses Verfahren ist ein Beispiel für eine Veröffentlichungsinstanz. Wenn Sie E-Mail-Benachrichtigungen auf einer Autoreninstanz aktivieren möchten, müssen Sie die gleichen Schritte auf der Autoreninstanz durchführen.
https://console.developers.google.com/projectcreate
.https://mail.google.com/
https://www.googleapis.com//auth/gmail.send
AEM-Seitenkonfigurationen
Adobe Managed Service-Kunden können diese Änderungen an Produktionsumgebungen gemeinsam mit ihrem Customer Service Engineer vornehmen
Konfigurieren Sie zunächst den E-Mail-Dienst:
http://serveraddress:serverport/system/console/configMgr
gehen.smtp.gmail.com
25
oder 587
, abhängig von den AnforderungenKonfigurieren Sie anschließend Ihren SMTP-OAuth-Provider wie unten beschrieben:
http://serveraddress:serverport/system/console/configMgr
gehen.https://accounts.google.com/o/oauth2/auth
https://accounts.google.com/o/oauth2/token
https://www.googleapis.com/auth/gmail.send
und https://mail.google.com/
. Sie können mehrere Bereiche hinzufügen, indem Sie auf die Schaltfläche + rechts von jedem konfigurierten Bereich klicken.https://accounts.google.com/o/oauth2/token
Nach der Konfiguration sollten die Einstellungen wie folgt aussehen:
Aktivieren Sie jetzt die OAuth-Komponenten. Gehen Sie dazu wie folgt vor:
Rufen Sie die Komponentenkonsole auf, indem Sie diese URL aufrufen: http://serveraddress:serverport/system/console/components
Suchen Sie nach den folgenden Komponenten.
com.day.cq.mailer.oauth.servlets.handler.OAuthCodeGenerateServlet
com.day.cq.mailer.oauth.servlets.handler.OAuthCodeAccessTokenGenerator
Klicken Sie links neben den Komponenten auf das Wiedergabesymbol.
Bestätigen Sie abschließend die Konfiguration, indem Sie:
http://serveraddress:serverport/services/mailer/oauth2/authorize
navigieren. Dadurch werden Sie zur Seite Ihres SMTP-Anbieters weitergeleitet, in diesem Fall Gmail.accessToken
aufrufen, indem Sie direkt auf diese URL auf Ihrer Veröffentlichungsinstanz zugreifen: http://serveraddress:serverport/crx/de/index.jsp#/conf/global/settings/mailer/oauth
Gehen Sie zu https://portal.azure.com/ und melden Sie sich an.
Suchen Sie in der Suchleiste nach Azure Active Directory und klicken Sie auf das Ergebnis. Alternativ können Sie direkt zu https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/Overview gehen.
Klicken Sie auf Registrierung einer Anwendung – Neue Registrierung
Füllen Sie die Informationen entsprechend Ihren Anforderungen aus und klicken Sie dann auf Registrieren
Wechseln Sie zur neu erstellten Anwendung und wählen Sie API-Berechtigungen aus.
Gehen Sie zu Berechtigung hinzufügen – Diagrammberechtigungen – Zugewiesene Berechtigungen.
Wählen Sie die folgenden Berechtigungen für Ihre Anwendung aus und klicken Sie dann auf Berechtigung hinzufügen:
SMTP.Send
Mail.Read
Mail.Send
openid
offline_access
Gehen Sie zu Authentifizierung > Plattform hinzufügen > Web und fügen Sie im Abschnitt Umleitungs-URLs die folgende URL für die Umleitung des OAuth-Codes hinzu und klicken Sie dann auf Konfigurieren:
http://localhost:4503/services/mailer/oauth2/token
Wiederholen Sie die obigen Schritte für jede Veröffentlichungsinstanz
Konfigurieren Sie die Einstellungen entsprechend Ihren Anforderungen.
Gehen Sie dann zu Zertifikate und Geheimnisse, klicken Sie auf Neues Client-Geheimnis und führen Sie die Schritte auf dem Bildschirm aus, um ein Geheimnis zu erstellen. Notieren Sie sich dieses Geheimnis für die spätere Verwendung.
Klicken Sie auf Überblick im linken Bereich und kopieren Sie die Werte für Anwendungs (Client) ID und Directory (Mandant) ID zur späteren Verwendung.
Zusammenfassend benötigen Sie die folgenden Informationen, um OAuth2 für den E-Mail-Service auf der AEM-Seite zu konfigurieren:
https://login.microsoftonline.com/<tenantID>/oauth2/v2.0/authorize
https://login.microsoftonline.com/<tenantID>/oauth2/v2.0/token
https://login.microsoftonline.com/<tenantID>/oauth2/v2.0/token
AEM-Seitenkonfigurationen
Integrieren Sie anschließend Ihre OAuth2-Einstellungen mit AEM:
http://serveraddress:serverport/system/console/configMgr
navigieren.smtp.office365.com
25
oder 587
, je nach den Anforderungenhttps://outlook.office365.com/Mail.Send
https://outlook.office365.com/Mail.Read
https://outlook.office365.com/SMTP.Send
http://localhost:4503/services/mailer/oauth2/token
Nach der Konfiguration sollten die Einstellungen wie folgt aussehen:
Aktivieren Sie jetzt die OAuth-Komponenten. Gehen Sie dazu wie folgt vor:
http://serveraddress:serverport/system/console/components
com.day.cq.mailer.oauth.servlets.handler.OAuthCodeGenerateServlet
com.day.cq.mailer.oauth.servlets.handler.OAuthCodeAccessTokenGenerator
Bestätigen Sie abschließend die Konfiguration, indem Sie:
http://serveraddress:serverport/services/mailer/oauth2/authorize
navigieren. Dadurch werden Sie zur Seite Ihres SMTP-Anbieters weitergeleitet, in diesem Fall zu Outlook.accessToken
aufrufen, indem Sie direkt auf diese URL auf Ihrer Veröffentlichungsinstanz zugreifen: http://serveraddress:serverport/crx/de/index.jsp#/conf/global/settings/mailer/oauth