Laravel Messenger — це пакет, призначений для додавання повної системи обміну повідомленнями користувачам до вашої програми Laravel. Нижче наведено деякі ключові функції та етапи встановлення.
Особливості
- Кілька бесід на користувача: користувачі можуть брати участь у кількох бесідах одночасно.- Необов’язковий цикл: додаткові користувачі можуть бути включені в кожне нове повідомлення.
- Перегляд останнього повідомлення: доступне останнє повідомлення для кожного потоку.
- Гнучке використання: запровадьте власний контроль доступу.
- Загальне використання: підтримуються відкриті ланцюжки, груповий обмін повідомленнями та обмін повідомленнями один на один[1].
Установка
1. Laravel 4.x:- Інструкції зі встановлення доступні на GitHub.
- Додайте постачальника послуг до `config/app.php` у розділі `providers`.
- Опублікуйте файл конфігурації.
- Створіть таблицю «користувачі», якщо необхідно.
- Публікація міграцій.
- Запустіть `php artisan migrate`, щоб застосувати міграції.
- Додайте властивість `Messagable` до вашої моделі користувача[1].
2. Laravel 5.x:
- Запустіть `composer require cmgmyr/messenger`.
- Додайте постачальника послуг до `config/app.php` у розділі `providers` (необов'язково для Laravel 5.5).
- Опублікуйте файл конфігурації.
- Створіть таблицю «користувачі», якщо необхідно.
- Публікація міграцій.
- Запустіть `php artisan migrate`, щоб застосувати міграції.
- Додайте властивість `Messagable` до вашої моделі користувача[1].
Приклади проектів
- RTippin/messenger: цей пакет надає повний пакет месенджерів із обміном повідомленнями в реальному часі, реакціями, вкладеннями тощо. Він підтримує кілька моделей і включає такі функції, як приватні та групові потоки, реакції на повідомлення та заплановані команди[2].Використання
- cmgmyr/laravel-messenger: цей пакет є простішим і гнучкішим, що дозволяє реалізувати власний контроль доступу. Він підтримує кілька бесід для кожного користувача та включає такі функції, як перегляд останнього повідомлення для кожного потоку[1].Повідомлення в реальному часі
- RTippin/messenger: цей пакет підтримує обмін повідомленнями в реальному часі за допомогою веб-сокетів. Він включає такі функції, як обмін повідомленнями в реальному часі між кількома моделями та оновлення в реальному часі [2].Інтеграція
- Інтеграція Laravel Messenger: цей приклад демонструє, як інтегрувати Laravel Messenger із системою групового чату, включаючи створення групового чату та надсилання файлів[5].Підручники
- Навчальний посібник із Laravel Messenger: це відео на YouTube містить базові відомості про Laravel Messenger і те, як налаштувати його у своїй програмі[4].Додаткові поради
- Опитування проти веб-сокетів: під час реалізації обміну повідомленнями в реальному часі ви можете використовувати опитування або веб-сокети. Опитування передбачає періодичні запити від інтерфейсу до бекенда, тоді як веб-сокети підтримують постійне з’єднання для оновлень у реальному часі[3].Ці пакети та навчальні посібники можуть допомогти вам інтегрувати систему обміну повідомленнями у вашу програму Laravel.
цитати:[1] https://github.com/cmgmyr/laravel-messenger
[2] https://github.com/RTippin/messenger
[3] https://www.reddit.com/r/laravel/comments/u39oe5/messenger_chat_package_for_laravel/?rdt=47155
[4] https://www.youtube.com/watch?v=UoBb1751tAM
[5] https://laracasts.com/discuss/channels/general-discussion/laravel-messenger-integration