Merge branch 'master' of http://111.229.174.37:3000/Food/food_server
This commit is contained in:
commit
d27915f11a
@ -6,7 +6,6 @@ use Yansongda\Pay\Pay;
|
|||||||
use PhpMqtt\Client\MqttClient;
|
use PhpMqtt\Client\MqttClient;
|
||||||
use PhpMqtt\Client\Exceptions\MqttClientException;
|
use PhpMqtt\Client\Exceptions\MqttClientException;
|
||||||
use PhpMqtt\Client\ConnectionSettings;
|
use PhpMqtt\Client\ConnectionSettings;
|
||||||
use PhpMqtt\Client\Message;
|
|
||||||
|
|
||||||
class PayController extends PublicController
|
class PayController extends PublicController
|
||||||
{
|
{
|
||||||
@ -83,42 +82,14 @@ class PayController extends PublicController
|
|||||||
|
|
||||||
public function notifyCallback()
|
public function notifyCallback()
|
||||||
{
|
{
|
||||||
$server = 'www.szdot.top'; // MQTT 代理地址
|
$pay = Pay::wechat($this->config);
|
||||||
$port = 1883; // MQTT 代理端口
|
|
||||||
$clientId = 'php-mqtt-client'; // 客户端 ID
|
|
||||||
$username = 'admin'; // 用户名(如果需要)
|
|
||||||
$password = '123456'; // 密码(如果需要)
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
// 创建连接设置对象
|
$data = $pay->callback(); // 是的,验签就这么简单!
|
||||||
$settings = (new ConnectionSettings)->setUsername($username)->setPassword($password);
|
} catch (\Exception $e) {
|
||||||
// 实例化 MQTT 客户端
|
// $e->getMessage();
|
||||||
$mqtt = new MqttClient($server, $port, $clientId);
|
|
||||||
// 连接到 MQTT 代理
|
|
||||||
$mqtt->connect($settings);
|
|
||||||
// 检查是否连接成功
|
|
||||||
if ($mqtt->isConnected()) {
|
|
||||||
echo "连接成功";
|
|
||||||
// 发布消息到指定的主题 ps:主题 信息 qos
|
|
||||||
$mqtt->publish('demo', 'Hello MQTT', 0);
|
|
||||||
// 断开连接
|
|
||||||
$mqtt->disconnect();
|
|
||||||
echo "断开连接";
|
|
||||||
} else {
|
|
||||||
echo "连接失败";
|
|
||||||
}
|
|
||||||
} catch (MqttClientException $e) { //连接失败
|
|
||||||
echo "Could not connect to MQTT broker: " . $e->getMessage();
|
|
||||||
}
|
}
|
||||||
// $pay = Pay::wechat($this->config);
|
|
||||||
|
|
||||||
// try {
|
|
||||||
// $data = $pay->callback(); // 是的,验签就这么简单!
|
|
||||||
// } catch (\Exception $e) {
|
|
||||||
// // $e->getMessage();
|
|
||||||
// }
|
|
||||||
|
|
||||||
// return $pay->success();
|
|
||||||
|
|
||||||
|
$this->publish('demo', $data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -7,6 +7,10 @@ use Think\Controller;
|
|||||||
use Firebase\JWT\JWT;
|
use Firebase\JWT\JWT;
|
||||||
use Firebase\JWT\Key;
|
use Firebase\JWT\Key;
|
||||||
|
|
||||||
|
use PhpMqtt\Client\MqttClient;
|
||||||
|
use PhpMqtt\Client\Exceptions\MqttClientException;
|
||||||
|
use PhpMqtt\Client\ConnectionSettings;
|
||||||
|
|
||||||
class PublicController extends Controller
|
class PublicController extends Controller
|
||||||
{
|
{
|
||||||
protected $openid; // 用户openid
|
protected $openid; // 用户openid
|
||||||
@ -103,4 +107,37 @@ class PublicController extends Controller
|
|||||||
return $phoneNumber;
|
return $phoneNumber;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* @description: 连接mqtt服务器 并向指定主题发布信息
|
||||||
|
* @param string $topic mqtt主题
|
||||||
|
* @param string $msg 要发布的主题
|
||||||
|
*/
|
||||||
|
protected function publish($topic, $msg)
|
||||||
|
{
|
||||||
|
$server = C('mqtt')['server']; // MQTT 代理地址
|
||||||
|
$port = C('mqtt')['port']; // MQTT 代理端口
|
||||||
|
$clientId = C('mqtt')['client_id']; // 客户端 ID
|
||||||
|
$username = C('mqtt')['username']; // 用户名(如果需要)
|
||||||
|
$password = C('mqtt')['password']; // 密码(如果需要)
|
||||||
|
|
||||||
|
try {
|
||||||
|
// 创建连接设置对象
|
||||||
|
$settings = (new ConnectionSettings)->setUsername($username)->setPassword($password);
|
||||||
|
// 实例化 MQTT 客户端
|
||||||
|
$mqtt = new MqttClient($server, $port, $clientId);
|
||||||
|
// 连接到 MQTT 代理
|
||||||
|
$mqtt->connect($settings);
|
||||||
|
// 检查是否连接成功
|
||||||
|
if ($mqtt->isConnected()) {
|
||||||
|
// 发布消息到指定的主题 ps:主题 信息 qos
|
||||||
|
$mqtt->publish($topic, $msg, 0);
|
||||||
|
// 断开连接
|
||||||
|
$mqtt->disconnect();
|
||||||
|
} else {
|
||||||
|
echo "连接失败";
|
||||||
|
}
|
||||||
|
} catch (MqttClientException $e) { //连接失败
|
||||||
|
echo "Could not connect to MQTT broker: " . $e->getMessage();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
/*
|
/*
|
||||||
* @Author: 田老师 4021673@qq.com
|
* @Author: 田老师 4021673@qq.com
|
||||||
* @Date: 2022-05-16 17:57:44
|
* @Date: 2022-05-16 17:57:44
|
||||||
* @LastEditTime: 2024-06-04 20:39:52
|
* @LastEditTime: 2024-06-05 20:15:27
|
||||||
* @Description: Do not edit
|
* @Description: Do not edit
|
||||||
*/
|
*/
|
||||||
return array(
|
return array(
|
||||||
@ -29,7 +29,7 @@ return array(
|
|||||||
'jwtKey' => 'T!o@k_en', //签发 解析token的key
|
'jwtKey' => 'T!o@k_en', //签发 解析token的key
|
||||||
//mqtt
|
//mqtt
|
||||||
'mqtt' => array(
|
'mqtt' => array(
|
||||||
'server' => 'szdot.top', // mqtt服务器
|
'server' => 'www.szdot.top', // mqtt服务器
|
||||||
'port' => 1883, // mqtt端口
|
'port' => 1883, // mqtt端口
|
||||||
'username' => 'admin', // mqtt用户名
|
'username' => 'admin', // mqtt用户名
|
||||||
'password' => '123456', // mqtt密码
|
'password' => '123456', // mqtt密码
|
||||||
|
Loading…
Reference in New Issue
Block a user