55 lines
1.5 KiB
PHP
55 lines
1.5 KiB
PHP
|
<?php
|
||
|
|
||
|
class PoserDemoTask extends FannieTask
|
||
|
{
|
||
|
public $name = 'Poser Demo';
|
||
|
|
||
|
public $description = 'Demo command that tries to connect to
|
||
|
Tailbone API, and reports success/failure.
|
||
|
|
||
|
NOTE: This task is provided by the PoserDemo plugin;
|
||
|
please see that for settings to control behavior.';
|
||
|
|
||
|
public $default_schedule = array(
|
||
|
'min' => 0,
|
||
|
'hour' => 5,
|
||
|
'day' => '*',
|
||
|
'month' => '*',
|
||
|
'weekday' => '*',
|
||
|
);
|
||
|
|
||
|
public function run()
|
||
|
{
|
||
|
$this->cronMsg("hello from PoserDemo!", FannieLogger::INFO);
|
||
|
|
||
|
$settings = $this->config->get('PLUGIN_SETTINGS');
|
||
|
|
||
|
$url = $settings['PoserDemoTailboneAPIURL'];
|
||
|
if (!$url) {
|
||
|
$this->cronMsg("must define the Tailbone API URL", FannieLogger::ERROR);
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
$token = $settings['PoserDemoTailboneAPIToken'];
|
||
|
if (!$token) {
|
||
|
$this->cronMsg("must define the Tailbone API token", FannieLogger::ERROR);
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
$verifySSL = $settings['PoserDemoTailboneAPIVerifySSL'] === 'false' ? false : true;
|
||
|
|
||
|
$posterior = new \Rattail\Posterior\Client($url, $token, $verifySSL);
|
||
|
|
||
|
try {
|
||
|
$response = $posterior->get('/about');
|
||
|
} catch (Exception $e) {
|
||
|
$this->cronMsg($e, FannieLogger::ERROR);
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
$body = $response->getBody();
|
||
|
$this->cronMsg("response body was: $body", FannieLogger::INFO);
|
||
|
print("$body\n");
|
||
|
}
|
||
|
}
|