[Unit] # ============================================================================= # ShiftBridge V-Connect PBX — Outbound Campaign Dialler Worker # ============================================================================= # Runs the local dialler tick loop (php artisan dialer:work) that originates # campaign calls and enforces pacing/safety. # # SAFETY: This unit is installed but NOT started/enabled automatically. It is # only started by the deploy/update flow when the dialler feature flag is # enabled for this unit. The worker itself also performs no calling while the # feature flag is off or the kill switch is active, so an accidental start is # still inert. # ============================================================================= Description=ShiftBridge PBX Outbound Campaign Dialler Worker After=network.target mariadb.service asterisk.service Wants=asterisk.service [Service] Type=simple User=www-data Group=www-data WorkingDirectory=/var/www/html ExecStart=/usr/bin/php /var/www/html/artisan dialer:work # Restart on unexpected failure; the worker's restart reconciliation prevents # double-dialling after a crash. Restart=on-failure RestartSec=5 # Give in-flight ticks a moment to finish on stop (controlled stop for updates). TimeoutStopSec=30 KillSignal=SIGTERM [Install] WantedBy=multi-user.target