This commit is contained in:
2026-04-22 13:01:47 +02:00
commit 803acf3da3
14 changed files with 1101 additions and 0 deletions

83
Integrace.md Normal file
View File

@@ -0,0 +1,83 @@
# Integrace
## SmartEmailing
CRM/mailing systém SmartEmailing.
**Klient:** `App\Services\Integrations\SmartEmailingClient`
**Synchronizace kontaktů:** `SmartEmailingContactsSyncService`
**Akce z automací:**
- `SmartEmailingAddToListDriver` přidání kontaktu do listu
- `SmartEmailingAddTagDriver` přidání tagu
- `SmartEmailingUnsubscribeDriver` odhlášení kontaktu
**Webhook příjem:** `POST /api/integrations/smartemailing/webhook``SmartEmailingWebhookController`
**Healthcheck:** `SmartEmailingHealthcheck` kontrola dostupnosti API
---
## Vario ERP
ERP systém pro správu firem, kontaktů, kategorií a produktů. Komunikace přes **SOAP**.
**Klient:** `App\Services\Vario\VarioSoapClient`
**Sync commandy:**
| Command | Popis |
|---------|-------|
| `vario:sync` | Master sync (spouští ostatní) |
| `vario:sync-contacts` | Sync kontaktů |
| `vario:sync-companies` | Sync firem |
| `vario:sync-categories` | Sync kategorií produktů |
| `vario:sync-phonebooks` | Sync telefonních seznamů |
| `vario:sync-product` | Sync jednotlivého produktu |
**Klíčové třídy:**
- `VarioImporter` orchestrace importu
- `VarioContactMapper` / `VarioCompanyMapper` mapování polí
- `VarioSnapshotBuilder` snapshot dat pro porovnání změn
- `VarioDatapackParser` parsování datapaku ze SOAP odpovědi
**Admin UI:** `/admin/vario/doklady` prohlížení a parsování Vario dokladů
---
## PBX (telefonní ústředna)
**Klient:** `App\Services\Pbx\PbxClient`
**Telefonní seznamy:** `Phonebook`, `PhonebookEntry`, `PhonebookContact` modely
**Sync:** `PushPhonebookToPbxJob` nahraje telefonní seznam do PBX
**Admin UI:** `/admin/phonebooks` prohlížeč telefonních seznamů
---
## Microsoft Graph (Email)
Alternativní odesílač emailů přes Microsoft 365 API.
**Service:** `App\Services\MicrosoftGraph\MicrosoftGraphMailService`
**Konfigurace v .env:**
```env
MICROSOFT_GRAPH_TENANT_ID=
MICROSOFT_GRAPH_CLIENT_ID=
MICROSOFT_GRAPH_CLIENT_SECRET=
MICROSOFT_GRAPH_FROM_ADDRESS=
```
---
## Logování integrací
Všechny integrace logují výsledky do `IntegrationLog` (`integration_logs` tabulka). Přehled dostupný v admin UI na `/admin/integrations/logs/{log}`.
`IntegrationLogger` je helper pro jednotné logování úspěchů a chyb.
Stav integrace (poslední sync, chyby) ukládá `IntegrationState` model.