← Back to articles

Ko dara atbalsta dienesta tīmekļa āķi un kāpēc tie ir svarīgi

Ko dara atbalsta dienesta tīmekļa āķi un kāpēc tie ir svarīgi

Palīdzības dienesta webhook ir izejošs HTTP pieprasījums, kas nosūta biļešu notikumus citai sistēmai brīdī, kad tie notiek. Tas var aktivizēt brīdinājumus, automatizācijas vai datu sinhronizāciju bez biežas periodiskas pārbaudes. Uzticamai integrācijai joprojām nepieciešama rūpīga iestatīšana: pārbaudiet katru pieprasījumu, ātri apstipriniet piegādes un pārbaudiet galapunktu, pirms uzticat tam produkcijas datu plūsmu.


Īsumā:

  • Webhook var nodrošināt biļešu atjauninājumus ar mazāku aizkavi un mazāku API izsaukumu skaitu nekā bieža periodiska pārbaude.
  • Iestatīšana parasti ietver publisku HTTPS galapunktu, notikumu abonementu, pieprasījumu pārbaudi un testēšanu ar reprezentatīviem notikumiem.
  • Drošības kontroles ir atkarīgas no pakalpojumu sniedzēja, taču parasti ietver HTTPS, paraksta vai pilnvaras marķiera pārbaudi, noslēpumu rotāciju un minimālo nepieciešamo apstrādi.
  • Saņēmējiem jāspēj apstrādāt dublētus vai nepareizā secībā saņemtus notikumus, izmantojot idempotentu apstrādi un salīdzinot datus ar pašreizējo stāvokli.
  • Deskhero pašlaik nesūta izejošos webhook. Tā REST API var pārbaudīt periodiski, kad pielāgotai integrācijai nepieciešami biļešu dati.

Satura rādītājs

Kā darbojas palīdzības dienesta webhook: notikums, POST, dati

Palīdzības dienesta webhook sākas ar notikumu. Kāds atver biļeti, lietotājs maina tās statusu, klients atbild vai mainās prioritāte. Ja platforma piedāvā webhook šādam notikumam un jūs tam esat abonējis, platforma nosūta HTTP pieprasījumu uz jūsu reģistrēto URL. Atšķirībā no periodiskas pārbaudes pēc noteikta grafika, saņēmējam nav nepārtraukti jājautā, vai kaut kas ir mainījies. Webhook dati bieži ir JSON formātā, lai gan precīzais formāts un lauki ir atkarīgi no pakalpojumu sniedzēja.

Webhook JSON datu lauku diagramma

Biļetes izveides datos var būt ietverts biļetes ID, statuss, prioritāte, pieprasītāja informācija un informācija par to, kas izraisīja notikumu. Neuzskatiet, ka šie lauki noteikti pastāv vai vienmēr saglabā to pašu struktūru. Izmantojiet pakalpojumu sniedzēja pašreizējo notikumu shēmu kā galveno informācijas avotu un pārbaudiet datus pirms to izmantošanas.

Praktiskā atšķirība no periodiskas pārbaudes ir saistīta ar laiku un kontroli. Webhook var paziņot jūsu saņēmējam drīz pēc notikuma, savukārt periodiskās pārbaudes mehānisms izmaiņas atklāj nākamajā darbības reizē. Periodiska pārbaude bieži ir vienkāršāka, ja atjauninājumi nav steidzami. Webhook ir noderīgi, ja svarīga ir maza aizkave un pakalpojumu sniedzējs atbalsta jums nepieciešamos notikumus un drošības kontroles.

Kādi ir labākie palīdzības dienesta webhook izmantošanas gadījumi?

Webhook ir visvērtīgākie, kad citai sistēmai ātri jāreaģē uz biļetes notikumu. Bieži piemēri ir šādi:

  • Kanālu brīdinājumi. Jauns vai steidzams pieteikums var aktivizēt paziņojumu sadarbības rīkā, ja palīdzības dienests nosūta attiecīgo notikumu un saņemošā integrācija to atbalsta.
  • CRM atjauninājumi. Atlasīta informācija par biļetes darbībām var tikt iekopēta klienta ierakstā, lai atbalsta un pārdošanas komandām būtu pieejams būtisks konteksts.
  • Eskalācijas aktivizētāji. Steidzams notikums var izveidot incidentu vai brīdinājumu dežurantu sistēmā.
  • Analītikas datu ievade. Biļešu notikumi var tikt nosūtīti uz rindu vai datu konveijeru turpmākai atskaišu veidošanai.
  • Koordinācija starp sistēmām. Biļetes notikums var izveidot vai atjaunināt saistītu darba vienību citai komandai.

Šīm darbplūsmām joprojām nepieciešams skaidri noteikts atbildīgais un kļūmju apstrāde. Webhook ir tikai piegādes mehānisms. Saņemošā sistēma joprojām ir atbildīga par notikuma pārbaudi, biznesa noteikumu piemērošanu un atkopšanos, kad pakārtotie pakalpojumi nav pieejami.

Kā iestatīt palīdzības dienesta webhook?

Precīzais process dažādās platformās atšķiras, taču tipiska iestatīšana ietver šādas darbības:

  1. Izlasiet pakalpojumu sniedzēja dokumentāciju. Noskaidrojiet pieejamos notikumu veidus, datu shēmu, autentifikācijas metodi, taimautu, atkārtošanas politiku un piegādes žurnāla funkcijas.
  2. Padariet publisku HTTPS galapunktu. Izveidojiet maršrutu, kas pieņem pakalpojumu sniedzēja pieprasījumu formātu. Daudzas webhook sistēmas izmanto POST pieprasījumus ar JSON, taču jūsu implementācijai jāatbilst dokumentētajam līgumam.
  3. Reģistrējiet galapunktu un notikumus. Pievienojiet URL, izmantojot platformas administrēšanas saskarni vai API, pēc tam abonējiet tikai tos notikumus, kas nepieciešami jūsu integrācijai.
  4. Konfigurējiet pieprasījumu pārbaudi. Ja pakalpojumu sniedzējs izsniedz parakstīšanas noslēpumu vai pārbaudes pilnvaras marķieri, glabājiet to noslēpumu pārvaldniekā vai aizsargātā vides mainīgajā. Nekad neierakstiet to cieti avota koda repozitorijā.
  5. Ātri apstipriniet saņemšanu. Atgrieziet sagaidīto veiksmīgas izpildes atbildi, pirms sākat lēnus pakārtotos procesus. Stripe webhook dokumentācija iesaka atlikt sarežģīto apstrādi līdz brīdim, kad galapunkts ir atgriezis veiksmīgu atbildi.
  6. Veiciet testēšanu pirms palaišanas. Izmantojiet pakalpojumu sniedzēja testa notikumus vai izstrādes darbvietu. Drošs pārsūtīšanas rīks var palīdzēt vietējās izstrādes laikā, taču nepakļaujiet neaizsargātu izstrādes pakalpojumu produkcijas datu plūsmai.
  7. Pārbaudiet piegādes rezultātus. Ja pakalpojumu sniedzējs nodrošina piegādes žurnālu, izmantojiet to, lai salīdzinātu nosūtītos notikumus ar saņēmēja atbildēm un apstrādes ierakstiem.

Ātra apstiprināšana samazina iespēju, ka pakalpojumu sniedzējs lēnu saņēmēju uzskatīs par neveiksmīgas piegādes cēloni. Pārbaudītā notikuma ievietošana rindā pirms turpmākas apstrādes arī atvieglo jūsu pašu darbu atkārtošanu, nelūdzot sūtītājam to nosūtīt vēlreiz.

Kā aizsargāt palīdzības dienesta webhook galapunktu?

Webhook URL ir sasniedzams no ārpus jūsu tīkla, tāpēc saņēmējs nedrīkst uzticēties pieprasījumam tikai tāpēc, ka tas nonācis pareizajā ceļā.

Izmantojiet HTTPS ar derīgu sertifikātu un pašlaik atbalstītu TLS konfigurāciju. Pēc tam ieviesiet pakalpojumu sniedzēja dokumentēto pārbaudes mehānismu. Tas var būt HMAC paraksts, pārbaudes pilnvaras marķieris, asimetriski paraksti vai cita shēma. Paraksta pārbaudei bieži nepieciešams precīzs neapstrādātais pieprasījuma pamatteksts, tāpēc veiciet pārbaudi pirms tā parsēšanas vai pārveidošanas.

Aizsargājieties pret atkārtotu atskaņošanu, ja pakalpojumu sniedzēja shēma atbalsta laika zīmogus vai unikālus notikumu ID. Salīdziniet parakstus konstantā laikā, noraidiet nederīgus pieprasījumus un izvairieties no noslēpumu vai personas datu ievietošanas lietotnes žurnālos. Ja tas tiek atbalstīts, regulāri nomainiet noslēpumus un dokumentējiet pārklāšanās procedūru gadījumam, ja rotācijas laikā vienlaikus jādarbojas gan vecajiem, gan jaunajiem noslēpumiem.

Piešķiriet webhook procesoram tikai nepieciešamās atļaujas. Ja pakalpojumu sniedzējs publicē stabilus avota IP diapazonus, atļauto adrešu saraksts var būt papildu kontrole, taču tas nedrīkst aizstāt pieprasījuma pārbaudi. Rūpīgi piemērojiet ātruma ierobežojumus, uzraugiet kļūmes un saglabājiet tikai darbplūsmai nepieciešamos notikumu datus.

Kā aizsargāt palīdzības dienesta webhook galapunktu? Pārskata diagramma

Kā testēt un atkļūdot palīdzības dienesta webhook?

Sāciet, nošķirot piegādes problēmas no apstrādes problēmām. Noskaidrojiet, vai pakalpojumu sniedzējs nosūtīja notikumu, vai pieprasījums sasniedza jūsu galapunktu, kādu atbildi galapunkts atgrieza un vai pieņemtais notikums pabeidza turpmāko apstrādi.

  • Ja iespējams, izmantojiet pakalpojumu sniedzēja nodrošinātos testa notikumus un pēc tam testējiet reprezentatīvus reālus notikumus vidē, kas nav produkcijas vide.
  • Reģistrējiet notikuma ID, notikuma veidu, saņemšanas laiku, pārbaudes rezultātu, atbildes statusu un apstrādes iznākumu. Maskējiet noslēpumus un samaziniet saglabāto personas datu apjomu.
  • Izmantojiet platformas piegādes žurnālu, lai pārbaudītu atbildes kodus un atkārtotos mēģinājumus. Zendesk dokumentē webhook darbību un izsaukumu informāciju, lai palīdzētu atkļūdot savu webhook pakalpojumu.
  • Salīdziniet pakalpojumu sniedzēja piegādes ierakstu ar reversā starpniekservera un lietotnes žurnāliem. Trūkstošas galvenes vai pamatteksta izmaiņas var norādīt uz starpprogrammatūras vai starpniekservera konfigurācijas problēmām.
  • Testējiet taimautus, nederīgus parakstus, dublētus notikumu ID, nepieejamus pakārtotos pakalpojumus un neparedzētā secībā piegādātus notikumus.

Profesionāļa padoms: Saglabājiet pietiekami daudz strukturētas piegāžu vēstures, lai varētu izsekot kļūmēm, taču nosakiet glabāšanas termiņu un izvairieties no neapstrādātu datu reģistrēšanas, ja vien tie patiešām nav nepieciešami un pienācīgi aizsargāti.

Kā apstrādāt dublētus vai nepareizā secībā saņemtus webhook notikumus?

Neuzskatiet, ka katrs notikums tiks piegādāts tieši vienu reizi vai ka notikumi vienmēr ieradīsies izveides secībā. Piegādes darbība ir atkarīga no pakalpojumu sniedzēja, un atkārtoti mēģinājumi var radīt dublikātus. Hookdeck pārskatā salīdzinātas vismaz vienreizējas un tieši vienreizējas piegādes pieejas.

Padariet apstrādātājus idempotentus. Ja pakalpojumu sniedzējs nodrošina stabilu notikuma ID, reģistrējiet to un nepieļaujiet vienas un tās pašas darbības izpildi divreiz. Stāvokļa izmaiņām izmantojiet notikumu laika zīmogus vai secības vērtības, ja pakalpojumu sniedzējs tās definē, un iegūstiet resursa pašreizējo stāvokli, ja pareizība ir svarīgāka par katras starpposma pārejas apstrādi. Ievietojiet neveiksmīgos darbus rindā ar ierobežotu atkārtojumu skaitu un aizkaves palielināšanu, bet pastāvīgās kļūmes nosūtiet uz pārskatāmu neizdevušos ziņojumu rindu vai līdzvērtīgu procesu.

Deskhero API iespēja

Deskhero pašlaik nodrošina REST API ar personīgām nesēja pilnvarām, taču nesūta izejošos webhook. Integrācijai, kurai nepieciešami Deskhero biļešu dati, API jāpārbauda ar atbilstošu intervālu un jāievēro tā ātruma ierobežojums. Šis ir citāds modelis nekā iepriekš aprakstītā notikumu piegāde, tāpēc jāparedz kontrolpunkti, lappušu pāršķiršana, dublikātu novēršana un atkopšana pēc periodiskās pārbaudes darba kļūmes.

Izvēle starp webhook un periodisku pārbaudi

Izvēlieties pieeju, ņemot vērā sistēmu, ar kuru integrējaties, nevis pieņemot, ka katrs palīdzības dienests atbalsta abus modeļus. Webhook var samazināt izmaiņu atklāšanas aizkavi, taču tiem nepieciešams publisks saņēmējs un rūpīga piegāžu apstrāde. Periodiskai pārbaudei nepieciešama plānošana un kontrolpunktu loģika, taču to var būt vieglāk darbināt un salāgot.

Deskhero

Deskhero pārvērš Gmail vai Microsoft 365 pastkasti par koplietojamu palīdzības dienestu, vienlaikus saglabājot uzņēmuma esošo e-pasta adresi. Tas piedāvā divvirzienu e-pasta sinhronizāciju, iebūvētas biļešu automatizācijas, AI atbilžu melnrakstus, kas balstīti darbvietas zināšanās, un REST API pielāgotām integrācijām. Deskhero automatizācijas darbojas, kad tiek izveidotas jaunas biļetes; tās neaizstāj izejošos webhook. Shopify lietotāji var arī savienot Shopify integrāciju, lai Deskhero skatītu attiecīgo pasūtījumu un klientu informāciju. Ir pieejams 30 dienu bezmaksas izmēģinājums, un kredītkarte nav nepieciešama.

Kur uzzināt vairāk par webhook standartiem?

Nav viena webhook standarta, kas liktu visiem pakalpojumu sniedzējiem darboties vienādi. Izmantojiet sava pakalpojumu sniedzēja dokumentāciju kā autoritatīvu avotu par notikumu shēmām, pārbaudi, atkārtotiem mēģinājumiem un taimautiem. Notion webhook dokumentācija sniedz konkrētu abonementa pārbaudes un notikumu piegādes piemēru.

Avoti

BUJ

Kas īsti ir webhook?

Webhook ir HTTP pieprasījums, ko viena sistēma nosūta uz reģistrētu URL pēc noteikta notikuma. Tas satur informāciju, kas ļauj saņemošajai sistēmai izlemt, kā reaģēt.

Kādi ir webhook trūkumi?

Webhook nepieciešams drošs un publiski sasniedzams saņēmējs. Integrācijai jāņem vērā arī pakalpojumu sniedzējam specifiskā pārbaude, atkārtoti mēģinājumi, dublēti notikumi, iespējama secības maiņa, dīkstāves, uzraudzība un notikumu shēmu izmaiņas.

Kas ir webhook salīdzinājumā ar API?

API parasti ļauj jūsu programmatūrai pieprasīt datus vai aktivizēt darbību. Webhook ļauj citai sistēmai nosūtīt notikumu jūsu saņēmējam. Daudzas integrācijas izmanto abus: webhook paziņo par izmaiņām, bet API nodrošina pašreizējos resursa datus.

Vai varat sniegt palīdzības dienesta webhook piemēru?

Palīdzības dienests, kas atbalsta izejošos webhook, var nosūtīt jūsu saņēmējam biļetes izveides notikumu. Pēc pieprasījuma pārbaudes jūsu integrācija varētu pievienot paziņojumu komandas kanālā vai atjaunināt CRM ierakstu. Deskhero pašlaik nesūta izejošos webhook, tāpēc pielāgotām Deskhero integrācijām tā vietā jāveic REST API periodiska pārbaude.