Core system: - AnalyticsUniqId entity (visitor identity with device/os/browser parsing) - AnalyticsEvent entity (page views linked to visitor) - POST /t endpoint with AES-256-GCM encrypted payloads - HMAC-SHA256 visitor hash for anti-tampering - Async processing via Messenger - JS module: auto page_view tracking, setAuth for logged users - Encryption key shared via data-k attribute on body - setAuth only triggers when cookie consent is accepted - Clean CSP: remove old tracker domains (Cloudflare, Umami) 100% first-party, no cookies, invisible to adblockers, RGPD-friendly. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
27 lines
846 B
YAML
27 lines
846 B
YAML
framework:
|
|
messenger:
|
|
failure_transport: failed
|
|
|
|
transports:
|
|
# https://symfony.com/doc/current/messenger.html#transport-configuration
|
|
async:
|
|
dsn: '%env(MESSENGER_TRANSPORT_DSN)%'
|
|
retry_strategy:
|
|
max_retries: 3
|
|
multiplier: 2
|
|
failed: 'doctrine://default?queue_name=failed'
|
|
# sync: 'sync://'
|
|
|
|
default_bus: messenger.bus.default
|
|
|
|
buses:
|
|
messenger.bus.default: []
|
|
|
|
routing:
|
|
Symfony\Component\Mailer\Messenger\SendEmailMessage: async
|
|
Symfony\Component\Notifier\Message\ChatMessage: async
|
|
Symfony\Component\Notifier\Message\SmsMessage: async
|
|
|
|
App\Message\MeilisearchMessage: async
|
|
App\Message\AnalyticsMessage: async
|