Auf einer Testinstallation von HCL Connections 6.5.1 wollte ich den E-Mail Versand testen, genauer den Newsletter. Hierfür muss in der Anwendung ein SMTP-Konto konfiguriert werden. Konkret befindet sich diese Konfiguration in der WebSphere ISC unter Ressources > Mail > Mail sessions. Hier gibt es einen standardmäßig leeren Eintrag lcnotification von Connections. Im unteren Bereich kann ein SMTP-Server für den ausgehenden E-Mail Verkehr hinterlegt werden.

In der Regel benötigen Mailserver eine Authentifizierung. Ausnahmen gibt es möglicherweise bei internen und Testmailservern. Bei mir ist diese aktiv, sodass ich rechts auf Custom properties klicken und ein Attribut mail.smtp.auth mit dem Wert true anlegen muss. Nun meldet sich Connections ordnungsgemäß am Mailserver an, wodurch der E-Mail Versand möglich ist.
Absender-Adresse setzen
In der notifications-config.xml gibt es bei den Properties ein Element globalSenderEmailAddress. Dort sollte man eine gültige E-Mail Adresse eintragen, die als Absender verwendet wird. Für einzelne Benachrichtigungen (z.B. Kommentare) kommt die Adresse des Benutzers zum Einsatz, der das Ereignis ausgelöst hat. Für die täglichen oder wöchentlichen Newsletter nutz das System globalSenderEmailAddress. Wenn die auf @example.com steht, lehnen manche Mailserver die Nachricht ggf. ab oder verschieben sie in den Spam-Ordner.
Damit der globale Sender auch genutzt wird, muss ein neues Attribut innerhalb <properties> angelegt werden:
<property name="alwaysUseGlobalSender">true</property><
Alternativ kann man auch die E-Mail Adressen einzeln für jede Anwendung weiter unten setzen, falls man dort unterschiedliche Absender wünscht.
Fehleranalyse: Protokollierung der Mails
Auf der vorherigen lcnotification Eigenschaftenseite gibt es einen Haken Enable debug mode. Ist er aktiviert, werden ausführliche Logereignisse vom Mailversand in den AppsCluster geschrieben, worin die News-Anwendung läuft. Standardmäßig ist dies der InfraCluster. Nach dem Neustart der News-Anwendung werden alle Details zu versendeten E-Mails in das SystemOut-Log geschrieben (z.B. /opt/IBM/WebSphere/AppServer/profiles/CnxNode01/logs/InfraCluster_server1/SystemOut.log), inklusive dem HTML-Body der Nachricht.
Täglichen und wöchentlichen Newsletter testen
Beispielhaft folgende Adresse meines Testsystemes für den Aufbau, cnx.fritz.box ist entsprechend durch den IHS-Hostname zu ersetzen:
https://cnx.fritz.box/news/web/testEmailDigestSendMail.action?type=daily&begin=2020-08-10
Der aufrufende Nutzer muss die Administratorrolle in der News-Anwendung haben, ansonsten funktioniert der Zugriff nicht. Wahlweise kann mit type=weekly auch der wöchentliche Versand getriggert werden. Optional erweitert begin den Zeitstempel zur Berücksichtigung der Ereignisse in Connections. Auf Testsystemen wähle ich bewusst ein Datum aus der entfernteren Vergangenheit. Da dort oft nicht all zu viele Ereignisse entstehen, liegen sonst keine Daten vor. Und wenn keine Daten für den Versand vorliegen, passiert schlichtweg nichts – ihr erhaltet weder eine E-Mail, noch eine Fehlermeldung.
Wichtig ist auch, dass der Benachrichtigungsintervall unter https://cnx.fritz.box/news/ passt. Das heißt: Wenn ihr den täglichen Newsletter testen möchtet, muss dort die jeweilige Anwendung auf „täglich“ stehen. Falls dort einzelne E-Mails aktiviert sind, wird ebenfalls kein Newsletter verschickt – in diesem Fall wurde der Nutzer ja bereits über die auf das Ereignis folgende Mail informiert.