Kue is a priority job queue backed by redis, built for node.js.
This package is a PHP client for Kue JSON API.
It's tested with Kue version 0.10.3
and will be kept in sync with Kue changes on best effort basis.
- PHP 5.5
The preferred way to install this extension is through Composer.
Either run
composer require kop/php-kue-client "dev-master"
or add
"kop/php-kue-client": "dev-master"
to the require
section of your composer.json
file.
In order to connect to the Kue JSON API, all you need to do is to create an instance of \kop\kue\Client
:
$client = new \kop\kue\Client('https://kue-dashboard.domain.com');
// Get Kue stats
$stats = $client->stats();
// Create a new Job
$response = $client->jobs()->create(
'email',
[
'title' => 'welcome email for tj',
'to' => '[email protected]',
'template' => 'welcome-email',
],
[
'priority' => 'high',
],
);
$jobID = $response['id'];
// Get Job by it's ID
$job = $client->jobs()->get($jobID);
// Delete Job by it's ID
$client->jobs()->delete($jobID);
This API client supports all endpoints exposed by Kue JSON API. The followings are methods that are used to map to this API endpoints:
This methods
stats()
- Responds with state counts, and worker activity time in milliseconds;jobs()
- Returns commands that are related to Kue jobs.
This methods can be accessed via jobs()
method of the \kop\kue\Client
.
search($query)
- Search jobs;create($type, $data, $options = [])
- Creates a new job;get($id)
- Returns a job by it's ID;logs($id)
- Returns job logs by job ID;delete($id)
- Deletes a job by it's ID.
This API client implements some additional features that are related to logging and errors handling. Please see the class source code for more details - it's well documented and should not cause any questions.
- Report any issues on the GitHub Issue Tracker.
This project is released under the MIT License. See the bundled LICENSE.md for details.