____ _ _ ____ __ __ ___ _____ _____ | _ \| | | | _ \| \/ |/ _ \_ _|_ _| | |_) | |_| | |_) | |\/| | | | || | | | | __/| _ | __/| | | | |_| || | | | |_| |_| |_|_| |_| |_|\__\_\|_| |_|
composer require simps/mqtt-cli
$ php vendor/bin/mqtt publish --helpDescription: Publishing simple messagesUsage: publish [options]Options: -H, --host[=HOST] Specify the host to connect to [default:"localhost"] -P, --port[=PORT] Connect to the port specified [default: 1883] -t, --topic=TOPIC The MQTT topic on which to publish the message -m, --message=MESSAGE Send a single message from thecommand line -i, --id[=ID] The id to usefor this client [default:""] --qos[=QOS] Specify the quality of service to usefor the message, from 0, 1 and 2 [default: 0] --dup[=DUP] If the DUP flag isset to 0, it indicates that this is the first occasion that the Client or Server has attempted to send this PUBLISH packet [default: 0] -r, --retain[=RETAIN] If the RETAIN flag isset to 1in a PUBLISH packet sent by a Client to a Server, the Server MUST replace any existing retained messagefor this topic and store the Application Message [default: 0] -u, --username[=USERNAME] Provide a username to be usedfor authenticating with the broker -p, --pw[=PW] Provide a password to be usedfor authenticating with the broker -c, --clean-session[=CLEAN-SESSION] Setting the'clean session' flag [default: true] -l, --level=LEVEL MQTT Protocol level [default: 4] -k, --keepalive[=KEEPALIVE] The number of seconds between sending PING commands to the brokerfor the purposes of informing it we are still connected and functioning [default: 0] --will-topic[=WILL-TOPIC] The topic on which to send a Will,in the event that the client disconnects unexpectedly --will-message[=WILL-MESSAGE] Specify a message that will be stored by the broker and sent outif this client disconnects unexpectedly --will-qos[=WILL-QOS] The QoS to usefor the Will [default: 0] --will-retain[=WILL-RETAIN] If given,if the client disconnects unexpectedly the message sent out will be treated as a retained message [default: 0] -S, --ssl[=SSL] Enable SSL encryption [default: false] --config-path[=CONFIG-PATH] Setting the Swoole config file path --properties-path[=PROPERTIES-PATH] Setting the Properties config file path -h, --help Displayhelpfor the given command. When nocommand is given displayhelpfor the listcommand -q, --quiet Do not output any message -V, --version Display this application version --ansi Force ANSI output --no-ansi Disable ANSI output -n, --no-interaction Do not ask any interactive question -v|vv|vvv, --verbose Increase the verbosity of messages: 1for normal output, 2for more verbose output and 3for debugHelp: An MQTT version 3.1/3.1.1/5.0 clientfor publishing simple messages
$ php vendor/bin/mqtt subscribe --helpDescription: Subscribing to topicsUsage: subscribe [options]Options: -H, --host[=HOST] Specify the host to connect to [default:"localhost"] -P, --port[=PORT] Connect to the port specified [default: 1883] -i, --id[=ID] The id to usefor this client [default:""] --qos=QOS Specify the quality of service to usefor the message, from 0, 1 and 2 (multiple values allowed) -t, --topic=TOPIC The MQTT topic to subscribe to (multiple values allowed) -u, --username[=USERNAME] Provide a username to be usedfor authenticating with the broker -p, --pw[=PW] Provide a password to be usedfor authenticating with the broker -c, --clean-session[=CLEAN-SESSION] Setting the'clean session' flag [default: true] -l, --level=LEVEL MQTT Protocol level [default: 4] -k, --keepalive[=KEEPALIVE] The number of seconds between sending PING commands to the brokerfor the purposes of informing it we are still connected and functioning [default: 0] --will-topic[=WILL-TOPIC] The topic on which to send a Will,in the event that the client disconnects unexpectedly --will-message[=WILL-MESSAGE] Specify a message that will be stored by the broker and sent outif this client disconnects unexpectedly --will-qos[=WILL-QOS] The QoS to usefor the Will [default: 0] --will-retain[=WILL-RETAIN] If given,if the client disconnects unexpectedly the message sent out will be treated as a retained message [default: 0] -S, --ssl[=SSL] Enable SSL encryption [default: false] --config-path[=CONFIG-PATH] Setting the Swoole config file path --properties-path[=PROPERTIES-PATH] Setting the Properties config file path -U, --unsubscribe[=UNSUBSCRIBE] Topics that need to be unsubscribed (multiple values allowed) -e, --event[=EVENT] Subscribed EventDispatcher [default:""] -h, --help Displayhelpfor the given command. When nocommand is given displayhelpfor the listcommand -q, --quiet Do not output any message -V, --version Display this application version --ansi Force ANSI output --no-ansi Disable ANSI output -n, --no-interaction Do not ask any interactive question -v|vv|vvv, --verbose Increase the verbosity of messages: 1for normal output, 2for more verbose output and 3for debugHelp: An MQTT version 3.1/3.1.1/5.0 clientfor subscribing to topics
There are two config:--config-path and--properties-path, you need to specify the path to the config file.
// config.phpreturn ['open_mqtt_protocol' =>true,'package_max_length' =>2 *1024 *1024,];
// properties.phpreturn ['publish' => ['topic_alias' =>1,'message_expiry_interval' =>12, ],'will' => ['will_delay_interval' =>60,'message_expiry_interval' =>60, ],];