$param['deviceSerial'].'001',//设备唯一标识 'pk' => 'CS-HD50-NB',//产品型号 'did' => $param['deviceSerial'],//设备编号 'deviceType' => '智能门锁',//设备类型 'deviceModel' => $param['model'],//设备型号 'uid' => '',//关联编号(人员或方案) 'dtype' => '实时上报',//数据类型(实时上报、报警上报) 'site' => '',//安装地址 'longitude' => '',//经度(当设备无定位芯片时,则字段不显示) 'latitude' => '',//纬度(当设备无定位芯片时,则字段不显示) 'companyName' => '深圳市新方舟文化科技有限公司',//设备供应商名称 'timestamp' => date("Y-m-d H:i:s.v"),//数据上传时间 'data' => [ 'onlineStatus' => $param['status'],//在线状态//0 为在线,1 为离线 'quantityElectricity' => $param['battryStatus'],//电量 'alarmReason' => '',//报警原因 'alarmType' => '',//报警类型 'eventName' => '',//事件名称 'eventType' => '',//事件类型(0:测试报警,1:正式报警) 'alarmTime' => '',//报警时间 ],//数据内容 ]; return $result = self::curlPost($requestUrl, $data); // if (!$result['code']) { // return ['status' => 1,'msg' => '推送成功']; // } // // return ['status' => 0,'msg' => '推送失败']; } /** * post请求 * @param $url * @param array $data * @return bool|string */ protected static function curlPost($url, array $data) { $dataJson = json_encode($data,JSON_UNESCAPED_UNICODE); $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_PORT => "30014", CURLOPT_URL => $url, CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => $dataJson, CURLOPT_HTTPHEADER => [ "content-type: application/json" ], ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { return $err; } else { return json_decode($response, true); } } }