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.
No queues - simple to setup but no delivery assurance
$request = Webhooks::generate($url, $body, $method);
$response = Webhooks::fire($request);
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.