Webhooks

Eén webhook per categorie, één kanaal per signaal

FiveGateway stuurt logevents door naar de Discord-kanalen, Slack-rooms en eigen endpoints die er iets over moeten horen, per categorie, met een eigen webhook-URL, zodat belangrijke signalen luid blijven en ruis op de achtergrond.

De routing-eenheid is de logcategorie, niet het losse event. Je definieert een categorie één keer (store-purchase, fail2ban, crash, session-end), koppelt er een webhook-URL aan, en elk event in die categorie wordt automatisch doorgestuurd. Een nieuwe integratie toevoegen is een categorie aanmaken in het dashboard, geen code deployen. Het Lua-snippet in je resource blijft hetzelfde.

Elk webhook-doel kan een Discord-kanaal zijn via de standaard Discord-webhook-URL, een Slack-kanaal via de incoming-webhook-URL, of een eigen HTTP-endpoint op je eigen infrastructuur. Voor Discord en Slack is de payload geformatteerd voor dat platform: Discord Embed met kleurgecodeerde severity, Slack Block Kit voor de kanalen die dat verwachten. Voor eigen endpoints krijg je de ruwe JSON met elk veld van het originele event.

Severity-filters houden luide signalen luid. Per categorie kun je alleen warnings en errors naar een druk kanaal sturen, en alle severity-niveaus naar een audit-kanaal pushen dat niemand live leest maar iedereen tijdens een incident doorzoekt. Die splitsing telt vooral voor categorieën als player-join of vehicle-spawn, waar je geen Discord-kanaal wilt met 10.000 berichten per dag.

Retries en betrouwbaarheid regelen we voor je. Geeft een endpoint een 5xx, dan probeert FiveGateway het opnieuw met exponential backoff; bij een 4xx wordt het event in het dashboard gemarkeerd zodat je de URL kunt fixen. De wachtrij overleeft korte storingen zonder events te verliezen, zodat een Discord rate-limit je nooit de log van een kritieke moderatie-actie kost.

Je hoeft geen eigen endpoint te bouwen om webhooks in te zetten voor automatisering. Maar als je dat wel wilt (bijvoorbeeld ban-events naar een community-database sturen, of transacties fannen naar een billing-tool), dan is het ruwe JSON-formaat stabiel en gedocumenteerd. Het event dat je in het dashboard ziet, is precies wat bij je endpoint aankomt, met getypte velden en category-metadata intact.

Webhooks zijn ook hoe performance-alerts het dashboard verlaten. Daalt de tickrate of overschrijdt CPU een threshold, dan stuurt FiveGateway een performance-event in een eigen categorie. Koppel die categorie aan een on-call-kanaal en je hebt een werkende alertingpipeline, zonder aparte observability-stack of custom script dat de stats-API polt.

Zo werkt het

  1. 1

    Koppel een webhook aan een categorie

    Open een logcategorie, plak een Discord-, Slack- of eigen webhook-URL en kies een severity-filter.

  2. 2

    Events worden automatisch doorgestuurd

    Vanaf dat moment stuurt elk event in de categorie door naar het geconfigureerde endpoint in het passende payload-formaat.

  3. 3

    Retries en fouten zijn zichtbaar

    Mislukte deliveries verschijnen in het dashboard met response-code, zodat je endpoint-issues snel kunt diagnosticeren.

Gerelateerd