Wbudowane Webhooki Discorda to prosty sposób na automatyczne wysyłanie wiadomości i aktualizacji danych na kanał tekstowy Twojego serwera.
Pomyśl o nich jak o tych pneumatycznych rurach, służących dawniej do przesyłania pieniędzy w bankach. Wtedy banknoty znikały nam z oczu, lecz tutaj otrzymasz możliwość zobaczenia na Discord wiadomości z innej platformy.
Tworząc punkt końcowy webhooka na Twoim serwerze, wygenerujesz adres URL Webhooka, za pomocą którego możesz połączyć się z różnymi serwisami.
Choć wszyscy absolutnie uwielbiają rury pneumatyczne (sprawdzone info), należy pamiętać, że do działania webhooki wymagają innej strony internetowej (choć użytkownicy zainteresowani programowaniem mogą samodzielnie stworzyć własną „rurę”).
Niektóre usługi i strony internetowe zostały stworzone tak, aby z łatwością integrować webhooki i wysyłać wiadomości, ale niektóre nie. Oto krótka i przydatna lista referencyjna:
| Może używać webhooków: | Nie za bardzo używa webhooków: |
| GitHub | Twitch / YouTube |
| CircleCI | Nelly The Hamster |
| DataDog |
Tworzenie webhooka
Mając to na uwadze, jeśli chcesz zaktualizować swój serwer Discorda za pomocą commitów i pull requestów z GitHuba, śledzić dane analityczne z DataDog lub zrobić cokolwiek podobnego, oto instrukcje!
- Otwórz ustawienia serwera i przejdź do zakładki Integracje:
- Kliknij przycisk „Tworzenie webhooka”!
Tutaj znajdziesz kilka opcji. Możesz:
- Edytować awatar: kliknij awatar obok nazwy w lewym górnym rogu
- Wybrać kanał, do którego będą wysyłane posty Webhooka: wybierz odpowiedni kanał tekstowy z rozwijanego menu
- Nadać swojemu webhookowi nazwę: przydatne w przypadku rozróżnienia wielu webhooków dla wielu różnych usług
Masz teraz swój własny, poręczny adres URL / pneumatyczną tubę, który możesz połączyć z większą liczbą witryn i otrzymywać z nich wiadomości.
Krótki przykład: integracja webhooka GitHuba
Ponieważ webhooki nie mogą działać same i muszą być połączone z inną stroną internetową, pomyślałem, że najlepiej będzie przygotować przykładową integrację dla wszystkich entuzjastów GitHuba i osób przesyłających kody.
Za pomocą webhooków Discorda możesz wysyłać informacje o scalaniu kodu lub aktualizacje typu push znajdujące się w Twoim repozytorium, do kanału tekstowego na Twoim serwerze.
1. Znajdź adres URL webhooka dla serwera/kanału, na którym chcesz otrzymywać wiadomości:
Utworzyłem na serwerze kanał tekstowy o nazwie #ogólny-czat i chcę, aby aktualizacje mojego repozytorium były tutaj wysyłane jako wiadomości!
Dlatego też skopiuję adres URL webhooka dla tego kanału, naciskając przycisk Kopiuj adres URL webhooka:
2. Dodaj adres URL webhooka do ustawień repozytorium GitHuba
Wybierz repozytorium, z którego chcesz otrzymywać aktualizacje na swoim serwerze Discorda Po wybraniu repozytorium przejdź do Ustawienia > Webhooki
Następnie kliknij przycisk „Dodaj webhook” i wpisz wygenerowany przez Discorda adres URL w polu „Payload URL”.
Aby webhook wyświetlał wiadomości poprawnie, naprawdę, naprawdę, naprawdę, NAPRAWDĘ, naprawdę konieczne jest dodanie na końcu „/github”. Tak, to pięciokrotnie „naprawdę” konieczne.
Oprócz adresu URL masz do wyboru kilka innych opcji specyficznych dla GitHuba. W przypadku Typu Zawartości należy trzymać się application/json. Format webhooków Discorda naprawdę lubi JSON. W następnej sekcji możesz dostosować rodzaj zdarzeń, które uruchamiają wiadomości webhook.
Kliknij ostatni przycisk „Dodaj webhook” pod opcją dostosowywania powiadomień dotyczących wydarzeń i gotowe! Wysłanie (pushowanie) wszelkich aktualizacji w repozytorium (w tym edycja pliku readme) pojawi się w Twoim kanale tekstowym:
I to wszystko! GitHub to tylko jeden z przykładów integracji, która umożliwia wysyłanie wiadomości za pośrednictwem webhooka. Jeśli masz talent do tworzenia aplikacji JSON lub żądań HTTP POST i chcesz spersonalizować własne Webhooki, możesz znaleźć więcej informacji w naszej dokumentacji dla deweloperów.