Een webhook plaatst een kort bericht in een Discord-kanaal als er iets gebeurt op je server: hij start, stopt of crasht, een speler joint of vertrekt, of een backup is klaar. Iedereen in het kanaal ziet het zonder het panel te openen. Een webhook kan ook naar elk ander https-adres sturen, voor je eigen tools.
Alleen de eigenaar van een server kan de webhooks ervan instellen. Mensen die je voor de server hebt uitgenodigd zien de pagina niet.
1. Maak een webhook in Discord
Je hebt toestemming nodig om webhooks te beheren in de Discord-server. De eigenaar en de admins hebben die normaal gesproken.
- Open in Discord de Serverinstellingen en ga naar Integraties.
- Klik op Webhook maken (in het Engels Create Webhook), geef hem een naam en kies het tekstkanaal waarin hij post, bijvoorbeeld een kanaal
#server-alerts. - Klik op Webhook-URL kopiëren.
Discord legt deze stappen met plaatjes uit in zijn gids Intro to Webhooks. Behandel de webhook-URL als een wachtwoord: wie hem heeft, kan in dat kanaal posten.
2. Voeg hem toe aan je server
- Open je server in het panel en klik in het menu links op Webhooks.
- Klik op Voeg er een toe, of op Nieuwe webhook als de server er al een heeft.
- Geef hem als je wilt een Naam. Die is alleen voor jou en is het label van de webhook in je lijst.
- Plak het adres bij URL. Het moet beginnen met
https://. Is het een Discord-webhook, dan toont het panel Discord-webhook herkend. - Vink onder Versturen wanneer de gebeurtenissen aan die je wilt (zie hieronder). Server gecrasht staat standaard aangevinkt, en er moet er minstens één aan staan.
- Klik op Webhook aanmaken.
De gebeurtenissen
| Gebeurtenis | Wanneer hij wordt verstuurd |
|---|---|
| Server gestart | Als de server draait en klaar is voor spelers, ook na een herstart. |
| Server gestopt | Een stop waar iemand om vroeg: jij, een teamlid of een planning. |
| Server gecrasht | De server ging uit zonder dat daarom werd gevraagd. Hij wordt een minuut of twee later verstuurd, als we het zeker weten, en zegt of de server uit zichzelf terugkwam. |
| Speler gejoind | Met de naam van de speler, bij games die melden wie er online is. Games die alleen een aantal melden, zeggen hoeveel er zijn. |
| Speler vertrokken | Hetzelfde, als iemand vertrekt. Spelers worden één keer per minuut gecontroleerd zolang de server draait. |
| Backup klaar | Of de backup is gelukt en hoe groot hij is. |
| Installatie klaar | Na de eerste installatie of een herinstallatie. |
| Overdracht klaar | Als een verhuizing van je server klaar is. |
Project Zomboid-servers hebben extra gebeurtenissen die uit het log van de game worden gelezen: Speler gestorven, PvP-kill, Adminactie, Mod bijgewerkt, Afteltijd voor herstart gestart en Chat uit de game doorsturen. Chat wordt alleen verstuurd als je hem aanvinkt, en alleen de algemene chat: fluisterberichten, factionchat en safehousechat worden nooit verstuurd.
Wat er aankomt
- In Discord komen berichten van PlayNHost als korte kaarten met de servernaam, wat er gebeurde en wanneer. Discord toont de tijd in de eigen tijdzone van elke lezer.
- Berichten noemen de naam van je server, maar nooit het adres of de ID, dus ze kunnen in een openbaar kanaal. Wil je de getoonde naam wijzigen, hernoem dan de server. Zie Je server hernoemen en spelerslots wijzigen.
- Een speler kan je kanaal niet pingen met zijn naam. Een naam als
@everyonekomt aan als gewone tekst. - Elk ander adres ontvangt de gebeurtenissen als JSON. Zie hieronder Voor je eigen tools.
Een webhook uitzetten, wijzigen of verwijderen
- Gebruik de schakelaar op de rij van een webhook om hem uit en weer aan te zetten. Zijn instellingen blijven bewaard zolang hij uit staat.
- Open het menu van de rij en kies Bewerken om de naam, het adres of de gebeurtenissen te wijzigen, of Verwijderen om hem weg te halen. Er wordt niets anders geraakt: je server blijft draaien en het kanaal krijgt gewoon geen berichten meer.
Goed om te weten
- Een server kan tot 10 webhooks hebben, bijvoorbeeld één per kanaal.
- Om een kanaal leesbaar te houden, stuurt elke webhook hooguit 4 berichten per minuut en 40 per uur. Berichten daarboven worden overgeslagen in plaats van te laat verstuurd, en het volgende bericht zegt hoeveel eerdere updates zijn overgeslagen.
- Wordt de webhook in Discord verwijderd, dan zet het panel hem zelf uit zodra het voor het eerst weer probeert te versturen, en de rij toont Uit. Maak een nieuwe webhook in Discord, kies Bewerken, plak het nieuwe adres en zet hem weer aan.
- Er is geen testknop. Om een nieuwe webhook te controleren, vink je Server gestart aan en herstart je je server. Het bericht komt kort nadat de server klaar is.
- Webhooks zijn voor een kanaal dat je groep deelt. Voor meldingen alleen aan jou, in het panel of per e-mail, zie Meldingen en voorkeuren beheren.
Voor je eigen tools
Een adres dat geen Discord-webhook is, ontvangt een POST met een JSON-body:
sourceisPlayNHost.eventsis een lijst. Elke gebeurtenis heeft eentype(zoalsserver.crashofplayer.join),server(de naam van de server),at(wanneer het gebeurde), een leesbaretitleentext, en eendata-object met de details.skippedis hoeveel eerdere berichten door de limiet hierboven zijn weggelaten.
Het adres moet https gebruiken en naar een openbaar adres op internet wijzen. Redirects worden niet gevolgd. Berichten zijn niet ondertekend, dus houd het adres zelf geheim.
Gerelateerd
- Zien wat er op je server is gebeurd laat zien wie wat heeft gestart, gestopt of gewijzigd, en wanneer.
- Een server repareren die niet wil starten helpt als een crashmelding steeds terugkomt.



