123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216 |
- <?php
- use think\Log;
- function allconfig()
- {
- $config=array(
- "appId"=>"1w5JN7f6h0dNF8Ryz1q5QYYW_2Ia",
- "secret"=>"ErjDPl30eKVESOQLk2vpfVQjdpYa",
- "host"=>"https://180.101.147.89:8743/",
- );
- return $config;
- }
- function test()
- {
- $token=json_encode(array("ji"=>"hdsj","ggdsc"=>"dcdf","jdfi"=>"hdsj","ggfddsc"=>"dcdf"));
- file_put_contents("./token11",$token);
- return file_get_contents("./token11");
- }
- //请求地址 参数 和 头部
- function curl($url,$data='',$header="",$method="POST"){
- $ch = curl_init() ;
- curl_setopt($ch, CURLOPT_URL, $url);
- curl_setopt($ch, CURLOPT_HTTPHEADER,$header);
-
- // curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 4);
- curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
- curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
- /* curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)');*/
- // curl_setopt($ch, CURLOPT_VERBOSE, 1); //debug模式
- curl_setopt($ch, CURLOPT_SSLCERT, "./server.crt"); //client.crt文件路径
- curl_setopt($ch, CURLOPT_SSLCERTPASSWD, "IoM@1234"); //client证书密码
- curl_setopt($ch, CURLOPT_SSLKEY, "./server.key");
- if($method=="POST"||$method=="PUT"||$method=="DELETE"){
- curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);
- curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
- }
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
- $info = curl_exec($ch);
- $status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
- if (curl_errno($ch)) {
- return 'Errno'.curl_error($ch);
- }else{
- return array($status,$info);
- }
- curl_close($ch);
- }
- //请求地址 参数 和 头部
- function curltest($url,$data='',$header="",$method="POST"){
- $ch = curl_init() ;
- curl_setopt($ch, CURLOPT_URL, $url);
- curl_setopt($ch, CURLOPT_HTTPHEADER,$header);
-
- if($method=="POST"||$method=="PUT"||$method=="DELETE"){
- curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);
- curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
- }
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
- $info = curl_exec($ch);
- $status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
- if (curl_errno($ch)) {
- return 'Errno'.curl_error($ch);
- }else{
- return array($status,$info);
- }
- curl_close($ch);
- }
- //鉴权接口
- function Auth()
- {
- // $config=
- $data="appId=1w5JN7f6h0dNF8Ryz1q5QYYW_2Ia&secret=ErjDPl30eKVESOQLk2vpfVQjdpYa";
- $header=[
- "Content-Type:application/x-www-form-urlencoded",
- ];
- // https://server:port/iocm/app/sec/v1.1.0/log
- $rescurl=curl("https://180.101.147.89:8743/iocm/app/sec/v1.1.0/login",$data,$header);
- // return $rescurl;
- if($rescurl[0]==200){
- $res=json_decode($rescurl[1],true);
- $res["token_time_out"]=$res['expiresIn']+time();
- $res["refresh_token_time_out"]=time()+86400*7;
- $result=json_encode($res);
- file_put_contents("./token.json",$result);
- return $result;
- }else{
- return $rescurl[1];
- }
-
-
- }
- //刷新token并返回新的token
- function refreshtoken(){
- $token=session("token");
- //查看刷新token是否过期,过期了调鉴权接口,没过期调刷新
- if($token["refresh_token_time_out"]>=time()){//刷新
-
- $data=[
- "appId"=>"1w5JN7f6h0dNF8Ryz1q5QYYW_2Ia",
- "secret"=>"ErjDPl30eKVESOQLk2vpfVQjdpYa",
- "refreshToken"=>$token["refreshToken"],
- ];
- $header=[
- "Content-Type:application/json",
- ];
- $rescurl=curl("https://180.101.147.89:8743/iocm/app/sec/v1.1.0/refreshToken",json_encode($data),$header);
- if($rescurl[0]==200){
- $res=json_decode($rescurl[1],true);
- $res["token_time_out"]=time()+$res['expiresIn'];
- $res["refresh_token_time_out"]=time()+86400*7;
- //session('token',$res);//
- $result=json_encode($res);
- file_put_contents("./token.json",$result);
- return $result;
- }else{
- return $rescurl[1];
-
- }
-
-
- }else{//鉴权
- return Auth();
- }
-
- }
- //获取token
- function gettoken(){
- //判断是否设置session以及session里的token是否过期
- if(file_exists("./token.json")){
- $token=json_decode(file_get_contents('./token.json'),true);
- if($token['token_time_out']>=time()){//还没有过期直接返回token;
- return json_encode($token);
- }else{
- return refreshtoken();
- }
- }else{
- return Auth();
- }
- }
- function addtable($device_id,$deviceType){
- if ($deviceType=='Smoke') {
- $device_table = "sp_" . "y" . $device_id;
- $create_sql = "
- CREATE TABLE `" . $device_table . "` (
- `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
- `device_id` varchar(200) DEFAULT NULL,
- `RSRQ` varchar(255) DEFAULT NULL,
- `CSQ` varchar(255) DEFAULT NULL,
- `DeviceType` varchar(50) DEFAULT NULL,
- `DeviceStatus` varchar(50) DEFAULT NULL,
- `BatteryLevel` varchar(50) DEFAULT NULL,
- `SensorLevel` varchar(50) DEFAULT NULL,
- `eventTime` varchar(50) DEFAULT NULL,
- `storeTime` varchar(50) DEFAULT NULL,
- PRIMARY KEY (`id`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
- ";
- }else{
- $device_table="sp_"."s".$device_id;
- $create_sql="
- CREATE TABLE `".$device_table."` (
- `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
- `device_id` varchar(200) DEFAULT NULL,
- `messageId` varchar(255) DEFAULT NULL,
- `batteyValue` varchar(255) DEFAULT NULL,
- `sensorIdStart` varchar(50) DEFAULT NULL,
- `sensorid` varchar(50) DEFAULT NULL,
- `alarmBoolean` varchar(50) DEFAULT NULL,
- `unit` varchar(50) DEFAULT NULL,
- `data` varchar(50) DEFAULT NULL,
- `eventTime` varchar(255) DEFAULT NULL,
- `storeTime` varchar(50) DEFAULT NULL,
- PRIMARY KEY (`id`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
- ";
- // $result = mysqli_query($link,$create_sql);
- }
- sql_exec($create_sql);
- }
- function sql_exec($sql){
- $link = mysqli_connect('47.98.201.187', 'root', 'Yt2018IoT', 'jdxf', 3306);
- if (!$link) { die("连接失败: " . mysqli_connect_error()); }
- $result = mysqli_query($link,$sql);
- //mysqli_free_result($result);
- mysqli_close($link);
- }
- function addDataInfo($sql)
- {
- Log::record('sql123'.':'.$sql);
- $link = mysqli_connect('47.98.201.187', 'root', 'Yt2018IoT', 'jdxf', 3306);
- $res1 = mysqli_query($link,$sql);
- Log::record('res123'.':'.$res1);
- //mysqli_free_result($res1);
- mysqli_close($link);
- return $res1;
- }
|