Webhooki
Webhook to najprostsza forma podłączenia: wiadomość HTTP na adres, który sam wskazujesz. Slack, Discord i Microsoft Teams przyjmują takie wiadomości wprost jako wpis na kanale, a własne systemy mogą z nimi zrobić, co tylko zechcą.
Typowe zastosowania: adres pomocy technicznej zgłasza nowe zapytania na kanale zespołu. Potwierdzenie zamówienia uruchamia system magazynowy. Alarm z serwera klienta pojawia się w Discordzie.
Konfigurowanie punktu końcowego
Dział zatytułowany „Konfigurowanie punktu końcowego”- Otwórz Ustawienia → Integracje → Webhooki i włącz Włącz webhooki.
- Wybierz Dodaj punkt końcowy i wpisz Nazwa oraz URL.
- W polu Szablon ładunku wybierz Slack, Discord, Microsoft Teams albo Generic JSON. Szablon wypełnia pole Szablon ładunku (JSON) pasującym szkieletem, który możesz dowolnie dostosować.
- Testuj wysyła wiadomość próbną z przykładowymi danymi. W Slacku i podobnych zobaczysz ją od razu na kanale.
Adres URL dostajesz w odpowiedniej usłudze:
- Slack: na
api.slack.com/appsutwórz aplikację z Incoming Webhooks; wygenerowany adres URL jest punktem końcowym. - Discord: ustawienia kanału → Integracje → Webhooki.
- Teams: w kanale przez aplikację Workflows z szablonem do publikowania po otrzymaniu żądania webhooka.
- Własne systemy: każdy adres, który przyjmuje JSON przez HTTP POST albo PUT.
Możliwych jest kilka punktów końcowych, a każdy da się osobno wyłączyć: kanał pomocy technicznej i własny skrypt mogą istnieć obok siebie.
Wyzwalanie regułą
Dział zatytułowany „Wyzwalanie regułą”Wysyłka odbywa się wyłącznie przez automatyzację: akcję Wyślij webhook w regule, z punktem końcowym twojego wyboru jako celem.
Co dokładnie zostaje wysłane, określa szablon ładunku punktu
końcowego. Wstawiasz w nim zmienne w podwójnych nawiasach
klamrowych, które przy wysyłce są wypełniane danymi wyzwalającej
wiadomości: {{subject}}, {{from}}, {{from_name}}, {{to}},
{{cc}}, {{date}}, {{preview}} (początek tekstu), {{tags}},
{{mailbox}}, {{account_id}} i {{rule_name}}. Odwołania do
zmiennych pod szablonem objaśniają każdą z nich. Powiadomienie
Slacka dla kanału pomocy technicznej wygląda mniej więcej tak:
{ "text": "Nowe zapytanie od {{from_name}}: {{subject}}" }Dla własnych serwerów
Dział zatytułowany „Dla własnych serwerów”- Podpis: jeśli wpiszesz Klucz HMAC (opcjonalnie), każde
żądanie zawiera nagłówek
X-YouniqMail-Signature: sha256=…z podpisem HMAC-SHA256 treści. Twój serwer sprawdza nim, że wiadomość pochodzi od ciebie. - Ponowienia: przy błędach serwera (5xx) i problemach z siecią YouniqMail próbuje ponownie do trzech razy, z przerwami 1, 2 i 4 sekund. Odrzucenia (4xx) nie są ponawiane. Limit czasu ustawiasz dla każdego punktu końcowego, maksymalnie 30 sekund.
- Metoda: POST jest domyślna, PUT tylko wtedy, gdy twój punkt końcowy tego wymaga. Przekierowania nie są wykonywane.
Warto wiedzieć
Dział zatytułowany „Warto wiedzieć”- Wiadomość idzie do punktu końcowego, który podasz. Sprawdź adres URL starannie, bo każdy, kto go zna, może pisać na kanale. Traktuj adresy URL webhooków jak hasła.
- Treść ustalasz ty: przekazywane jest to, co znajduje się w szablonie. Kto wstawia tylko temat i nadawcę, tylko je przekazuje.
- Funkcja Pro: webhooki należą do zakresu Pro.