<?php require __DIR__ . '/../test.inc.php'; use sskaje\mqtt\MQTT; use sskaje\mqtt\Debug; use sskaje\mqtt\MessageHandler; $client_id = isset($argv[1]) ? $argv[1] : time(); $mqtt = new MQTT($MQTT_SERVER, $client_id); $context = stream_context_create(); $mqtt->setSocketContext($context); $mqtt->setVersion(MQTT::VERSION_3_1_1); #Debug::Enable(); # $mqtt->setAuth('sskaje', '123123'); $mqtt->setKeepalive(3600); # Set Connect Will $mqtt->setWill('sskaje/bot/logout', $client_id, 1, 0); $connected = $mqtt->connect(); if (!$connected) { die("Not connected\n"); } $topics['sskaje/bot/broadcast'] = 2; $topics['sskaje/bot/' . $client_id] = 2; $mqtt->subscribe($topics); class BotAgentCallback extends MessageHandler { public function publish(MQTT $mqtt, \sskaje\mqtt\Message\PUBLISH $publish_object) { printf("[32mI got a message[0m:(msgid=%d, QoS=%d, dup=%d, topic=%s) [32m%s[0m\n", $publish_object->getMsgID(), $publish_object->getQoS(), $publish_object->getDup(), $publish_object->getTopic(), $publish_object->getMessage()); } public function suback(MQTT $mqtt, \sskaje\mqtt\Message\SUBACK $suback_object) {