Discords indbyggede Webhooks fungerer som en nem måde at få automatiserede beskeder og dataopdateringer sendt til en tekstkanal i din SERVER.
Tænk på dem som et af de smarte rørpost-systemer, du plejede at elske at sende penge ind i i en bank og se forsvinde, men i stedet for aldrig at se dine penge igen, sender du faktisk beskeder ind i Discord fra en anden platform.
Ved at oprette et webhook-slutpunkt i din SERVER, vil du generere en Webhook-URL, som du kan smide ind i en række andre tjenester for at linke de to.
Selvom alle absolut elsker rørpost (100 % sandt), er det vigtigt at bemærke, at webhooks kræver et andet websted for at fungere (selvom programmeringsinteresserede brugere selv kan lave deres egen rørpost-schoomper).
Nogle tjenester og hjemmesider er bygget til nemt at inkorporere webhooks og sende beskeder udadtil, men nogle er ikke. Her er en lille praktisk referenceliste:
| Kan bruge webhooks: | Kan ikke rigtig bruge webhooks: |
| GitHub | Twitch/YouTube |
| CircleCI | Nelly The Hamster |
| DataDog |
Oprettelse af en Webhook
Med det i tankerne, hvis du vil opdatere din Discord-server med GitHub-commits og -pull requests eller spore analyser fra DataDog eller noget lignende, så er det her, du skal kigge!
- Åbn dine Serverindstillinger, og gå til fanen Integrationer:
- Klik på knappen "Opret webhook" for at oprette en ny webhook!
Du vil have et par valgmuligheder her. Du kan:
- Rediger avataren: Ved at klikke på avataren ved siden af Navn øverst til venstre
- Vælg, hvilken kanal din Webhook poster til: Ved at vælge den ønskede tekstkanal i rullemenuen.
- Navngiv din Webhook: En god måde at skelne mellem flere webhooks til flere forskellige tjenester.
Du har nu din egen praktiske URL/rørpost-schoomp-er , som du kan linke til flere hjemmesider for at modtage beskeder fra.
Hurtigt eksempel: GitHub Webhook-integration
Da webhooks ikke rigtig kan fungere på egen hånd og skal være knyttet til et andet websted for at fungere som tilsigtet, tænkte jeg, at det ville være bedst at inkludere en prøveintegration til alle jer GitHub-entusiaster og kode-pushers.
Du kan bruge Discords webhooks til at sende enhver kodesammenfletning eller push-opdateringer i dit repository til en tekstkanal i din server.
1. Få webhook-URL'en for den server/kanal, du ønsker at modtage beskeder fra:
Jeg har oprettet en tekstkanal i min server med etiketten #general-chat, og jeg vil have mine repo-opdateringer til at sende beskeder her!
Derfor vil jeg tage webhook-URL'en til denne kanal ved at trykke på knappen Kopier Webhook-URL:
2. Tilføj webhook-URL'en til dine GitHub-arkivindstillinger
Vælg det depot, du ønsker at modtage opdateringer fra, i din Discord-server. Når du har valgt repoet, skal du gå til Indstillinger > Webhooks-menuen
Og klik derefter på knappen "Tilføj webhook", og indtast den Discord-genererede URL i feltet "Payload URL".
For at få webhook til at vise beskeder korrekt, er det virkelig, virkelig, virkelig, virkelig vigtigt, at du tilføjer '/github' i slutningen af den. Ja, som i virkelig, virkelig, virkelig, virkelig, virkelig vigtigt.
Ud over URL-adressen har du nogle flere GitHub-specifikke valgmuligheder at vælge imellem. For indholdstype, hold dig til application/json. Discords webhook-format kan virkelig godt lide JSON. I næste afsnit kan du vælge at tilpasse, hvilken type begivenheder der udløser webhook-beskeder.
Klik på den sidste "Tilføj Webhook"-knap under muligheden for at tilpasse Begivenhedsmeddelelser, og du er klar! Når du pusher en opdateringer i repoet (herunder redigering af readme-filen), vil de blive vist i din tekstkanal:
Så er du klar! GitHub er blot ét eksempel på en integration, der kan udsende beskeder via webhook. Hvis du har et talent for JSON-applikationsopbygning eller HTTP-POST-anmodninger og ønsker at tilpasse dine egne webhooks, kan du finde flere oplysninger i vores udviklerdokumenter.