Files
Funnel_Wiki/Email-kampane.md
2026-04-22 13:01:47 +02:00

68 lines
2.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Email kampaně
## Přehled
Systém podporuje hromadné emailové kampaně s plánováním, schvalováním, sledováním otevření a kliků.
## Klíčové modely
| Model | Tabulka | Popis |
|-------|---------|-------|
| `EmailCampaign` | `email_campaigns` | Definice kampaně |
| `EmailCampaignSend` | `email_campaign_sends` | Jeden naplánovaný email jednomu příjemci |
| `EmailTemplate` | `email_templates` | HTML šablona emailu |
| `EmailCategory` | `email_categories` | Kategorie (pro odhlašování per kategorie) |
| `EmailCategoryUnsubscribe` | | Odhlášení z konkrétní kategorie |
| `ContactCampaignStat` | | Statistiky kampaně per kontakt |
| `CampaignEventStat` | | Agregované statistiky eventů |
| `CampaignCartDailyStat` | | Denní statistiky košíků per kampaň |
## Životní cyklus kampaně
```
1. Vytvoření kampaně (EmailCampaign)
2. Výběr segmentu + šablony
3. Naplánování (schedule) nebo odeslání ihned (send-now)
4. PrepareEmailCampaignSendsJob → vytvoří EmailCampaignSend záznamy
5. Schválení (approval workflow)
6. BatchSendEmailCampaignSendsJob → SendEmailCampaignSendJob → odeslání
7. Tracking otevření (pixel /e/o/{token})
8. Tracking kliků (ftclid parametr v odkazech)
```
## Odesílání
Kampaně odesílá command `SendDueEmailCampaigns` (cron). Selhat může přes `RetryFailedEmailCampaignSends`.
Podporované mail drivery:
- **SMTP** standardní Laravel mailer
- **Microsoft Graph** `MicrosoftGraphMailService` (přes Microsoft 365 API)
## Šablony
Editor šablon je dostupný na `/admin/email-templates/editor/{id}`. Šablony podporují:
- HTML s inline CSS (`tijsverkoyen/css-to-inline-styles`)
- Placeholdery (`{{contact.email}}`, `{{contact.name}}` apod.)
- Unsubscribe link
## Tracking
- **Otevření** 1×1px tracking pixel `/e/o/{token}``EmailOpenTrackingController`
- **Kliky** `ftclid` parametr v odkazech; při kliknutí `collect.js` automaticky identifikuje návštěvníka a propojí ho s kontaktem
## Schvalování
Před odesláním může být vyžadováno schválení přes `EmailSendApprovalController`:
- `GET /email-sends/pending` seznam čekajících
- `POST /email-sends/{send}/approve` schválení
- `POST /email-sends/{send}/reject` zamítnutí
## Statistiky
Rebuild statistik:
```bash
php artisan rebuild:campaign-event-stats
php artisan rebuild:campaign-cart-daily-stats
php artisan rebuild:contact-campaign-stats
```