Bagaimana cara membuat notifikasi pengguna gaya Facebook?

14

Menggunakan Detak Jantung saya telah dapat secara efektif membuat aliran aktivitas pengguna melalui pemicu Aturan. Namun saya ingin agar pengguna diberitahu tentang aktivitas baru, dan tetap menghitung jumlah aktivitas baru seperti di facebook, atau bahkan mirip dengan jumlah email baru di sebagian besar sistem email.

Dalam Drupal 6 ada beberapa modul yang dapat mencapai ini dengan baik, namun bagaimana hal ini dapat dilakukan di Drupal 7?

Saya telah melakukan penelitian yang cukup luas tentang hal ini tetapi saya tidak dapat menemukan modul yang tepat pada saat ini: Ada modul Notifikasi Pengguna dan Notifier , yang akan menjadi solusi sempurna kecuali hanya versi D6 yang ada. Ada Pemberitahuan yang tidak dapat diintegrasikan dengan modul pencatatan aktivitas apa pun karena tidak memiliki dukungan Aturan yang tepat. Dua implementasi yang menarik adalah Appbar dan Taskbar yang menyediakan nampan dropdown dengan daftar kegiatan, tetapi tidak menghitung jumlah kegiatan baru dan tidak lagi berintegrasi dengan Aturan. Akhirnya DLikesangat bagus sebagai penghitung dinamis, meskipun saat ini hanya menghitung Bendera dan menyediakan tautan ke daftar pengguna yang menandai. Mungkin dengan beberapa penyesuaian dapat digunakan melalui integrasi Aturan Bendera untuk melacak aktivitas terbaru (ditandai) dan tautan ke daftar kegiatan terbaru ini.

Apakah mungkin untuk mencapai fungsionalitas yang serupa dengan ini di Drupal 7? facebook

David Gurran 82
sumber
1
Ini bukan jawaban, saya memiliki persyaratan yang sama dan tidak ada modul yang cocok untuk fungsi. Jadi saya telah mencapai ini dengan blok khusus menampilkan jumlah notifikasi dengan drop down dan detail. Untuk pemberitahuan waktu nyata saya menggunakan modul nodejs untuk menambahkan pemberitahuan baru di dalamnya. Acara untuk nodejs akan dipanggil dari aturan dengan kode php.
j2r
Saya memiliki sesuatu seperti ini: drupal.stackexchange.com/questions/158932/…
drupaluser

Jawaban:

4

Pendekatan 1: Lencana Menu

Gunakan modul Lencana Menu untuk menambahkan pemberitahuan ke item menu dan / atau tab menu pilihan Anda. Berikut ini beberapa detail tentang hal itu (dari halaman proyeknya):

Menyediakan metode untuk menambahkan lencana gaya iOS ke item menu. (lihat tangkapan layar)

masukkan deskripsi gambar di sini

Menambahkan Lencana ke Menu

Setelah diaktifkan, buka Administration > Structure > Menus, dan klik "daftar tautan" di sebelah menu yang berisi item target. Klik "edit" di sebelah item dan pilih lencana untuk ditampilkan dengan kotak pilih Lencana Menu Tampilan.

Menambahkan Lencana ke Tab

Untuk menambahkan lencana ke tab menu, ada tab di bawah yang Administration > Structure > Menusdisebut "Tab Menu Lencana". Cari jalur router menu pada tab yang ingin Anda ubah, lalu pilih lencana dari kotak pilih yang sesuai.

Jenis Lencana

Modul ini mencakup lima contoh lencana, dan lencana baru dapat dibuat dengan mudah dengan Tampilan . Modul juga dapat memasok badge mereka sendiri dengan implementasi hook. Lihat file README.txt untuk detailnya.

Karena terintegrasi dengan modul Views , Anda pada dasarnya mengurangi solusi untuk semua jenis notifikasi menjadi sesuatu seperti "Cukup buat tampilan yang sesuai dengannya".

Tutorial video:

Pendekatan 2: Tumpukan pesan

Gunakan Stack Pesan , yang terdiri dari modul-modul ini (kutipan berasal dari halaman proyek modul):

  • Pesan :

    Modul Pesan adalah inti dari tumpukan pesan. Ini memungkinkan pencatatan dan menampilkan peristiwa sistem dalam sejumlah kasus penggunaan yang berbeda. Acara yang direkam dari waktu ke waktu kadang-kadang memanggil aliran aktivitas. Subtipe pesan yang dapat diekspor dapat dibuat untuk berbagai kasus penggunaan dengan bidang khusus dan mode tampilan (tampilan).

  • Pesan Beritahu .

    Modul ini menyediakan metode untuk mengirim pesan melalui plugin pemberi notifikasi. Message Notify dilengkapi dengan plugin untuk email dan SMS dan dapat diperluas ke mekanisme transportasi lain sebagaimana diperlukan.

  • Pesan Berlangganan .

    Dengan modul ini, pengguna yang berlangganan konten akan diberi tahu ketika terjadi peristiwa yang melibatkan konten itu. Modul ini memanfaatkan modul Bendera, yang menyediakan fungsionalitas berlangganan kepada pengguna.

Ini adalah komponen dasar dan dependensi dari tumpukan pesan:

masukkan deskripsi gambar di sini

Cukup banyak distribusi Drupal populer yang sudah diadopsi ke Pesan Stack ini, seperti Commerce Kickstart , Drupal Commons , ERPAL dan Open Atrium .

Jika Anda ingin melihat lebih dekat pada Message Stack di lingkungan Anda sendiri, maka bereksperimenlah sedikit dengan modul Answers (pengungkapan: Saya adalah co-maintainer), bersama dengan sub-modul Answers Notification , yang memungkinkan untuk masuk pengguna untuk berlangganan pertanyaan yang dipilih, sehingga mereka menerima pemberitahuan (menggunakan Stack Pesan ) ketika Pertanyaan menerima Jawaban.

Dan Message Stack akan membuat Anda diposisikan dengan baik untuk Drupal 8 juga (karena arsitektur berorientasi objek modul). Meskipun belum ada yang namanya 8.x-dev, repositori kode pesan sudah berisi sesuatu (belum untuk 2 modul lainnya). Saya menganggap wipbagian dari nama cabang singkatan dari 'Work In Progress'.

Pierre
sumber
will make you well positioned for Drupal 8 also.maksudmu di masa depan? Saya melihat tidak ada modul pesan yang memiliki versi Drupal 8, bahkan bukan dev.
Tidak ada Sssweat
1
Hei @NoSssweat ... Saya sedikit memperpanjang (kemudian akhir) jawaban saya untuk memperjelas bagian D8 itu.
Pierre.Vriens
Terima kasih banyak atas balasan kebaikan Anda @ Pierre.Vriens, saya akan memeriksa semua dokumen terkait dengan harapan bahwa saya akan memiliki gagasan yang jelas tentang tumpukan pesan ...
Charbel El Azzi
1
maksud saya, saya terbiasa tentang cara membuat sistem pemberitahuan berfungsi antara pengguna di situs web saya dan sekarang saya belajar lebih banyak tentang tumpukan pesan yang mana dari saya senang, tetapi saya masih bingung tentang bagaimana saya dapat merancang menu pemberitahuan drop down seperti itu .. .
Charbel El Azzi
1
Contoh lain untuk lebih memahami masalah saya: Lihat menu tarik turun ketika Anda mengarahkan kursor ke keranjang belanja di situs web kickstart 2 komersial (jika Anda terbiasa dengan distribusi kickstart) ... sistem tarik turun seperti yang saya cari di pertanyaan saya ... terima kasih sekali lagi atas waktu dan usaha Anda, sayang @ Pierre. Virens, Tuhan memberkati Anda.
Charbel El Azzi
3

Ada sepasang modul yang relatif baru yang saya pikir akan bagus untuk digunakan untuk ini: Pesan dan Pesan-beri tahu .

Pesan pada dasarnya adalah kerangka kerja untuk membuat "pesan", yang dalam kasus Anda akan menjadi item notifikasi. Satu hal yang keren adalah bahwa ini sebenarnya semua dibuat sebagai entitas, sehingga akan mudah untuk ditampilkan di blok dropdown, memiliki halaman Semua Pemberitahuan, serta memiliki bidang atau panji kustom yang mengindikasikan apakah mereka telah terlihat (atau baru). Anda kemudian dapat menghubungkan ini ke pemberitahuan email dengan modul Notifikasi Pesan .

Perhatikan bahwa mengintegrasikan ini ke situs Anda akan menjadi tugas pengembangan lebih dari tugas membangun situs. Modul ini memiliki API yang baik yang dapat digunakan dalam kaitan yang tepat, dll untuk membuat pesan saat diinginkan, tetapi saya tidak yakin bagaimana integrasi Aturan berjalan.

goron
sumber
3

Untuk integrasi waktu nyata Anda dapat menggunakan modul nodejs.

Modul ini mengintegrasikan Node.js dengan Drupal.

Ini menyediakan API yang dapat digunakan modul lain untuk menambahkan kemampuan waktu nyata ke Drupal, khususnya memungkinkan mendorong pembaruan untuk membuka klien yang terhubung.

RajneeshB
sumber