Skip to content

Commit cf769bf

Browse files
committed
Added example and fixed typo
1 parent 994a868 commit cf769bf

File tree

9 files changed

+414
-17
lines changed

9 files changed

+414
-17
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
/vendor/
2+
/.idea

.idea/inspectionProfiles/profiles_settings.xml

Lines changed: 0 additions & 5 deletions
This file was deleted.

.idea/vcs.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/workerjs-phpclient.iml

Lines changed: 3 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/workspace.xml

Lines changed: 339 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/WorkerJS/PHPClient/Client.php

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,38 +25,38 @@ class Client{
2525
public function __construct($options){
2626
$this->options = $options;
2727

28-
$this->messageRouter = TaskMessageRouter::getTaskMessageRouter();
28+
$this->taskMessageRouter = TaskMessageRouter::getTaskMessageRouter();
2929

3030
if($this->options["store"]["type"] == "mysql"){
3131
$this->taskStore = new MySQLTaskStore($this);
3232
} else {
33-
throw new Exception("Invalid Store choice. ");
33+
throw new \Exception("Invalid Store choice. ");
3434
}
3535
}
3636

3737
public function getSetting($name){
3838
if(isset($this->options[$name])){
39-
return $this->option[$name];
39+
return $this->options[$name];
4040
} else if(isset($this->defaultOptions[$name])) {
4141
return $this->defaultOptions[$name];
4242
} else {
43-
throw new Exception("Option $name is not defined. ");
43+
throw new \Exception("Option $name is not defined. ");
4444
}
4545
}
4646

4747
public function getTaskMessageRouter(){
48-
return $this->messageRouter;
48+
return $this->taskMessageRouter;
4949
}
5050

5151
public function getTaskStore(){
5252
return $this->taskStore;
5353
}
5454

5555
public function newTask($name){
56-
if($this->getSetting("api") == "http"){
56+
if($this->getSetting("api") == "httpclient"){
5757
return new HTTPClientTask($this, $name);
5858
} else {
59-
throw new Exception("Invalid API choice. ");
59+
throw new \Exception("Invalid API choice. ");
6060
}
6161
}
6262
}

src/WorkerJS/PHPClient/MySQLTaskStore.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,6 @@ public function getTask($taskID){
3030
}
3131

3232
public function setTask($taskID, $task){
33-
$result = mysqli_query($this->connection, "INSERT INTO `tasks` (`taskID`, `task`) VALUES (".intval($taskID).", '".mysqli_real_escape_string($this->link, json_encode($task->getTask()))."')");
33+
mysqli_query($this->connection, "INSERT INTO `tasks` (`taskID`, `task`) VALUES (".intval($taskID).", '".mysqli_real_escape_string($this->link, json_encode($task->getTask()))."')");
3434
}
3535
}

src/WorkerJS/PHPClient/TaskMessageRequestHandler.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
namespace WorkerJS\PHPClient;
1010

11-
class TaskRequestHandler{
11+
class TaskMessageRequestHandler{
1212
private $client;
1313

1414
public function __construct(Client $client){

src/example.php

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
<?php
2+
/**
3+
* Created by PhpStorm.
4+
* User: miljanrakita
5+
* Date: 12/14/18
6+
* Time: 10:12 PM
7+
*/
8+
9+
require_once("./src/WorkerJS/PHPClient/Client.php");
10+
require_once("./src/WorkerJS/PHPClient/HTTPClientTask.php");
11+
require_once("./src/WorkerJS/PHPClient/MySQLTaskStore.php");
12+
require_once("./src/WorkerJS/PHPClient/Task.php");
13+
require_once("./src/WorkerJS/PHPClient/TaskMessageHandler.php");
14+
require_once("./src/WorkerJS/PHPClient/TaskMessageRequestHandler.php");
15+
require_once("./src/WorkerJS/PHPClient/TaskMessageRouter.php");
16+
require_once("./src/WorkerJS/PHPClient/TaskStore.php");
17+
18+
use \WorkerJS\PHPClient;
19+
20+
$client = new PHPClient\Client([]);
21+
$taskMessageRequestHandler = new PHPClient\TaskMessageRequestHandler($client);
22+
23+
// Message receiver
24+
25+
$router->get("/webhook", function($request, $response){
26+
global $taskMessageRequestHandler;
27+
28+
$taskMessageRequestHandler->handleRequest($request->body);
29+
});
30+
31+
// Message handler
32+
33+
class DeliveryReport implements PHPClient\TaskMessageHandler {
34+
public function handle(\WorkerJS\PHPClient\Task $task, $params)
35+
{
36+
$task->sendMessage(["message" => "ok"]);
37+
38+
// TODO: Implement handle() method.
39+
}
40+
}
41+
42+
$handler = new DeliveryReport();
43+
44+
$client->getTaskMessageRouter()->subscribe("delivery-report", $handler);
45+
46+
// Creating task
47+
48+
$task = $client->newTask("sendSMS");
49+
50+
$task->setParams([
51+
"from" => "+3874387483",
52+
"to" => "+423423423478",
53+
"body" => "Fdfsfd fwdsfwergf dfgdfg rgergerg. "
54+
]);
55+
56+
$task->sendTask();

0 commit comments

Comments
 (0)