Diktátor Diktátor

🔗 Webhooky

Propojte Diktator s dalšími systémy

Webhooky umožňují Diktatoru automaticky informovat jiné systémy o tom, co se právě stalo – nový diktát, změna úkolu, dokončení přepisu. Tyto informace můžete posílat do ERP, účetního software, Slacku, Discordu nebo jiné aplikace, kterou používáte.

Správa webhooků – Nastavení → Webhooky

📍 Kde webhooky nastavit

Otevřete Nastavení (ikona ozubeného kolečka v menu) a přejděte na záložku Webhooky. Zde vytváříte, upravujete a spravujete své webhooky.

✨ Jak vytvořit webhook

1

Získejte adresu (URL)

Potřebujete internetovou adresu, kam Diktator pošle informace. Tu většinou připraví váš IT administrátor nebo poskytovatel systému (ERP, Slack atd.). Adresa by měla začínat na https://.

2

Klikněte na „Přidat webhook“

Vyplňte název (např. „ERP integrace“), vložte adresu URL a vyberte události, na které má webhook reagovat.

3

Uložte si tajný klíč (secret)

Po vytvoření se zobrazí tajný klíč. Zkopírujte si ho hned – po zavření okna ho už znovu neuvidíte. Pokud ho ztratíte, můžete ho regenerovat (starý přestane platit).

4

Otestujte připojení

Použijte tlačítko Testovat – Diktator pošle zkušební zprávu. Pokud je vše v pořádku, váš systém ji obdrží.

📬 Na jaké události můžete reagovat

U každého webhooku vyberete, na které události má Diktator reagovat:

Diktáty

  • • Vytvoření nového diktátu
  • • Úprava diktátu
  • • Smazání diktátu
  • • Změna stavu diktátu

Úkoly

  • • Vytvoření úkolu
  • • Úprava úkolu
  • • Smazání úkolu

📋 Co zpráva obsahuje

Každá zpráva obsahuje typ události, čas a data – například název diktátu, obsah, stav, úkoly, štítky, autora. Data jsou ve formátu JSON, který dokáže zpracovat většina systémů. Pro nastavení zpracování na straně vašeho systému kontaktujte svého IT administrátora.

🔒 Zabezpečení

Každý webhook má tajný klíč (secret). Slouží k ověření, že zpráva skutečně přišla z Diktatoru – váš systém ho použije při kontrole. Nikdy klíč nesdílejte a ukládejte ho bezpečně. Pomocí tlačítka Regenerovat můžete vygenerovat nový klíč (např. pokud byl odhalen).

🔄 Správa webhooků

  • Zapnout/vypnout – dočasně deaktivujte webhook bez mazání
  • Testovat – odešlete zkušební zprávu a ověřte, že vše funguje
  • Historie – prohlédněte si, které zprávy byly odeslány a zda byly doručeny
  • Smazat – trvalé odstranění webhooku

❓ Když něco nefunguje

  • Diktator to zkusí znovu – pokud zpráva nedorazí, systém ji automaticky pošle ještě 3× (po 1, 5 a 15 minutách)
  • Zkontrolujte historii – u každého webhooku uvidíte, které zprávy byly odeslány a jak odpověděl váš systém
  • Použijte Testovat – ověřte, že adresa URL je správná a systém přijímá zprávy
  • Adresa musí být HTTPS – pro bezpečné připojení používejte adresy začínající na https://

👥 Uživatelské vs. týmové webhooky

Uživatelské webhooky reagují pouze na vaše diktáty. Týmové webhooky (v nastavení týmu) reagují na diktáty všech členů týmu – vhodné pro centrální integrace do firemního ERP.


⚙️ Pro administrátory – technické detaily

Níže najdete technické údaje pro nastavení přijímajícího systému: formát zpráv, které HTTP hlavičky kontrolovat a jak ověřit platnost.

Základní informace o requestu

  • Metoda: HTTP POST
  • Content-Type: application/json
  • User-Agent: Diktator-Webhook/1.0
  • Tělo: JSON objekt (UTF-8)

Struktura JSON payloadu

Každá zpráva má tento formát:

{
  "event": "dictate.created",
  "timestamp": "2026-02-09T10:30:00Z",
  "content": "Diktator – dictate.created",
  "data": {
    "dictate": { ... },
    "task": { ... }
  }
}
  • event – typ události (viz tabulka níže)
  • timestamp – čas v ISO 8601, UTC
  • content – text pro kompatibilitu (např. Discord)
  • data – obsahuje objekty dictate, task podle typu eventu
  • data.previous – u eventů updated obsahuje předchozí hodnoty
  • data.old_status / new_status – u dictate.status_changed

Technické názvy eventů

Event Popis
dictate.createdVytvoření diktátu
dictate.updatedÚprava diktátu
dictate.deletedSmazání diktátu
dictate.status_changedZměna stavu diktátu
dictate.task.createdVytvoření úkolu v diktátu
dictate.task.updatedÚprava úkolu v diktátu
dictate.task.deletedSmazání úkolu v diktátu
task.createdVytvoření úkolu
task.updatedÚprava úkolu
task.deletedSmazání úkolu

Datová pole v objektech

data.dictate obsahuje:

dictate_id, name, original_content, processed_content, status, created_at, updated_at, author_first_name, author_last_name, author_email, gps, labels (name, color, description), tasks (content, status, priority, due_date, created_at, updated_at)

data.task obsahuje:

content, status, priority, due_date, created_at, updated_at

Co ověřit – HMAC podpis

Každý request obsahuje hlavičku X-Webhook-Signature ve formátu sha256=<hex>. Podpis = HMAC-SHA256(raw body, secret). Před zpracováním vždy ověřte podpis – jinak by mohl kdokoli posílat falešné zprávy na vaši adresu.

HTTP hlavičky (čekejte tyto)

Hlavička Hodnota
Content-Typeapplication/json
X-Webhook-Signaturesha256=… (HMAC podpis)
X-Webhook-Eventtyp eventu
User-AgentDiktator-Webhook/1.0

Odpověď endpointu

Pro úspěch vracejte HTTP 2xx. Při 4xx, 5xx nebo timeoutu Diktator zprávu znovu pošle (až 3×, po 1, 5 a 15 minutách).

Status Chování
2xxÚspěch, bez opakování
4xx / 5xxRetry
TimeoutRetry

Doporučení pro implementaci

  • Idempotence – stejný event může dorazit vícekrát (retry). Používejte dictate_id nebo created_at pro detekci duplicit.
  • Rychlá odpověď – vraťte 2xx co nejdříve, zpracování proveďte asynchronně.
  • HTTPS – v produkci vždy HTTPS.

🔌 Příklad pro n8n

n8n je open-source nástroj pro automatizaci workflow. Můžete v něm snadno přijímat webhooky z Diktatoru a využít je pro další zpracování – např. odeslání e-mailu, zápis do tabulky nebo integraci s dalšími službami.

Připravený workflow ke stažení

Stáhněte si ukázkový workflow, který obsahuje:

  • Webhook – přijímá POST requesty na cestu /diktator
  • Crypto – ověření HMAC podpisu pomocí vašeho secret klíče
  • If – kontrola integrity zprávy před zpracováním
  • AI Agent – zpracování dat (např. Google Gemini) a odeslání e-mailu s přehledem diktátu
Stáhnout workflow (JSON)

Jak zprovoznit v n8n

  1. Nainstalujte n8n (lokálně nebo n8n Cloud)
  2. Importujte stažený JSON: Create workflow → tři tečky (⋮) → Import from File
  3. Save a Publish – production webhook URL funguje až po publikování
  4. V uzlu Webhook zkopírujte Production URL
  5. V Diktatoru vytvořte webhook: vložte URL, vyberte události, klikněte na vytvoření
  6. Po vytvoření si zkopírujte secret – vložte ho do uzlu Crypto v n8n
  7. Nastavte AI model a e-mail (Google Gemini, SMTP) podle popisků v workflow a uložte

❓ Časté otázky

❓ Ztratil jsem secret – co mám dělat?

Secret nelze znovu zobrazit. Použijte tlačítko Regenerovat u webhooku – vygeneruje se nový klíč. Pak ho musíte vložit i do vašeho přijímajícího systému (n8n Crypto, váš kód atd.).

❓ Webhook vrací 404 – proč?

V n8n je nutné workflow Publishnout – production URL funguje až po publikování. Zkontrolujte také, že URL je přesná (bez překlepů, včetně https://).

❓ Ověřuje se podpis automaticky?

Ne. Diktator vždy posílá hlavičku X-Webhook-Signature, ale ověření musí provést vaše aplikace (n8n Crypto uzel, váš PHP/Node kód). Bez ověření by mohl kdokoli posílat falešné požadavky.

❓ Mohu mít více webhooků?

Ano. Můžete vytvořit více webhooků – např. jeden pro ERP, druhý pro Slack, třetí pro n8n. Každý má vlastní URL a secret.

❓ Rozdíl mezi uživatelským a týmovým webhookem?

Uživatelský webhook reaguje jen na vaše diktáty. Týmový webhook (v nastavení týmu) reaguje na diktáty všech členů týmu – vhodné pro centrální integrace do firemního ERP.