ignited/webhooks-outgoing

There is no license information available for the latest version (0.1.0) of this package.

0.1.0 2021-06-03 08:57 UTC

This package is not auto-updated.

Last update: 2022-01-13 11:50:34 UTC


README

Build Status Total Downloads

Simple Queue driven webhook interface. Just send your webhook url, body (and method) and let the library take care of the rest. Supports asynchronous (backed by Laravel queues) to ensure message delivery.

Synchronous

No queues - simple to setup but no delivery assurance

$request = Webhooks::generate($url, $body, $method);
$response = Webhooks::fire($request);

Asynchronous

Requires queues - but implements backoff, x failed attempts, and retry etc.

$request = Webhooks::generate($url, $body, $method);
Webhooks::dispatch($request);

Note: you will need to run an instance of php artisan queue:listen to ensure queues are delivered.

Todo (feel free to contribute):

  • Functional testing in Laravel (Package was built for Lumen so it's only been testing with intergration of Lumen)
  • Retry should not be allowed until it has failed (i.e. attempts >= max_number_attempts)
  • More event handling etc. retrying, failing, attempting
  • Ability to customise queue_name and queue_connection.