Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Component/Notification kann dazu genutzt werden, Benachrichtigungen aus der Datenbanktabelle Framework → Benachrichtigungen → Benachrichtigungen Benutzer bereitzustellen. Dabei kümmert sich Component/Notification nur darum, öffentliche Methoden zur Integration bereitzustellen und die Datensätze den jeweiligen Codestellen zur Weiterverarbeitung aufzurufen.

Ein möglicher Anwendungsfall wäre zum Beispiel eine Nachricht auf der Willkommensseite des Adminbereichs. Dazu müsste es eine Codestelle geben, welche im Willkommensbereich Benachrichtigungen bezieht und darstellt.

Eine Benachrichtigung anlegen

Mit \Brandbox\Framework\Component\Notification\Manager::add kann ein neuer Benachrichtigung-Datensatz in der Tabelle erzeugt werden. Dabei werden folgende Parameter erwartet:

ParameterBeschreibung
$target

Ist ein eindeutiger Key, der auch beim Holen der Benachrichtigungen angegeben werden muss.
Beispiele: TestNotification, BasketUserNotification:shopUser:123

$request

Der Request ist die Funktion, die für diesen Datensatz aufgerufen werden soll. Als Rückgabe wird ein Element von Typ FrameworkElementAbstact erwartet.
Beispiele: Admin/Notification.notificationTest, Shop/Basket.notificationArticleNotAvailable

$payloadOptionale Daten für die Verarbeitung im $request.
$endpoint

Wird beim Beziehen der Benachrichtigungen auch als Parameter erwartet und dient dazu, die Benachrichtigungen dem richtigen Endpoint zuzuordnen.

$ttlTime-To-Live. Wie lange soll der Datensatz gültig sein und wann durch den Garbage-Collector gelöscht werden. Hier sollte darauf geachtet werden, keinen Datenmüll zu erzeugen.

Eine weitere Option ist, den Datensatz händisch in der Tabelle anzulegen. Für eine Meldung für einen Wartungshinweis oder ähnliches würde sich das anbieten.