24 lines
704 B
PHP
24 lines
704 B
PHP
<?php
|
|
set_time_limit(30);
|
|
require __DIR__ . '/vendor/autoload.php';
|
|
|
|
use PhpMqtt\Client\MqttClient;
|
|
use PhpMqtt\Client\ConnectionSettings;
|
|
|
|
$data = [];
|
|
$mqtt = new MqttClient('xupas.mooo.com', 1883, 'web-sniffer-'.rand());
|
|
$settings = (new ConnectionSettings)->setUsername('xupa')->setPassword('xupa');
|
|
$mqtt->connect($settings, true);
|
|
|
|
$mqtt->subscribe('esp/+/event', function($topic, $message) use (&$data, $mqtt) {
|
|
$data[] = ['topic'=>$topic, 'message'=>$message];
|
|
if (count($data) >= 5) {
|
|
$mqtt->interrupt(); // para o loop depois de 5 msg
|
|
}
|
|
}, 0);
|
|
|
|
$mqtt->loop(true);
|
|
|
|
header('Content-Type: application/json');
|
|
echo json_encode($data, JSON_PRETTY_PRINT);
|