Mit Heartbeat konnte ich mithilfe von Rules-Triggern effektiv Streams von Benutzeraktivitäten erstellen. Ich möchte jedoch in der Lage sein, Benutzer über neue Aktivitäten zu informieren und die Anzahl der neuen Aktivitäten wie bei Facebook oder sogar die Anzahl der neuen E-Mails in den meisten E-Mail-Systemen zu erfassen.
In Drupal 6 gab es einige Module, die dies gut erreichen konnten. Wie kann dies jedoch in Drupal 7 geschehen?
Ich habe diesbezüglich umfangreiche Recherchen durchgeführt, kann jedoch noch nicht das richtige Modul finden: Es gibt die Module User Notifications und Notifier , die die perfekte Lösung darstellen, außer dass nur D6-Versionen existieren. Es gibt Benachrichtigungen, die nicht in ein Aktivitätsprotokollierungsmodul integriert werden können, da es keine ordnungsgemäße Regelunterstützung bietet. Zwei interessante Implementierungen sind Appbar und Taskbar , die Dropdown-Leisten mit Aktivitätenlisten bereitstellen, jedoch nicht die Anzahl der neuen Aktivitäten zählen und nicht mehr in Rules integriert werden. Endlich DLike als dynamischer Zähler, auch wenn derzeit nur Flags gezählt werden und ein Link zu einer Liste der markierenden Benutzer bereitgestellt wird. Vielleicht könnte es mit einigen Optimierungen über die Integration von Flags Rules verwendet werden, um die letzten (markierten) Aktivitäten zu verfolgen und eine Verknüpfung zu einer Liste dieser letzten Aktivitäten herzustellen.
Ist es möglich, in Drupal 7 eine ähnliche Funktionalität zu erreichen?
quelle
Antworten:
Ansatz 1: Menüabzeichen
Verwenden Sie das Modul " Menü-Ausweise" , um solche Benachrichtigungen zu einem Menüelement und / oder einer Menüregisterkarte Ihrer Wahl hinzuzufügen . Hier sind einige Details dazu (von der Projektseite):
Aufgrund der Integration in das Modul " Ansichten" reduzieren Sie die Lösung für jede Art von Benachrichtigung im Wesentlichen auf "Erstellen Sie einfach eine entsprechende Ansicht davon".
Videoanleitungen:
Ansatz 2: Nachrichtenstapel
Verwenden Sie den Nachrichtenstapel , der aus diesen Modulen besteht (Anführungszeichen stammen von der Projektseite des Moduls):
Nachricht :
Nachricht Benachrichtigen .
Nachricht abonnieren .
Dies sind die grundlegenden Komponenten und Abhängigkeiten des Nachrichtenstapels:
Einige beliebte Drupal-Distributionen, die bereits für diesen Message Stack übernommen wurden, wie z. B. Commerce Kickstart , Drupal Commons , ERPAL und Open Atrium .
Wenn Sie sich den Nachrichtenstapel in Ihrer eigenen Umgebung genauer ansehen möchten, probieren Sie das Modul " Antworten" (Offenlegung: Ich bin Mitbetreuer) zusammen mit dem Untermodul " Antwortenbenachrichtigung" aus , mit dem Sie sich anmelden können Benutzer können ausgewählte Fragen abonnieren, damit sie Benachrichtigungen (über den Nachrichtenstapel ) erhalten, wenn Fragen Antworten erhalten.
Mit dem Nachrichtenstapel sind Sie auch für Drupal 8 gut positioniert (aufgrund der objektorientierten Architektur der Module). Obwohl es noch kein 8.x-dev gibt, enthält das Message Code Repository bereits etwas (allerdings noch nicht für die 2 anderen Module). Ich gehe davon aus, dass der
wip
Teil des Filialnamens für "Work In Progress" steht.quelle
will make you well positioned for Drupal 8 also.
Du meinst in der Zukunft? Ich sehe, dass keines der Nachrichtenmodule eine Drupal 8-Version hat, nicht einmal ein Entwickler.Es gibt ein relativ neues Modulpaar, von dem ich denke, dass es sich hervorragend dafür eignet : Message und Message-notify .
Nachricht ist im Grunde ein Rahmen zum Erstellen von "Nachrichten", die in Ihrem Fall Benachrichtigungselemente wären. Eine coole Sache ist, dass diese eigentlich alle als Entitäten erstellt wurden, so dass es einfach ist, sie in einem Dropdown-Block anzuzeigen, eine Seite "Alle Benachrichtigungen" sowie ein benutzerdefiniertes Feld oder Flag darauf zu haben, das angibt, ob sie vorhanden sind gesehen (oder sind neu). Sie können dies dann mit E-Mail-Benachrichtigungen über das Modul Nachrichtenbenachrichtigung verbinden .
Beachten Sie jedoch, dass die Integration in Ihre Site mehr eine Entwicklungsaufgabe als eine Site-Erstellungsaufgabe ist. Das Modul verfügt über eine gute API, die in geeigneten Hooks usw. zum Erstellen von Nachrichten verwendet werden kann, aber ich bin nicht sicher, wie die Rules-Integration verläuft.
quelle
Für die Echtzeitintegration können Sie das nodejs-Modul verwenden.
Dieses Modul integriert Node.js mit Drupal.
Es bietet eine API, die andere Module verwenden können, um Drupal Echtzeitfunktionen hinzuzufügen, insbesondere um Aktualisierungen an offene verbundene Clients zu senden.
quelle