NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky

Open source

Messages for Laravel

Inštalácia
composer require roundly-consulting/messages-for-laravel
Vyžaduje: PHP ^8.4 · Laravel ^12.0|^13.0

Prehľad

Základ pre priame správy a skupinové chaty v Laraveli. Dajte akémukoľvek Eloquent modelu API na správy na jeden riadok cez fasádu Messages alebo trait modelu — priame konverzácie 1:1, skupinové vlákna s rolami, odpovede, súkromné prílohy, potvrdenia o prečítaní a počty neprečítaných — reagujte na bežné Laravel udalosti a každú zmenu voliteľne vysielajte v reálnom čase. Licencia MIT, postavené len na Laraveli a vlastných balíkoch Roundly pre enumy, médiá a package-toolkit — bez runtime závislostí tretích strán.

Čo získate

Priame správy a skupiny na riadok

conversationWith() nájde alebo vytvorí jedinú priamu konverzáciu dvoch modelov; startConversationWith() otvorí skupinu. Účastníci sú polymorfní.

Roly a moderovanie

Roly vlastník, administrátor a člen v skupinových vláknach, prevod vlastníctva, premenovanie a archivácia — s typovanými výnimkami, mimo priamych správ.

Potvrdenia o prečítaní a schránka

Ukazovatele prečítania pre každého účastníka, počty neprečítaných, zoznamy „videli“ a stránkovaná schránka bez N+1 dopytov.

Odpovede a súkromné prílohy

Snímky citácií, ktoré prežijú úpravu aj zmazanie, a súkromné prílohy dostupné len cez krátkodobé podpísané URL.

Udalosti a voliteľný realtime

Pri každom zápise sa spustia bežné Laravel udalosti. Jednou env premennou zapnete broadcasting vlákien, správ, prečítaní a písania cez Reverb, Pusher či Ably.

Notifikácie a API resources

Voliteľné notifikácie o nových správach cez kanály Laravelu a hotové JSON resources pre API alebo SPA backend.

Fasáda, DI alebo akcie — a zaznamenávajúci fake

Použite fasádu Messages, vložte si MessagesManager alebo spustite akciu. Messages::fake() zaznamená každé volanie, nech prišlo akoukoľvek cestou.

Dokumentácia

Inštalácia

Inštalácia cez Composer, publikovanie migrácií balíka messages aj media-library a spustenie migrácií.

Konfigurácia

Každý konfiguračný kľúč a jeho predvolená hodnota — modely, typy kľúčov, verejnosť, prílohy, roly, notifikácie, náhľady, prune a broadcasting.

Typy kľúčov

Zvoľte kľúče bigint, UUID alebo ULID pre tabuľky správ aj pre morph stĺpce odosielateľov a účastníkov — ešte pred migráciou.

Príprava modelov

Implementujte ParticipatesInMessaging a pridajte HasMessaging každému modelu, ktorý posiela správy alebo sa zúčastňuje vlákien.

Fasáda Messages

Celé API na jednej fasáde — buildery vlákien a správ, priame konverzácie, prečítanie, zoznamy, handly vlákna, účastníkov a správy a prune.

DI, akcie, DTO a výnimky

Vložte si MessagesManager alebo spúšťajte akcie sami — mapa fasáda → akcia, DTO, ktoré akcie prijímajú, a typované výnimky, ktoré vyhadzujú.

Priame správy

Jedným volaním nájdite alebo vytvorte jediné vlákno 1:1 medzi dvoma účastníkmi — vždy súkromné, nikdy duplicitné.

Skupinové konverzácie

Zakladajte pomenované skupinové vlákna, nastavujte príznaky verejnosti a pridávania, pridávajte a odoberajte účastníkov.

Roly a oprávnenia

Roly vlastník, administrátor a člen v skupinových vláknach — kto smie pridávať, odoberať, premenovať, archivovať a moderovať.

Odpovede a citácie

Odpovedajte na ľubovoľnú správu v tom istom vlákne; snímka citácie sa uloží k odpovedi a prežije úpravy aj zmazanie.

Prílohy

Súkromné prílohy postavené na media-library — pošlite ich so správou, načítajte a sprístupnite cez krátkodobé podpísané URL.

Schránka a potvrdenia o prečítaní

Stránkovaná schránka bez N+1 dopytov s počtom neprečítaných pre každé vlákno, ukazovatele prečítania a zoznamy „videli“.

Úpravy a systémové správy

Upravujte správy a rušte ich odoslanie s typovanými poistkami a zapisujte preložiteľné systémové správy pre ľubovoľný jazyk.

Udalosti

Bežné Laravel udalosti sa spúšťajú z každého zápisu — s broadcastingom aj bez neho — pre notifikácie, indexovanie a logy aktivity.

Broadcasting

Vysielajte vlákna, účastníkov, správy a písanie naživo cez Reverb, Pusher či Ably — predvolene vypnuté, kanály aj názvy konfigurovateľné.

Notifikácie

Voliteľne premeňte každú novú správu na Laravel notifikáciu pre ostatných účastníkov vlákna — vaša trieda, vaše kanály.

Modely a dopyty

Modely Thread, Message a Participant — query scopes, vzťahy, pomocníci, stránkované zoznamy a výmena za vlastné podtriedy.

API resources

Hotové JSON resources pre vlákna, správy a účastníkov — len bezpečné polia vrátane stavu prečítania a údajov o odpovedi.

Artisan príkazy

Mažte staré správy kvôli uchovávaniu údajov či súkromiu cez messages:prune a skontrolujte konfiguráciu cez php artisan about.

Testovanie

Messages::fake() zaznamená každú operáciu na overenie, k tomu stavy factories, trait InteractsWithMessaging a Pest expectations.

Požiadavky

PHP 8.4+, Laravel 12 alebo 13 a tri sesterské balíky Roundly, ktoré sa nainštalujú automaticky.

Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

Ďalšie spôsoby podpory vrátane kryptomien

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.