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

Open source

Campaigns for Laravel

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

Prehľad

Pošlite jednu správu mnohým príjemcom z ľubovoľnej Laravel aplikácie. Campaigns for Laravel obaľuje vlastné fronty a dávky jobov Laravelu do fluent buildera: vytvorte kampaň, adresujte ju e-mailovým adresám, kontaktom alebo modelom vlastníkov a odošlite — jedna dávka na kampaň, jeden job vo fronte na príjemcu, so sledovaním priebehu, udalosťami životného cyklu a možnosťou zrušenia. Doručovanie je vymeniteľné (e-mail, notifikácie Laravelu alebo vlastný job) a úložisko tiež: predvolene v pamäti, s databázou po jednej zmene konfigurácie. Licencia MIT a minimum závislostí — Laravel a balíky Roundly contacts, options, enums a package-toolkit, žiadne externé SDK na rozosielanie.

Čo získate

Fasáda, handle a fake

Campaigns::create()->to()->dispatch() v jednej reťazi, handle pre každú kampaň, DI alebo samostatné akcie — a Campaigns::fake() zaznamená každý zápis.

Dávky jobov vo fronte

Jedna dávka jobov Laravelu na kampaň a jeden job vo fronte na príjemcu. Neúspešné doručenie nezastaví ostatné a bežiace odosielanie môžete zrušiť.

Priebeh a udalosti

Stav s počítadlami doručených, neúspešných, čakajúcich a všetkých, percentage() a sedem udalostí pre kampane aj jednotlivých príjemcov.

Vymeniteľné doručovanie

Predvolene HTML e-mail, notifikácie Laravelu pre SMS či push, alebo vlastný job pre akýkoľvek iný kanál.

Príjemcovia z kontaktov

->to() prijíma kontakty z contacts-for-laravel aj vlastníkov s HasContacts, s pravidlami pre overené kontakty a typ kontaktu.

Nastavenia meniteľné za behu

Odosielateľ, fronta odosielania, kanál a pravidlá príjemcov sú typované options — uložená hodnota prepíše konfiguráciu bez nasadenia.

Voliteľná perzistencia

Predvolene v pamäti, databázové úložisko po jednej zmene env, alebo vlastné úložisko za kontraktom CampaignStore.

Dokumentácia

Inštalácia

Inštalácia cez Composer, migrácie balíkov options a contacts a publikovanie konfigurácie a tabuliek kampaní len vtedy, keď ich potrebujete.

Konfigurácia

Každý konfiguračný kľúč, predvolená hodnota a env premenná — úložisko, odosielateľ, pravidlá príjemcov, fronta, job doručenia a kanál notifikácií.

Fasáda Campaigns

Všetko cez jednu fasádu — create, prepare, start, cancel, find, all, handle pre jednu kampaň, settings() a fake().

DI a akcie

Namiesto fasády injektujte CampaignManager alebo priamo spúšťajte akcie prípravy, spustenia, zrušenia a príjemcov — s mapou fasáda → akcia.

Odoslanie kampane

Vytvorte, adresujte a odošlite kampaň cez fluent fasádu Campaigns — alebo ju pripravte teraz a spustite neskôr.

Príjemcovia

Pridávajte príjemcov ako reťazce, objekty CampaignRecipient či iterovateľné zoznamy — aj veľké zoznamy streamované z lazy dopytu.

Príjemcovia z kontaktov

Adresujte kampane z kontaktov contacts-for-laravel a vlastníkov s HasContacts, s pravidlami pre overené kontakty a typ kontaktu.

Priebeh a vyhľadávanie

Vyhľadajte kampaň podľa UUID, čítajte stav, počítadlá a percento, prechádzajte zoznam kampaní a zrušte bežiace odosielanie.

Stavy kampane

Životný cyklus CampaignStatus od Created po koncový stav, udalosť každého prechodu a pomocné metódy enumu.

Hodnotové objekty

Campaign, CampaignRecipient a CampaignProgress — konštruktory, polia a tvar ich toArray().

Kanály doručenia

Doručovanie HTML e-mailom cez SendCampaignEmail alebo cez notifikácie Laravelu so SendCampaignNotification.

Vlastné joby doručenia

Implementujte ProcessesCampaignRecipient a doručujte cez SMS, push či iný kanál so zrušením a evidenciou chýb bezpečnými pre dávky.

Predvolené nastavenia odosielania

Predvolené nastavenia odosielania meniteľné za behu cez options-for-laravel — triedy, kľúče registra, hodnoty z konfigurácie a priorita.

Úložiská kampaní

Kde kampane žijú — kontrakt CampaignStore, úložisko v pamäti a v databáze a pripojenie vlastného úložiska.

Databázové úložisko

Prechod na DatabaseCampaignStore — schéma, Eloquent modely, factories a pravidlo UUID pre uložené kampane.

Fronty a dávky

Ako sa kampane mapujú na dávky jobov Laravelu — fronta odosielania, workery, neúspešné doručenia, zrušenie a obmedzenie úložiska v pamäti.

Udalosti

Sedem udalostí životného cyklu a príjemcov s ich dátami — pre logovanie, dashboardy, metriky a webhooky.

Artisan príkazy

Vypíšte kampane s priebehom, zrušte kampaň podľa UUID a skontrolujte nastavenie cez php artisan about.

Výnimky

CampaignNotFound, CampaignAlreadyExists, InvalidCampaignTransition, RecipientNotFound, chyby konfigurácie a argumentov buildera — a kedy nastávajú.

Testovanie

Zaznamenajte každý zápis cez Campaigns::fake() a overte vytvorenie, spustenie, zrušenie aj doručenie — alebo spustite skutočný tok nad fake dávkou.

Požiadavky

PHP 8.4+, Laravel 12 alebo 13, štyri sprievodné balíky Roundly, fronta s dávkami jobov a mailer alebo kanál notifikácií.

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.