[已解决]webman能否实现支持 MQTT?有没有相关示例?

lvhejin

问题描述

想让webman通过MQTT实现的物联网设备消息的订阅消费,查了workerman/mqtt相关手册,试了好几次都没搞定,有没有哪位朋友利用webman实现MQTT客户端的相关示例?

问题已解决,使用方法如下

MQTT使用方法

1、在webman根目录输入命令行

composer require workerman/mqtt

2、在process下创建一个类,如下所示
截图

namespace process;
use Workerman\Worker;

class Mqtttask
{
    public static function onWorkerStart()
    {
        $mqtt = new \Workerman\Mqtt\Client('mqtt://127.0.0.1:1883', array(
            //'debug' => true,
            "username"=>"admin",
            "password"=>"admin",
            "client_id"=>"admin"
        ));
        $mqtt->onConnect = function($mqtt) {
            $mqtt->subscribe('test');
        };
        $mqtt->onMessage = function($topic, $content) {
            echo "topic:$topic content:$content\n";
        };
        $mqtt->connect();
    }

}

3、编辑config/process.php文件
截图

在return[]内添加进程

'mqtttask'=>[
        'handler'=>process\Mqtttask::class,
        'count'=>1
    ]

4、启动webman,即可完成
debug方式运行(用于开发调试)

php start.php start

daemon方式运行(用于正式环境)

php start.php start -d

windows用户用 双击windows.bat 或者运行

php windows.php
916 1 4
1个回答

稚出

没搞定是什么意思?有什么问题发出来

年代过于久远,无法发表回答
🔝