workerman/mqtt
O MQTT é um protocolo de transporte de mensagens no estilo publish/subscribe de arquitetura cliente/servidor e tornou-se uma parte importante da Internet das Coisas (IoT). Sua filosofia de design é de ser leve, aberto, simples, padronizado e fácil de implementar. Essas características fazem com que seja uma ótima escolha para muitos cenários, especialmente para comunicação entre máquinas (M2M) e ambientes de IoT.
workerman\mqtt é uma biblioteca cliente MQTT assíncrona baseada em workerman, que pode ser usada para receber ou enviar mensagens no protocolo MQTT. Suporta QoS 0
, QoS 1
e QoS 2
. Suporta as versões MQTT
3.1
, 3.1.1
e 5
.
Endereço do Projeto
https://github.com/walkor/mqtt
Instalação
composer require workerman/mqtt
Exemplo
subscribe.php
<?php
use Workerman\Worker;
require_once __DIR__ . '/vendor/autoload.php';
$worker = new Worker();
$worker->onWorkerStart = function(){
$mqtt = new Workerman\Mqtt\Client('mqtt://test.mosquitto.org:1883');
$mqtt->onConnect = function($mqtt) {
$mqtt->subscribe('test');
};
$mqtt->onMessage = function($topic, $content){
var_dump($topic, $content);
};
$mqtt->connect();
};
Worker::runAll();
Execute no terminal php subscribe.php start
para iniciar.
publish.php
<?php
use Workerman\Worker;
require_once __DIR__ . '/vendor/autoload.php';
$worker = new Worker();
$worker->onWorkerStart = function(){
$mqtt = new Workerman\Mqtt\Client('mqtt://test.mosquitto.org:1883');
$mqtt->onConnect = function($mqtt) {
$mqtt->publish('test', 'hello workerman mqtt');
};
$mqtt->connect();
};
Worker::runAll();
Execute no terminal php publish.php start
para iniciar.