PHPMQTT v1.2.1バージョンがリリースされ、MQTTプロトコル分析とコルーチンクライアント

v1.2バージョンは、主にクライアントのコンストラクターパラメーターとプロトコルの名前空間を変更し、再接続ロジックを最適化しました。

プロトコル

新しいレイヤーを追加しProtocol、とを使用V3V5てMQTTプロトコルレベルを区別します。

同時に、次のにSimps\MQTT\Types移動され、にProtocol変更されSimps\MQTT\Protocol\Typesます。

1.1

Simps\MQTT\Protocol::pack(array $array)
Simps\MQTT\ProtocolV5::pack(array $array)
Simps\MQTT\ProtocolInterface::MQTT_PROTOCOL_LEVEL_3_1;

Simps\MQTT\Types::CONNECT;

1.2

Simps\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.1

use Simps\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 = new Client($config, $swooleConfig);

1.2

use Simps\MQTT\Client;
use Simps\MQTT\Config\ClientConfig;

$config = new ClientConfig();
$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 = new Client('127.0.0.1', 1883, $config);

// 也可以这样设置
$config = new ClientConfig([
    'userName' => '',
    'password' => '',
    'clientId' => '',
    'keepAlive' => 10,
    'protocolName' => 'MQTT',
    'protocolLevel' => 4,
    'properties' => [],
    'delay' => 3000, // 3s
    'swooleConfig' => []
]);
$client = new Client('127.0.0.1', 1883, $config);

更新ログ

下向きに互換性がない

  • 名前空間の更新(2204df6)(28f8abe)

削除する

  • PHP 7.0(3dc5bcd)をサポートしていません

強化

  • すべての定数の可視性識別子を追加します(0176469)
  • ClientConfig(d90b9dc)を追加しました
  • クライアントの最適化(9229224)
  • テストおよびサンプルコードの更新(959a21d)(08531ac)
  • 再接続回数の制限を増やし、再接続遅延時間を最適化する(#32)

PHPMQTTについて

  • MQTTプロトコル分析とコルーチンクライアント
  • MQTTプロトコル分析とPHP用コルーチンクライアント
  • MQTTプロトコル3.1、3.1.1、5.0バージョンをサポートし、QoS 0、QoS 1、QoS2をサポートします
  • MQTTv5.0プロトコルをサポートする最初のPHPライブラリ

文档:https
//mqtt.simps.io GitHub:https//github.com/simps/mqtt
Gitee:https//gitee.com/phpiot/mqtt

サポートはスターを注文することを忘れないでください〜

おすすめ

転載: www.oschina.net/news/128004/phpmqtt-1-2-1-released
おすすめ