1

我是 MQTT 的新手。任何人都可以帮助如何在 PHP 中使用 Rabbitmq mqtt,我在云中有 MQTT 代理,所以我想在本地系统中基于 PHP 进行开发。我们要下载任何库吗?任何人都可以在 Ubuntu 中提供帮助吗?

4

1 回答 1

0

您可以使用客户端库:https ://github.com/bluerhinos/phpMQTT ,如此处所述:https ://www.cloudamqp.com/docs/php_mqtt.html

出版商

require("phpMQTT.php");
$host = "hostname";
$port = port;
$username = "username";
$password = "password";
$message = "Hello CloudAMQP MQTT!";

//MQTT client id to use for the device. "" will generate a client id     automatically
$mqtt = new phpMQTT($host, $port, "ClientID".rand());

if ($mqtt->connect(true,NULL,$username,$password)) {
  $mqtt->publish("topic",$message, 0);
  $mqtt->close();
}else{
  echo "Fail or time out";
}

订户

require("phpMQTT.php");

$host = "hostname";
$port = port;
$username = "username";
$password = "password";

$mqtt = new phpMQTT($host, $port, "ClientID".rand());

if(!$mqtt->connect(true,NULL,$username,$password)){
  exit(1);
}

//currently subscribed topics
$topics['topic'] = array("qos"=>0, "function"=>"procmsg");
$mqtt->subscribe($topics,0);

while($mqtt->proc()){
}

$mqtt->close();
function procmsg($topic,$msg){
  echo "Msg Recieved: $msg";
}   

所有 CloudAMQP 服务器上默认启用 MQTT,因此如果您使用 CloudAMQP 作为 MQTT 代理,则无需启用 MQTT 插件。如果没有,则需要启用此插件:https ://www.rabbitmq.com/mqtt.html

于 2017-09-07T09:57:14.027 回答