Рубрики
Uncategorized

Асинхронная клиентская библиотека mqtt на основе swoole, которая может использоваться для приема или отправки сообщений по протоколу mqtt

Автор оригинала: David Wong.

Асинхронная клиентская библиотека mqtt, основанная на swoole, может использоваться для приема или отправки сообщений по протоколу mqtt. Поддержка QoS 0, QoS 1 и QoS 2. Поддерживаются версии Mqtt 3.1 и 3.1.1

composer require try-to/swoole_mqtt

подписываться. php

 false,
    'client_id' => 'demo-subscribe-123456',
    'username' => '',
    'password' => '',
];

$mqtt = new Client('127.0.0.1', 1883, $options);

$mqtt->onConnect = function ($mqtt) {
    $mqtt->subscribe('/World');
};

$mqtt->onMessage = function ($topic, $content) {
    var_dump($topic, $content);
};

$mqtt->onError = function ($exception) use ($mqtt) {
    echo "error\n";
    // $mqtt->reconnect(1000);
};

$mqtt->onClose = function () {
    echo "close\n";
};

$mqtt->connect();

Запуск командной строки php subscribe.php запуск

Запуск командной строки || php subscribe.php || запуск

 false,
    'client_id' => 'demo-publish-123456',
    'username' => '',
    'password' => '',
];

$mqtt = new Client('127.0.0.1', 1883, $options);

$mqtt->onConnect = function ($mqtt) {
    $mqtt->publish('/World', 'hello swoole mqtt');
};

$mqtt->onError = function ($exception) {
    echo "error\n";
};

$mqtt->onClose = function () {
    echo "close\n";
};

$mqtt->connect();

Запуск командной строки php publish.php запуск

  • Клиент::__построить()
  • Клиент::подключение()
  • Клиент::переподключение()
  • Клиент::опубликовать()
  • Клиент::подписаться()
  • Клиент::отписаться()
  • Клиент::отключить()
  • Клиент::закрыть()
  • обратный вызов OnConnect
  • обратный вызов onMessage
  • ошибка обратного вызова
  • обратный вызов OnClose

Код адреса GitHub облачный адрес

Оригинал: “https://developpaper.com/an-asynchronous-mqtt-client-library-based-on-swoole-which-can-be-used-to-receive-or-send-messages-of-mqtt-protocol/”