Some Tweeks
This commit is contained in:
parent
c410df1bd6
commit
5d32c2bfa4
@ -1,7 +1,9 @@
|
||||
<?php
|
||||
class WidgetApi extends ApiController{
|
||||
class WidgetApi extends ApiController
|
||||
{
|
||||
|
||||
public function run($subDeviceId){
|
||||
public function run($subDeviceId)
|
||||
{
|
||||
//$this->requireAuth();
|
||||
|
||||
$response = null;
|
||||
@ -10,7 +12,7 @@ class WidgetApi extends ApiController{
|
||||
}
|
||||
|
||||
$subDeviceData = SubDeviceManager::getSubDevice($subDeviceId);
|
||||
if ($subDeviceData['type'] == 'on/off'){
|
||||
if ($subDeviceData['type'] == 'on/off') {
|
||||
$lastValue = RecordManager::getLastRecord($subDeviceData['subdevice_id'])['value'];
|
||||
RecordManager::create($subDeviceData['device_id'], 'on/off', (int) !$lastValue);
|
||||
$response = !$lastValue;
|
||||
@ -20,7 +22,7 @@ class WidgetApi extends ApiController{
|
||||
|
||||
$i = 0;
|
||||
$timeout = 20;
|
||||
while (RecordManager::getLastRecord($subDeviceId)['execuded'] == 0){
|
||||
while (RecordManager::getLastRecord($subDeviceId)['execuded'] == 0) {
|
||||
if ($i == $timeout) {
|
||||
throw new Exception("Timeout", 444);
|
||||
}
|
||||
@ -30,7 +32,8 @@ class WidgetApi extends ApiController{
|
||||
$this->response(['value' => $response]);
|
||||
}
|
||||
|
||||
public function detail($subDeviceId){
|
||||
public function detail($subDeviceId)
|
||||
{
|
||||
//$this->requireAuth();
|
||||
$response = null;
|
||||
$connectionError = true;
|
||||
@ -52,28 +55,29 @@ class WidgetApi extends ApiController{
|
||||
$subDeviceData['type'] == "on/off" ||
|
||||
$subDeviceData['type'] == "door" ||
|
||||
$subDeviceData['type'] == "wather"
|
||||
) {
|
||||
$connectionError = false;
|
||||
}
|
||||
) {
|
||||
$connectionError = false;
|
||||
}
|
||||
|
||||
$labels = [];
|
||||
$values = [];
|
||||
foreach ($events as $key => $event) {
|
||||
$recordDatetime = new DateTime($event['time']);
|
||||
$labels[] = $recordDatetime->format('H:i');
|
||||
$values[] = [
|
||||
'y' => $event['value'],
|
||||
't' => $recordDatetime->getTimestamp()*1000,
|
||||
];
|
||||
}
|
||||
$labels = [];
|
||||
$values = [];
|
||||
foreach ($events as $key => $event) {
|
||||
$recordDatetime = new DateTime($event['time']);
|
||||
$labels[] = $recordDatetime->format('H:i');
|
||||
$values[] = [
|
||||
'y' => $event['value'],
|
||||
't' => $recordDatetime->getTimestamp() * 1000,
|
||||
];
|
||||
}
|
||||
|
||||
$response = [
|
||||
'records'=> $events,
|
||||
'graph'=> [
|
||||
$response = [
|
||||
'records' => $events,
|
||||
'graph' => [
|
||||
'data' => [
|
||||
'labels' => $labels,
|
||||
'data' => [
|
||||
'dataset' => $values
|
||||
],
|
||||
'dataset' => $values
|
||||
],
|
||||
'options' => [
|
||||
'scales' => [
|
||||
'xAxis' => [
|
||||
'type' => 'time',
|
||||
@ -97,10 +101,11 @@ class WidgetApi extends ApiController{
|
||||
'mode' => true
|
||||
],
|
||||
],
|
||||
'comError' => $connectionError,
|
||||
'lastConnectionTime' => (empty($niceTime) ? "00:00" : $niceTime),
|
||||
];
|
||||
],
|
||||
'comError' => $connectionError,
|
||||
'lastConnectionTime' => (empty($niceTime) ? "00:00" : $niceTime),
|
||||
];
|
||||
|
||||
$this->response($response);
|
||||
}
|
||||
$this->response($response);
|
||||
}
|
||||
}
|
||||
|
@ -1,22 +1,23 @@
|
||||
<?php
|
||||
class Covid extends VirtualDeviceManager {
|
||||
class Covid extends VirtualDeviceManager
|
||||
{
|
||||
private $country_sluig = "czech-republic";
|
||||
private $api_uri = 'https://api.covid19api.com/live/country/%s/status/confirmed'; // Your redirect uri
|
||||
private $virtual_device_name = "Covid";
|
||||
|
||||
function fetch($url = 'true')
|
||||
{
|
||||
|
||||
if (DeviceManager::registeret($this->virtual_device_name)) {
|
||||
$deviceId = DeviceManager::getDeviceByToken($this->virtual_device_name)['device_id'];
|
||||
$dataItems = ['Confirmed','Deaths','Recovered','Active'];
|
||||
$dataItems = ['Confirmed', 'Deaths', 'Recovered', 'Active'];
|
||||
foreach ($dataItems as $dataItem) {
|
||||
if (!$subDevice = SubDeviceManager::getSubDeviceByMaster($deviceId, strtolower($dataItem))) {
|
||||
SubDeviceManager::create($deviceId, strtolower($dataItem), 'Cases');
|
||||
SubDeviceManager::create($deviceId, strtolower($dataItem), $dataItem);
|
||||
sleep(1);
|
||||
}
|
||||
}
|
||||
|
||||
if (!$this->fetchEnabled($deviceId,$subDevice['subdevice_id'])) die();
|
||||
if (!$this->fetchEnabled($deviceId, $subDevice['subdevice_id'])) die();
|
||||
|
||||
$finalUrl = sprintf($this->api_uri, $this->country_sluig);
|
||||
$json = json_decode(Utilities::CallAPI('GET', $finalUrl, ''), true);
|
||||
|
@ -13,6 +13,7 @@ class OpenWeatherMap extends VirtualDeviceManager
|
||||
$deviceId = DeviceManager::getDeviceByToken($this->virtual_device_name)['device_id'];
|
||||
if (!$subDevice = SubDeviceManager::getSubDeviceByMaster($deviceId, $this->subdevice_type)) {
|
||||
SubDeviceManager::create($deviceId, $this->subdevice_type, '');
|
||||
sleep(1);
|
||||
}
|
||||
|
||||
if (!$this->fetchEnabled($deviceId,$subDevice['subdevice_id'])) die();
|
||||
|
Loading…
Reference in New Issue
Block a user