Paket ini akan memungkinkan Anda untuk menambahkan sistem pesan pengguna lengkap ke dalam aplikasi Laravel Anda. Ini adalah Laravel Chatmessenger yang sangat intuitif dengan fitur -fitur tambahan seperti jumlah peserta maksimum dalam percakapan, utas yang dibintangi, dan tautan berbagi media sosial yang unik untuk mengundang pengguna ke percakapan (atau dikenal sebagai utas dalam paket ini).

Jika Anda menemukan ini berguna dan ingin membeli kopi (atau Tesla, kami tidak pilih -pilih), jangan ragu untuk melakukannya.
Atau dengan membeli produk dan barang dagangan di Marketplace.
Pendanaan ini digunakan untuk mempertahankan proyek dan menambahkan fitur baru ke dalam gaya kode plus repositori open-source lainnya.
| Versi Laravel | Kompatibel? |
|---|---|
| 11.x | Ya! (^1.5.0) |
| 10.x | Ya! (^1.4.0) |
| 9.x | Ya! (^1.3.0) |
| 8.x | Ya! (^1.3.0) |
| 7.x | Ya! (^1.3.0) |
| 6.x | Ya! (^1.2.0) |
| 5.8 | Ya! |
| 5.7 | Ya! |
| 5.6 | Ya! |
| Versi Laravel | Cabang yang kompatibel |
|---|---|
| 5.5 | V1 [1.0.8] |
| 5.4 | V1 [1.0.8] |
| 5.3 | V1 [1.0.8] |
| 5.2 | V1 [1.0.8] |
| 5.1 | V1 [1.0.8] |
Pergi ke Voting untuk Proyek Tailwind/Vue.js/Vuerouter
Instruksi pemasangan untuk Laravel 4 dapat ditemukan di sini.
composer require syntaxlexx/chatmessengercomposer require syntaxlexx/[email protected]Atau tempatkan secara manual di Composer.json:
" require ": {
" syntaxlexx/chatmessenger": " ^1.0 "
}Berlari:
composer update
Catatan : Laravel Messenger mendukung penemuan paket. Jika menggunakan Laravel 5.5 ke atas, lewati bagian ini.
Tambahkan penyedia layanan ke config/app.php di bawah providers :
' providers ' => [
Lexx ChatMessenger ChatMessengerServiceProvider::class,
],Publikasikan Konfigurasi:
php artisan vendor:publish -- provider ="Lexx ChatMessenger ChatMessengerServiceProvider " --tag= " config"Perbarui file konfigurasi untuk referensi model pengguna Anda:
config/chatmessenger.php Buat tabel users jika Anda belum memilikinya. Jika Anda membutuhkannya, migrasi Laravel default akan memuaskan.
(Opsional) Tentukan nama tabel basis data dalam file konfigurasi paket jika Anda tidak ingin menggunakan yang default:
' messages_table ' => ' lexx_messages ' ,
' participants_table ' => ' lexx_participants ' ,
' threads_table ' => ' lexx_threads ' ,Publikasikan migrasi:
php artisan vendor:publish --provider="LexxChatMessengerChatMessengerServiceProvider" --tag="migrations"
Migrasi database Anda:
php artisan migrate
Tambahkan sifat ke model pengguna Anda:
use Lexx ChatMessenger Traits Messagable ;
class User extends Authenticatable {
use Messagable;
}Paket ini menggunakan server Pusher/Pusher-PHP yang menyediakan layanan pendorong di luar kotak. Yang harus Anda lakukan adalah meminta paket, mendaftarkan penyedia layanan, menerbitkan paket vendor, dan hanya itu! Anda baik -baik saja.
Silakan periksa bagian contoh untuk penggunaan contoh terperinci.
Sejak pendorong http Laravel telah sudah usang, demo saat ini menggunakan tren penyiaran Laravel 5/6 terbaru melalui acara. Lihat demo untuk melihatnya beraksi. Menjadi lebih mudah dikelola dan ekspresif untuk mengonfigurasi saluran secara individual.
Jika Anda berencana untuk bermigrasi ke Laravel 6, paket HTTP Laravel Pusher akan melarang Anda karena masalah ketergantungan. Anda hanya perlu membuat acara untuk menembakkan pesan siaran, dan saluran untuk penyiaran. Anda dapat memeriksa demo untuk penggunaan praktis.
Seperti yang ditunjukkan dalam masalah ini, properti berbintang telah dipindahkan dari tabel threads ke tabel participants karena jauh lebih masuk akal di sana. (Kredit ke Snarcraft).
Jalankan
php artisan vendor:publish --provider="LexxChatMessengerChatMessengerServiceProvider" --tag="migrations"untuk menyalin file migrasi, kemudian menjalankanphp artisan migrate.
Dibintangi utas semudah memanggil metode star() di utas. Jika tidak ada UserId yang dilewati, itu default kepada pengguna yang saat ini masuk. Kasus yang sama diterapkan untuk melepaskan utas. $thread->unstar() .
Periksa demo kode sumber di sini
Periksa demo langsung di sini
Untuk mendapatkan gambaran yang jelas tentang cara kerjanya, buka dua hingga empat browser (mode pribadi/incognito sangat cocok untuk kasus ini) dan login dengan akun yang berbeda.

Kami memiliki versi demo baru yang menampilkan tumpukan jetstream + inersia umum.

CHATMESSENGER_PARTICIPANT_AKA dan disetel ke kolom tertentu. Kemudian Anda dapat mengabaikan $ kolom $)).Anda juga dapat memeriksa model individual untuk informasi lebih lanjut tentang fungsi tersebut. Paket ini juga menggunakan lingkup jika Anda membutuhkan lebih banyak kontrol atas pertanyaan Anda.
Saran dipersilakan dan setiap kontribusi apa pun sangat dihargai. Jika merasa sedikit malu, jangan ragu untuk mengirim email ke Lexx Yungcarter.
Jika Anda menemukan masalah terkait keamanan, silakan gunakan pelacak masalah atau lebih baik lagi, kirim email ke Lexx Yungcarter.
Kami berada di ambang melepaskan versi Vue.js + contoh bagi Anda yang membutuhkan peningkatan dengan cepat mengatur ruang obrolan/pesan di aplikasi Anda.
Jadi:-
Jika Anda sangat besar untuk memberikan sampel kode, jangan ragu untuk membagikan kode/repositori Anda dengan kami. Terima kasih sebelumnya!
Paket ini menggunakan CMGMyr/Laravel-Messenger sebagai titik awal, yang pada gilirannya awalnya menggunakan Andreasheiberg/Laravel-Messenger sebagai titik awal.