You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
103 lines
2.6 KiB
103 lines
2.6 KiB
<?php
|
|
|
|
namespace app\common\YingShiSdk;
|
|
|
|
class YingShiSdk
|
|
{
|
|
/**
|
|
* accessToken
|
|
* @var string
|
|
*/
|
|
protected static $accessToken = 'at.2ym6lk525ytwzdj5b401etyx910qjm87-6f0brt6m6g-0pxk61a-qiocb8src';
|
|
|
|
/**
|
|
* 设备ID
|
|
* @var string
|
|
*/
|
|
protected static $deviceSerial = 'BB6305392';
|
|
|
|
/**
|
|
* 获取设备状态信息
|
|
* @return mixed|string
|
|
*/
|
|
public static function DeviceStatus()
|
|
{
|
|
$url = 'https://open.ys7.com/api/lapp/device/status/get';
|
|
|
|
$curlData = self::curlYingshiApi($url,self::$accessToken,self::$deviceSerial);
|
|
|
|
$err = $curlData['err'];
|
|
$response = $curlData['response'];
|
|
|
|
if ($err) return "cURL Error #:" . $err;
|
|
|
|
$jsonResponse = json_decode($response,true);
|
|
|
|
if ($jsonResponse['code'] != '200') return $jsonResponse['msg'];
|
|
|
|
return $jsonResponse['data'];
|
|
}
|
|
|
|
/**
|
|
* 获取单个设备信息
|
|
* @return mixed|string
|
|
*/
|
|
public static function DeviceInfo()
|
|
{
|
|
|
|
$url = 'https://open.ys7.com/api/lapp/device/info';
|
|
|
|
$curlDataInfo = YingShiSdk::curlYingshiApi($url,self::$accessToken,self::$deviceSerial);
|
|
|
|
$err = $curlDataInfo['err'];
|
|
|
|
if ($err) return "cURL Error #:" . $err;
|
|
|
|
$response = $curlDataInfo['response'];
|
|
|
|
$jsonResponse = json_decode($response,true);
|
|
|
|
if ($jsonResponse['code'] != '200') return $jsonResponse['msg'];
|
|
|
|
return $jsonResponse['data'];
|
|
}
|
|
|
|
/**
|
|
* 请求接口数据
|
|
* @param $url // 请求地址
|
|
* @param $accessToken // token
|
|
* @param $deviceSerial // 设备ID
|
|
* @return array
|
|
*/
|
|
public static function curlYingshiApi($url,$accessToken,$deviceSerial)
|
|
{
|
|
$curl = curl_init();
|
|
|
|
curl_setopt_array($curl, [
|
|
CURLOPT_URL => "{$url}?accessToken={$accessToken}&deviceSerial={$deviceSerial}",
|
|
CURLOPT_RETURNTRANSFER => true,
|
|
CURLOPT_ENCODING => "",
|
|
CURLOPT_MAXREDIRS => 10,
|
|
CURLOPT_TIMEOUT => 30,
|
|
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
|
|
CURLOPT_CUSTOMREQUEST => "POST",
|
|
CURLOPT_HTTPHEADER => [
|
|
"Content-Type: application/x-www-form-urlencoded"
|
|
],
|
|
]);
|
|
|
|
curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,false);
|
|
curl_setopt($curl,CURLOPT_SSL_VERIFYHOST,false);
|
|
curl_setopt($curl,CURLOPT_SSLVERSION,0);
|
|
|
|
$response = curl_exec($curl);
|
|
$err = curl_error($curl);
|
|
|
|
curl_close($curl);
|
|
|
|
return [
|
|
'err' => $err,
|
|
'response' => $response
|
|
];
|
|
}
|
|
}
|