NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky
Webhooks for Laravel

Príkazy Artisan

PríkazČo robí
webhooks:installZverejní webhooks-config, webhooks-migrations a sentinel-migrations; vypíše ďalšie kroky.
webhooks:doctor {--json}Skontroluje nastavenie; pri chybe skončí kódom 1; --json vypíše zistenia ako JSON pole.
webhooks:retryPravidelný beh: splatné, odložené a stratené odchádzajúce doručenia (najviac outbound.sweep_batch na beh), pokusy skončených workerov, prichádzajúce doručenia uložené, no nezaradené.
webhooks:prune {--dry-run}Retencia a zmazané endpointy, na ktoré nič neukazuje.
webhooks:rotate-secret {inbound|outbound} {endpoint} {--grace=seconds}Vykoná rotáciu a raz vypíše nový tajný kľúč.
webhooks:redeliver {msg_…}Opätovne doručí jedno odchádzajúce doručenie.
webhooks:redeliver --endpoint={id} {--since=date} {--cancelled}Po výpadku: každé zlyhané (s --cancelled aj zrušené) doručenie endpointu vytvorené od dátumu; vypíše, koľko sa zaradilo a koľko preskočilo.
webhooks:replay {delivery}Znova spracuje prichádzajúce doručenie podľa verejného id.
webhooks:endpoints {--owner=morph-class:id}Vypíše prichádzajúce a odchádzajúce endpointy — nikdy tajný kľúč, hlavičku ani celú odchádzajúcu URL (len hostiteľa).
webhooks:enable {inbound|outbound} {endpoint}Znova zapne endpoint (odchádzajúci: počítadlo zlyhaní začne od nuly).
webhooks:ping {endpoint}Zaradí testovaciu udalosť webhook.ping na odchádzajúci endpoint.
webhooks:make-scheme {recipe=blank} {name?} {--force}Zapíše triedu podpisovej schémy do app/Webhooks/Schemes z receptu github, stripe alebo blank; bez --force neprepíše existujúcu.

Plánovanie

So zapnutým schedule.enabled provider plánuje webhooks:retry (schedule.retry: everyMinute, everyTwoMinutes alebo everyFiveMinutes) a webhooks:prune (schedule.prune: hourly, daily alebo weekly), oba s withoutOverlapping()->onOneServer() a preskočené, kým chýbajú tabuľky. Spustite plánovač Laravelu — obmedzené a dlho odložené doručenia posúva ďalej len pravidelný beh. Pri vypnutom plánovaní spúšťajte webhooks:retry sami.

webhooks:doctor

KontrolaÚroveňVýznam
configerrorKonfigurácia sa dá načítať (schémy, handlery, sanitizér).
sync_queuewarningSpojenie frontu je sync — spracovanie by bežalo v požiadavke.
retry_aftererrorretry_after spojenia nie je dlhší ako timeout DeliverWebhook.
handler_retry_aftererrorretry_after spojenia nie je dlhší ako inbound.handler.timeout.
max_delay_over_driver_limiterrorSpojenie SQS s queue.max_delay nad 900 s.
schedule_disabledwarningschedule.enabled je vypnuté — spúšťajte webhooks:retry sami.
rate_limit_storewarningÚložisko http-client-rate-limits je v pamäti pri skutočnom fronte — obmedzenie odosielania platí len v rámci procesu.
limiter_store_volatilewarningCache úložisko prichádzajúcich limitérov je array pri skutočnom fronte.
idempotency_store_volatileerrorÚložisko idempotencie Sentinelu je array cache — bez deduplikácie medzi procesmi.
idempotency_tableerrorChýba tabuľka idempotencie Sentinelu (databázové úložisko).
curlerrorChýba ext-curl alebo CURLOPT_RESOLVE.
ssrf_disabledwarningOchrana pred SSRF je vypnutá.
http_in_productionwarningV produkcii je povolené odchádzajúce http.
tableserrorChýbajú tabuľky webhookov.
unknown_scheme · unknown_handlererrorEndpoint taký používa (detail: id endpointu).
rfc9421_id_unsignedwarningEndpoint RFC 9421, ktorého profil nepokrýva hlavičku s id doručenia.
rfc9421_no_keywarningEndpoint RFC 9421 bez naviazaného kľúča Sentinelu.
rfc9421_nonce_storeerrorÚložisko nonce Sentinelu neimplementuje InspectsNonces — odložené overenie nemôže bežať.
rfc9421_profile_weakwarningProfil RFC 9421 vypína require_nonce alebo require_content_digest.
sweep_stallederrorDoručenia splatné viac ako 10 minút stále čakajú — webhooks:retry nebeží.
php artisan webhooks:doctor --json
# [{"level":"warning","check":"schedule_disabled","message":"The schedule is off …","detail":null}]

Každé zistenie je DoctorFinding (level, check, detail, message()); pole --json obsahuje level, check, message a detail, pripravené pre monitoring. Bez --json príkaz vypíše jeden riadok na zistenie, prípadne No problems found., a ak je niektoré zistenie chybou, skončí kódom 1.

php artisan about

php artisan about   # section "Webhooks"

Sekcia Webhooks ukazuje prefix trasy (alebo OFF), spojenie a fronty, schémy, počet handlerov, ochranu pred SSRF ON alebo OFF, len https alebo http + https a vzorec opakovaní — žiadny tajný kľúč, URL ani hodnotu hlavičky.

Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

Ďalšie spôsoby podpory vrátane kryptomien

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.