PHP 使用mosquiito

近期业务需要,调研和使用基于mqtt协议的mosquitto,开发一个消息推送系统。

环境:ubuntu 14.04,php7.1,mosquitto

安装mosquitto

sudo apt-get install mosquitto

安装PHP的mosquitto扩展

  • sudo pecl install Mosquitto-alpha
  • 然后把"extension=mosquitto.so "加到" php.ini"
  • 重启PHP

编写PHP代码,vim MqttMessage.php

class MqttMessage{
    public function Message(){
        $client = new Mosquitto\Client();
        $client->onConnect(function($code, $message) use ($client) {
            var_dump($code);
            var_dump($message);
            $client->subscribe('testing', 0);//订阅topic为testing的消息
        });
        $client->onMessage(function($message) use($client){
            echo $message->topic, "\n", $message->payload, "\n\n";
            $client->publish('testing2','testing2',0);//想topic为testing2,发布消息“testing2”
        });

        $client->connect('127.0.0.1', 1883);
        $client->loopForever();

    }
}
$mqtt =new MqttMessage();

 
$mqtt->Message();

运行PHP脚本
php MqttMessage.php
图片描述

发布消息

mosquitto_pub -t testing -m testing-messgae

php脚本接受到消息并且打印出来

clipboard.png

PHP脚本中,在收到消息后,会发布一个消息到topic为testing2中,后台会接收消息

clipboard.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值