Ce package vous permettra d'ajouter un système de messagerie utilisateur complet dans votre application Laravel. Il s'agit d'un Laravel Chatmessenger très intuitif avec des fonctionnalités supplémentaires telles que le nombre maximum de participants dans une conversation, les fils joués et un lien de partage de médias sociaux unique pour inviter les utilisateurs à une conversation (autrement connu sous le nom de fil dans ce package).

Si vous avez trouvé cela utile et que vous souhaitez acheter aux mainteneurs un café (ou une Tesla, nous ne sommes pas difficiles), n'hésitez pas à le faire.
Ou en achetant des produits et des marchandises sur Marketplace.
Ce financement est utilisé pour maintenir le projet et ajouter de nouvelles fonctionnalités dans le style de code ainsi que d'autres référentiels open source.
| Version Laravel | Compatible? |
|---|---|
| 11.x | Oui! (^ 1.5.0) |
| 10.x | Oui! (^ 1.4.0) |
| 9.x | Oui! (^ 1.3.0) |
| 8.x | Oui! (^ 1.3.0) |
| 7.x | Oui! (^ 1.3.0) |
| 6.x | Oui! (^ 1.2.0) |
| 5.8 | Oui! |
| 5.7 | Oui! |
| 5.6 | Oui! |
| Version Laravel | Branche compatible |
|---|---|
| 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] |
Continuez à voter pour une version Tailwind / Vue.js / Vuerouter du projet
Des instructions d'installation pour Laravel 4 peuvent être trouvées ici.
composer require syntaxlexx/chatmessengercomposer require syntaxlexx/[email protected]Ou placer manuellement dans Composer.json:
" require ": {
" syntaxlexx/chatmessenger": " ^1.0 "
}Courir:
composer update
Remarque : Laravel Messenger prend en charge la découverte du package. Si vous utilisez Laravel 5.5 et au-dessus, sautez cette pièce.
Ajoutez le fournisseur de services à config/app.php sous providers :
' providers ' => [
Lexx ChatMessenger ChatMessengerServiceProvider::class,
],Publier la configuration:
php artisan vendor:publish -- provider ="Lexx ChatMessenger ChatMessengerServiceProvider " --tag= " config"Mettre à jour le fichier de configuration pour référencer votre modèle d'utilisateur:
config/chatmessenger.php Créez une table users si vous n'en avez pas déjà. Si vous en avez besoin, la migration par défaut de Laravel sera satisfaisante.
(Facultatif) Définir les noms des tables de base de données dans le fichier de configuration du package si vous ne souhaitez pas utiliser ceux par défaut:
' messages_table ' => ' lexx_messages ' ,
' participants_table ' => ' lexx_participants ' ,
' threads_table ' => ' lexx_threads ' ,Publier des migrations:
php artisan vendor:publish --provider="LexxChatMessengerChatMessengerServiceProvider" --tag="migrations"
Migrez votre base de données:
php artisan migrate
Ajoutez le trait à votre modèle d'utilisateur:
use Lexx ChatMessenger Traits Messagable ;
class User extends Authenticatable {
use Messagable;
}Ce package utilise Pusher / Pusher-Php-Server qui fournit des services Pusher hors de la boîte. Tout ce que vous avez à faire est de nécessiter le package, d'enregistrer les fournisseurs de services, de publier le package du fournisseur, et c'est tout! Vous êtes prêt à partir.
Veuillez consulter la section Exemples pour une utilisation détaillée.
Depuis que Pusher HTTP Laravel a été obsolète, la démo actuelle utilise les dernières tendances de Laravel 5/6 de la diffusion via les événements. Découvrez la démo pour le voir en action. Il devient plus gérable et expressif de configurer les canaux individuellement.
Si vous prévoyez de migrer vers Laravel 6, le package de Laravel HTTP LARALL PUSHER vous interdit en raison de problèmes de dépendance. Vous devrez simplement créer un événement pour licencier le message de diffusion et une chaîne de diffusion. Vous pouvez vérifier la démo pour une utilisation pratique.
Comme indiqué dans ce numéro, la propriété étoilée a été déplacée de la table threads à la table participants car elle est beaucoup plus logique là-bas. (Crédits à Snarcraft).
Exécutez
php artisan vendor:publish --provider="LexxChatMessengerChatMessengerServiceProvider" --tag="migrations"pour copier le fichier de migration, puis exécutezphp artisan migrate.
Mettre en vedette un fil est aussi simple que d'appeler la méthode star() sur le fil. Si aucun utilisateur n'est passé, il est par défaut à l'utilisateur actuellement connecté. Le même cas appliqué à un fil de discussion impartial. $thread->unstar() .
Vérifiez la démo du code source ici
Vérifiez la démo en direct ici
Pour obtenir une image claire de son fonctionnement, ouvrez deux à quatre navigateurs (mode privé / incognito est parfait pour ce cas) et connectez-vous avec différents comptes.

Nous avons une nouvelle version de démonstration qui présente la pile commune de Laravel Jetsstream + Inertia.

CHATMESSENGER_PARTICIPANT_AKA . Pour une gestion plus facile, vous pouvez simplement ignorer la réussite des colonnes [] pour une colonne spécifique.Vous pouvez également vérifier les modèles individuels pour plus d'informations sur les fonctions. Ce package utilise également des lunettes au cas où vous auriez besoin de plus de contrôle sur vos requêtes.
Les suggestions sont les bienvenues et toutes les contributions sont très appréciées. Si vous vous sentez un peu timide, n'hésitez pas à envoyer un e-mail à Lexx Yungcarter.
Si vous découvrez des problèmes liés à la sécurité, veuillez utiliser le suivi du problème ou mieux encore, envoyez un e-mail à Lexx Yungcarter.
Nous sommes sur le point de libérer une version Vue.js + des exemples pour ceux d'entre vous qui nécessitent un coup de pouce en configurant rapidement des salles de chat / messages dans votre application.
Donc:-
Si vous êtes si grand de fournir des échantillons de code, n'hésitez pas à partager votre code / référentiel avec nous. Merci d'avance!
Cet ensemble a utilisé CMGMYR / Laravel-Messager comme point de départ, qui à son tour a utilisé initialement Andreasheiberg / Laravel-Messager comme point de départ.