Konfigurácia
Publikovaný config/campaigns.php v plnom znení:
return [
'store' => env('CAMPAIGNS_STORE', \RoundlyConsulting\Campaigns\Stores\InMemoryCampaignStore::class),
'from-name' => env('CAMPAIGNS_FROM_NAME', ''),
'from-address' => env('CAMPAIGNS_FROM_ADDRESS', ''),
'recipients' => [
'only-verified' => env('CAMPAIGNS_ONLY_VERIFIED', false),
'contact-type' => env('CAMPAIGNS_RECIPIENT_CONTACT_TYPE', 'email'),
],
'sending-queue' => env('CAMPAIGNS_SENDING_QUEUE', 'default'),
'process-recipient-job' => \RoundlyConsulting\Campaigns\Jobs\SendCampaignEmail::class,
'notification' => env('CAMPAIGNS_NOTIFICATION'),
'notification-channel' => env('CAMPAIGNS_NOTIFICATION_CHANNEL', 'mail'),
];Všetky kľúče
| Kľúč | Predvolené | Env | Účel |
|---|---|---|---|
store | InMemoryCampaignStore::class | CAMPAIGNS_STORE | Kde sa kampane a príjemcovia uchovávajú — Contracts\CampaignStore. DatabaseCampaignStore::class ich ukladá do databázy; alebo nastavte vlastné úložisko. Hodnota, ktorá nie je triedou CampaignStore, vyhodí InvalidConfigurationException — nikdy sa nevráti k úložisku v pamäti. |
from-name | '' | CAMPAIGNS_FROM_NAME | Predvolené meno odosielateľa, keď kampaň odošlete bez ->from(). Východisková hodnota option DefaultFromName. |
from-address | '' | CAMPAIGNS_FROM_ADDRESS | Predvolená adresa odosielateľa, keď kampaň odošlete bez ->from(). Východisková hodnota option DefaultFromAddress. Ak zostane prázdna, SendCampaignEmail odosiela z globálnej adresy a mena mail.from vášho mailera. |
recipients.only-verified | false | CAMPAIGNS_ONLY_VERIFIED | Pri určovaní príjemcov preskočí vlastníkov a kontakty bez overeného kontaktu. Východisková hodnota OnlyVerifiedRecipients. Číta sa striktne: true/1/on/yes alebo false/0/off/no; čokoľvek iné vyhodí InvalidConfigurationException. |
recipients.contact-type | CAMPAIGNS_RECIPIENT_CONTACT_TYPE | Typ kontaktu, ktorý sa pre vlastníka použije bez ->viaContactType() — hodnota ContactType: email, phone, address, url, social alebo custom. Východisková hodnota DefaultRecipientContactType. Preklep vyhodí InvalidConfigurationException namiesto toho, aby sa čítal ako email. | |
sending-queue | default | CAMPAIGNS_SENDING_QUEUE | Fronta, na ktorej beží každý job doručenia príjemcovi — nasmerujte na ňu worker. Dávka jobov kampane sa na nej otvorí pri príprave kampane. Východisková hodnota option DefaultSendingQueue. Prázdna hodnota sa považuje za nenastavenú (default); hodnota, ktorá nie je reťazcom, vyhodí výnimku. |
process-recipient-job | SendCampaignEmail::class | — | Job spustený raz pre každého príjemcu. Musí implementovať Contracts\ProcessesCampaignRecipient — iná hodnota vyhodí InvalidConfigurationException pri spustení kampane, kým je ešte v stave Pending. |
notification | null | CAMPAIGNS_NOTIFICATION | Podtrieda Notifications\CampaignNotification, ktorú doručuje SendCampaignNotification. Akákoľvek iná trieda odoslanie zmarí a správa InvalidConfigurationException sa zaznamená pri príjemcovi. |
notification-channel | CAMPAIGNS_NOTIFICATION_CHANNEL | Kanál smerovania on-demand notifiable v SendCampaignNotification. Východisková hodnota option DefaultChannel. Prázdna hodnota sa považuje za nenastavenú (mail); hodnota, ktorá nie je reťazcom, vyhodí výnimku. |
Prostredie (env)
Každý kľúč okrem process-recipient-job číta env premennú, takže konfiguráciu publikujete len zriedka:
CAMPAIGNS_STORE='RoundlyConsulting\Campaigns\Stores\DatabaseCampaignStore'
CAMPAIGNS_FROM_NAME="Example Shop"
CAMPAIGNS_FROM_ADDRESS=[email protected]
CAMPAIGNS_ONLY_VERIFIED=false
CAMPAIGNS_RECIPIENT_CONTACT_TYPE=email
CAMPAIGNS_SENDING_QUEUE=campaigns
CAMPAIGNS_NOTIFICATION='App\Notifications\ProductLaunchNotification'
CAMPAIGNS_NOTIFICATION_CHANNEL=mailNázvy tried uzavrite do jednoduchých úvodzoviek. V dvojitých úvodzovkách phpdotenv číta každú spätnú lomku ako začiatok escape sekvencie — \C, \S ani \N medzi platné nepatria — a súbor .env odmietne načítať.
Striktné hodnoty
Kľúč, ktorý nie je nastavený — chýba, je null alebo je prázdny ako riadok CAMPAIGNS_SENDING_QUEUE= v hostiteľskej aplikácii —, použije svoju predvolenú hodnotu. Pri poliach odosielateľa je ňou '', ktorá ponechá odosielateľa mailera; pri notification žiadna. Hodnota, ktorá je nastavená, no nepoužiteľná, vyhodí RoundlyConsulting\PackageToolkit\Exceptions\InvalidConfigurationException s názvom kľúča, namiesto tichého návratu k predvolenej hodnote: trieda úložiska či jobu, ktorá neimplementuje svoj kontrakt, typ kontaktu, ktorý nie je hodnotou ContactType, fronta, kanál či odosielateľ, ktoré nie sú reťazcom, prepínač len overených príjemcov mimo true/1/on/yes a false/0/off/no.
Konfigurácia verzus uložené options
Predvolené nastavenia odosielania — odosielateľ, pravidlá príjemcov, fronta odosielania a kanál notifikácií — sa dajú meniť aj za behu ako options. Hodnota z konfigurácie je len východisková: uložená option ju prepíše a explicitné volanie buildera prepíše obe. Pozrite si časť Predvolené nastavenia odosielania.
Kampane bez odosielateľa
from-address je predvolene prázdna. Kampaň bez ->from() aj bez predvolenej from-address (či uloženej option DefaultFromAddress) sa aj tak odošle: SendCampaignEmail ponechá hlavičku From na mailer, takže e-mail odíde z globálnej adresy a mena mail.from. CAMPAIGNS_FROM_ADDRESS alebo ->from() nastavte, len ak majú kampane používať iného odosielateľa.
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 kryptomienOdoslaní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.