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

Open source

Notifications for Laravel

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

Prehľad

Typované notifikácie pre Laravel aplikácie so schránkou v aplikácii a e-mailom. Každý druh notifikácie zaregistrujete raz, z ktorejkoľvek funkcie ho pošlete jedným volaním a balík pre každého príjemcu rozhodne: smie záznam ešte vidieť, chce ho a na ktorom kanáli, nie je to to isté ako pred minútou, nemá práve noc, nemá to počkať na súhrn. Pripomienky sledujú dátum a eskalujú, keď ich nikto nepotvrdí, a rovnaké pravidlá môžu platiť aj pre notifikácie iných balíkov. Licencia MIT, postavené na vlastnom notifikačnom systéme Laravelu a balíkoch Roundly crypto, enums, options a package-toolkit — bez externej notifikačnej služby.

Čo získate

Typované druhy notifikácií

Každý druh notifikácie opíšete raz — malou triedou alebo cez define() — s kategóriou, kanálmi, prioritou, oknom, subjektom a háčikmi na vykreslenie.

Schránka, ktorá sa nezahltí

Desať udalostí k jednému subjektu v rámci okna je jedna položka s počtom 10 a posledným aktérom — s filtrom podľa kontextu a počtami neprečítaných pre každý priestor.

Preferencie v rukách používateľov

Pre každý druh, kategóriu a kanál, uložené pre každého používateľa. Povinné druhy sa nedajú stlmiť a celá obrazovka nastavení sa uloží celá alebo vôbec.

E-maily, ktoré rešpektujú ľudí

Zlučovanie na začiatku alebo na konci okna, tiché hodiny v časovom pásme používateľa, denné či týždenné súhrny, diskrétne e-maily a doručenie najviac raz.

Pripomienky podľa kalendára

60, 30 a 7 dní pred dátumom — posunú sa s dátumom, obnovia sa pri predĺžení, zastavia sa pri zmazaní a eskalujú, keď ich nikto nepotvrdí.

Prístup overený pri každom kroku

Vaše vlastné policies sa pýtajú pri odoslaní, vo fronte, po tichých hodinách, v súhrne aj pri každej pripomienke — kto prístup stratil, nedostane nič.

Fasáda, DI alebo akcie

Jedna fasáda Notifications, injektovateľný manažér alebo jednoúčelové akcie — a k tomu nahrávací fake, Pest expectations a voliteľné JSON API.

Dokumentácia

Použitie

Kde sa balík hodí — schvaľovanie v SaaS, obnovy zmlúv, schránky pre viac priestorov, bezpečnostné hlásenia a notifikácie iných balíkov.

Inštalácia

Inštalácia cez Composer, publikovanie oboch sád migrácií, plánovanie notifications:sweep každú minútu, typy kľúčov a príjemca User.

Konfigurácia

Každý kľúč config/notifications.php s env premennou a predvolenou hodnotou — kľúče, tabuľky, front, schránka, e-mail, tiché hodiny, súhrny, routes.

Druhy notifikácií

Každý druh notifikácie zaregistrujete raz — trieda NotificationType alebo fluentné define() — s každým háčikom, predvolenou hodnotou a payloadom.

Modely príjemcov a subjektov

ReceivesNotifications, HasNotificationReminders a kontrakty, ktoré určia časové pásmo, členov skupiny, vlastníka alebo popis kontextu.

Fasáda Notifications

Prehľad fasády Notifications — send, type(), for($subject), inbox(), preferences(), define(), accessory, sweep a prune — so všetkými metódami.

DI a akcie

Bez fasády: injektujte NotificationsManager alebo zavolajte jednoúčelovú akciu — každá verejná akcia so signatúrou execute() a cestou cez fasádu.

Odosielanie

send(), fluentné type()->…->send(), for($subject), kontexty, idempotencia cez once(), escalate(), rozposielanie, transakcie a SendResult.

Príjemcovia a prístup

Recipients::users, role, members, owner, using a merge, group resolver a recept pre teams, prísne kontroly prístupu a revoke().

Schránka

Zlučovanie v okne, kontexty, nemenné dotazy a počty, prečítanie, archív a mazanie, resources bez názvov tried, vysielanie a kanál inbox.

Preferencie

Preferencie používateľa pre kanály, kategórie a druhy, povinné druhy, matica nastavení, update() všetko alebo nič, uloženie cez options a zámky.

E-mail

Deduplikácia na začiatku alebo konci okna, životný cyklus doručenia, odoslanie najviac raz, vykreslenie, minimálny e-mail a resolver adries.

Tiché hodiny a časové pásma

Podržanie neurgentných e-mailov počas miestnych tichých hodín používateľa, určenie časového pásma, zmena času a predvoľba pre ostatných.

Súhrny

Notifikácie s nízkou prioritou v jednom dennom alebo týždennom e-maile v miestnom čase — termíny, obdobia, behy, zmeny frekvencie a náhľad.

Pripomienky a eskalácie

Reminder::before/after/at, while(), rearm(), acknowledgedOnRead(), trait HasNotificationReminders, jednorazové pripomienky, odosielanie a eskalácie.

Notifikácie iných balíkov

Namapujte notifikácie iných balíkov na vlastné druhy, aby platili preferencie, deduplikácia, tiché hodiny a schránka — alebo ich potlačte.

JSON API

Voliteľné JSON API — všetkých 11 routes pre schránku, preferencie a druhy prihláseného používateľa s filtrami, telami, chybami a resources.

Udalosti

Každá udalosť, ktorú balík spúšťa po commite — schránka, e-mail, súhrn, pripomienka, eskalácia, preferencia, preskočenie a chyby interop.

Výnimky

Každá doménová výnimka so stabilným kódom a HTTP stavom, výnimky konfigurácie a ich mapovanie vo vlastnom API.

Artisan príkazy

notifications:sweep, prune, types, doctor, install a reminders:sync — čo robia, čo kontroluje doctor a ekvivalenty na fasáde.

Testovanie

Notifications::fake() zaznamenáva bez vykonania — každá asercia, zaznamenané operácie, passthrough(), Pest expectations, skutočný postup a factories.

Požiadavky

PHP 8.4+, Laravel 13, MySQL alebo PostgreSQL (SQLite pre testy), queue worker, plánovač a štyri balíky Roundly.

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.