LaravelPackages.net
Acme Inc.
Toggle sidebar
alhaji-aki/laravel-mqtt-client

A package to subscribe and publish to mqtt protocols

3
0
About alhaji-aki/laravel-mqtt-client

alhaji-aki/laravel-mqtt-client is a Laravel package for a package to subscribe and publish to mqtt protocols. It currently has 0 GitHub stars and 3 downloads on Packagist. Install it with composer require alhaji-aki/laravel-mqtt-client. Discover more Laravel packages by alhaji-aki or browse all Laravel packages to compare alternatives.

Last updated

installation

composer require alhaji-aki/laravel-mqtt-client

publish config and adds listen command to app

php artisan mqtt:install

change the logic in the listen command and register it in the Command Kernel

available methods:

connect to a broker

MqttClient::connect();

get connection

MqttClient::connect()->connection();

disconnect

use AlhajiAki\MqttClient\Facades\MqttClient;

$connection = MqttClient::connect()->connection();
$connection->disconnect();

publish

use AlhajiAki\MqttClient\Facades\MqttClient;

$data = [
    'foo' => 'bar',
    'bar' => 'baz',
    'time' => time(),
]

MqttClient::connect()->publish('foo/bar', json_encode($data), 0);

subscribe

use AlhajiAki\MqttClient\Facades\MqttClient;
use Morbo\React\Mqtt\Packets\Publish;

MqttClient::connect()->subscribe('foo/bar', function ($stream) {
    $stream->on(Publish::EVENT, function (Publish $message) {
        printf(
            'Received payload "%s" for topic "%s"%s',
            $message->getPayload(),
            $message->getTopic(),
            PHP_EOL
        );
    });
}, 0);

unsubscribe

use AlhajiAki\MqttClient\Facades\MqttClient;

MqttClient::connect()->unsubscribe('foo/bar', function ($message) {
    printf(
        'Received payload "%s" for topic "%s"%s',
        $message->getPayload(),
        PHP_EOL
    );
}, function ($ex) {
    printf('Error occured: %s', $ex->getMessage());
});
Comments