81 lines
2.2 KiB
PHP
81 lines
2.2 KiB
PHP
|
|
<?php
|
|||
|
|
|
|||
|
|
namespace app\common\server;
|
|||
|
|
|
|||
|
|
class CloudAudioServer
|
|||
|
|
{
|
|||
|
|
const URI = 'https://speaker.17laimai.cn';
|
|||
|
|
const TOKEN = 'HK1733377641';
|
|||
|
|
const MESSAGE = '商家收款,';
|
|||
|
|
|
|||
|
|
public static function send($data)
|
|||
|
|
{
|
|||
|
|
try {
|
|||
|
|
$api = '/notify.php';
|
|||
|
|
|
|||
|
|
if (empty($data)) {
|
|||
|
|
throw new \Exception('请填写参数');
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!isset($data['id'])) {
|
|||
|
|
// 指该云音箱标签上的的 SN/ID
|
|||
|
|
throw new \Exception('请输入设备上的SN码');
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!isset($data['version']) && $data['version'] <= 0) {
|
|||
|
|
// 接口版本 按音箱标签上标注的VERSION版本,由用户配置时选择,预留1-9供选择
|
|||
|
|
throw new \Exception('设备版本号输入错误: 1-9');
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (empty($data['message'])) {
|
|||
|
|
$data['message'] = self::MESSAGE;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$result = self::curlPost($api, $data);
|
|||
|
|
|
|||
|
|
if ($result['errcode'] == 0 && $result['errmsg'] == 'ok') {
|
|||
|
|
return [
|
|||
|
|
'code' => 1,
|
|||
|
|
];
|
|||
|
|
}
|
|||
|
|
return [
|
|||
|
|
'code' => 0,
|
|||
|
|
'msg' => $result['errmsg']
|
|||
|
|
];
|
|||
|
|
} catch (\Exception $e) {
|
|||
|
|
return [
|
|||
|
|
'code' => 0,
|
|||
|
|
'msg' => $e->getMessage()
|
|||
|
|
];
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
private static function curlPost($api, $postData)
|
|||
|
|
{
|
|||
|
|
$postData['token'] = self::TOKEN;
|
|||
|
|
|
|||
|
|
$curl = curl_init();
|
|||
|
|
|
|||
|
|
curl_setopt_array($curl, [
|
|||
|
|
CURLOPT_URL => self::URI . $api,
|
|||
|
|
CURLOPT_RETURNTRANSFER => true,
|
|||
|
|
CURLOPT_ENCODING => "",
|
|||
|
|
CURLOPT_MAXREDIRS => 10,
|
|||
|
|
CURLOPT_TIMEOUT => 30,
|
|||
|
|
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
|
|||
|
|
CURLOPT_CUSTOMREQUEST => "POST",
|
|||
|
|
CURLOPT_POSTFIELDS => http_build_query($postData),
|
|||
|
|
CURLOPT_HTTPHEADER => [
|
|||
|
|
"content-type: application/x-www-form-urlencoded"
|
|||
|
|
],
|
|||
|
|
]);
|
|||
|
|
|
|||
|
|
$response = curl_exec($curl);
|
|||
|
|
|
|||
|
|
$err = curl_error($curl);
|
|||
|
|
if ($err) {
|
|||
|
|
return "CURL Error #:" . $err;
|
|||
|
|
}
|
|||
|
|
return json_decode($response,true);
|
|||
|
|
}
|
|||
|
|
}
|