PHP client for Kue JSON API
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.
Requirements
- PHP 5.5
Installation
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.
Usage
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' => 'tj@learnboost.com',
'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);
Supported API endpoints
This API client supports all endpoints exposed by Kue JSON API. The followings are methods that are used to map to this API endpoints:
General
This methods
-
stats()
- Responds with state counts, and worker activity time in milliseconds; -
jobs()
- Returns commands that are related to Kue jobs.
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.
Configuration
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
- Report any issues on the GitHub Issue Tracker.
License
This project is released under the MIT License. See the bundled LICENSE.md for details.