v1.2主要修改了Client的构造函数参数和Protocol的命名空间,优化了重连逻辑。Protocol新增一层Protocol,使用V3和V5来区分MQTT协议层级。同时将Simps\MQTT\Types移动到Protocol,改成Simps\MQTT\Protocol\Types。1.1Simps\MQTT\Protocol::pack(数组$array)Simps\MQTT\ProtocolV5::pack(数组$array)Simps\MQTT\ProtocolInterface::MQTT_PROTOCOL_LEVEL_3_1;Simps\MQTT\Types::CONNECT;1.2Simps\MQTT\Protocol\V3::pack(array$array)Simps\MQTT\Protocol\V5::pack(array$array)Simps\MQTT\Protocol\ProtocolInterface::MQTT_PROTOCOL_LEVEL_3_1;Simps\MQTT\Protocol\Types::CONNECT;客户端之前的客户端直接传数组参数,现在改成对象方法。1.1useSimps\MQTT\Client;$config=['host'=>'127.0.0.1','port'=>1883,'user_name'=>'','password'=>'','client_id'=>Client::genClientID(),'keep_alive'=>10,];$swooleConfig=['open_mqtt_protocol'=>true,'package_max_length'=>2*1024*1024,'connect_timeout'=>1.0,'write_timeout'=>3.0,'read_timeout'=>0.5,];$client=newClient($config,$swooleConfig);1.2useSimps\MQTT\Client;useSimps\MQTT\Config\ClientConfig;$config=newClientConfig();$config->setUserName('')->setPassword('')->setClientId(Client::genClientID())->setKeepAlive(10);$swooleConfig=['open_mqtt_protocol'=>true,'package_max_length'=>2*1024*1024,'connect_timeout'=>1.0,'write_timeout'=>3.0,'read_timeout'=>0.5,];$config->setSwooleConfig($swooleConfig);$client=newClient('127.0.0.1',1883,$config);//也可以这样设置$config=newClientConfig(['userName'=>'','password'=>'','clientId'=>'','keepAlive'=>10,'protocolName'=>'MQTT','protocolLevel'=>4,'properties'=>[],'delay'=>3000,//3s'swooleConfig'=>[]]);$client=newClient('127.0.0.1',1883,$config);将日志更新到不兼容的更新命名空间(2204df6)(28f8abe)删除不受支持的PHP7.0(3dc5bcd)增强功能添加所有常量的可见性标识符(0176469)添加ClientConfig(d90b9dc)优化客户端(9229224)更新测试和示例代码(959a21d)(08531ac)增加重连次数限制,优化重连延迟时间(#32)关于PHPMQTTMQTT协议解析&协程客户端PHP的MQTT协议解析和协程客户端支持MQTT协议3.1、3.1.1和5.0版本,支持QoS0、QoS1,QoS2第一个支持MQTTv5.0协议的PHP库文档:https://mqtt.simps.ioGitHub:https://github.com/simps/mqttGitee:https://gitee.com/phpiot/mqttsupport记得订个Star~
