Korzystając z Heartbeat, byłem w stanie skutecznie tworzyć strumienie aktywności użytkownika za pomocą reguł. Chciałbym jednak mieć możliwość powiadamiania użytkowników o nowych działaniach i rejestrowania liczby nowych działań, takich jak na Facebooku, a nawet podobnych do nowych wiadomości e-mail w większości systemów pocztowych.
W Drupal 6 było kilka modułów, które mogłyby to dobrze osiągnąć, jednak jak można to zrobić w Drupal 7?
Zrobiłem dość szeroko zakrojone badania na ten temat, ale jestem w stanie znaleźć odpowiedni moduł w tym momencie: Jest to Powiadomienia użytkownika i Notifier moduły, które byłoby idealne rozwiązania istnieją tylko wersje z wyjątkiem D6. Istnieją Powiadomienia, których nie można zintegrować z żadnym modułem rejestrowania aktywności, ponieważ brakuje w nim odpowiedniej obsługi Reguł. Dwie interesujące implementacje to pasek aplikacji i pasek zadań, które zapewniają rozwijane tace z listami działań, ale nie liczą liczby nowych działań i nie integrują się już z regułami. Wreszcie DLikejest świetny jako licznik dynamiczny, chociaż w tej chwili zlicza tylko Flagi i zapewnia link do listy oznaczonych użytkowników. Być może z pewnymi poprawkami można go użyć poprzez integrację z Flags Rules, aby śledzić ostatnie (oznaczone) działania i link do listy tych ostatnich działań.
Czy można osiągnąć funkcjonalność podobną do tej w Drupal 7?
źródło
Odpowiedzi:
Podejście 1: odznaki menu
Użyj modułu Odznaki menu , aby dodać takie powiadomienia do dowolnej pozycji menu i / lub wybranej karty menu . Oto kilka szczegółów na ten temat (ze strony projektu):
Ze względu na to, jak integruje się z modułem Widoki , zasadniczo redukujesz rozwiązanie dla dowolnego rodzaju powiadomienia do czegoś takiego jak „Po prostu stwórz odpowiedni widok”.
Samouczki wideo:
Podejście 2: stos wiadomości
Użyj stosu wiadomości , który składa się z tych modułów (cytaty pochodzą ze strony projektu modułu):
Wiadomość :
Informuj wiadomość .
Subskrybuj wiadomość .
Oto podstawowe elementy i zależności stosu komunikatów:
Sporo popularnych dystrybucji Drupala zostało już zaadaptowanych do tego stosu wiadomości, takich jak Commerce Kickstart , Drupal Commons , ERPAL i Open Atrium .
Jeśli chcesz przyjrzeć się stosowi wiadomości we własnym środowisku, poeksperymentuj trochę z modułem Answers (ujawnienie: jestem współobsługą), wraz z podmodułem Answers Notification , który umożliwia zalogowanie się użytkownicy mogą zasubskrybować wybrane pytania, aby otrzymywać powiadomienia (za pomocą stosu wiadomości ), gdy pytania otrzymają odpowiedzi.
A stos wiadomości sprawi, że będziesz dobrze pozycjonowany także dla Drupala 8 (ze względu na architekturę obiektową modułów). Mimo że nie istnieje jeszcze coś takiego jak 8.x-dev, repozytorium kodu wiadomości już zawiera coś (jeszcze nie dla 2 innych modułów). Zakładam, że
wip
część nazwy oddziału oznacza „Work In Progress”.źródło
will make you well positioned for Drupal 8 also.
masz na myśli w przyszłości? Widzę, że żaden z modułów wiadomości nie ma jeszcze wersji Drupal 8, nawet dev.Jest stosunkowo nowa para modułów, które moim zdaniem byłyby przydatne do tego: Wiadomość i Powiadomienie o wiadomości .
Wiadomość jest w zasadzie ramą do tworzenia „wiadomości”, które w twoim przypadku byłyby elementami powiadomień. Jedną fajną rzeczą jest to, że tak naprawdę wszystkie są tworzone jako byty, więc łatwo byłoby wyświetlić je w bloku rozwijanym, mieć stronę Wszystkie powiadomienia, a także mieć niestandardowe pole lub flagę wskazującą, czy zostały widziałem (lub są nowe). Następnie możesz połączyć to z powiadomieniami e-mail za pomocą modułu Powiadomienia o wiadomościach .
Pamiętaj jednak, że zintegrowanie tego z witryną byłoby zadaniem programistycznym bardziej niż zadaniem budowania witryny. Moduł ma dobre API, które można wykorzystać w odpowiednich zaczepach itp. Do tworzenia wiadomości w razie potrzeby, ale nie jestem pewien, jak przebiega integracja reguł.
źródło
Do integracji w czasie rzeczywistym możesz użyć modułu nodejs.
Ten moduł integruje Node.js z Drupal.
Zapewnia interfejs API, którego inne moduły mogą używać do dodawania możliwości Drupala w czasie rzeczywistym, w szczególności umożliwiając wypychanie aktualizacji w celu otwarcia połączonych klientów.
źródło