ANYEVENT-MQTT-SUB(1)

πŸ“¦ version 1.212810, in alpine 3.24

okay bestie, welcome to the ANYEVENT-MQTT-SUB(1) manual page β€” yes, from the User Contributed Perl Documentation corner of the universe β€” and it's all about anyevent-mqtt-sub, a Perl script that subscribes to MQTT topics. πŸ’–βœ¨

πŸ’– NAME πŸ’–

anyevent-mqtt-sub β€” Perl script for subscribing to an MQTT topic. no cap. 🫢

πŸŽ€ VERSION πŸŽ€

version 1.212810 β€” that's the version, bestie. πŸ’…

πŸ¦‹ SYNOPSIS πŸ¦‹

anyevent-mqtt-sub [options] topic1 [topic2] [topic3] ...

✨ DESCRIPTION ✨

This script subscribes to one or more MQTT topics and prints any messages that it receives to stdout. It's giving simple, iconic, and useful. πŸ’–

πŸ’… OPTIONS πŸ’…

okay so here are all the flags β€” every single one, because we don't skip the boring parts in this group chat. πŸ“

  • -help β€” Print a brief help message. cute. ✨
  • -man β€” Print the manual page. (you're literally in one right now lol) πŸ“–
  • -host A.B.C.D β€” The host running the MQTT service. The default is 127.0.0.1. 🏠
  • -port NNNNN β€” The port of the running MQTT service. The default is 1883. πŸ”Œ
  • -client-id STRING β€” The client id to use in the connect message. The default is 'NetMQTTpm' followed by the process id of the process. For maximum compatibility, this should be up to 23 characters and only use the characters A-Z, a-z, and 0-9. πŸ’³
  • -qos N β€” The QoS level for the published message. The default is 0 ("MQTT_QOS_AT_MOST_ONCE"). πŸ“¨
  • -verbose β€” Include more verbose output. Without this option the script only outputs errors and received messages one per line in the form topic message. With one -verbose option, publish messages are printed in a form of a summary of the header fields and the payload in hex dump and text form. With two -verbose options, summaries are printed for all messages sent and received. πŸ‘€πŸ”₯
  • -keepalive NNN β€” The keep alive timer value. Defaults to 120 seconds. For simplicity, it is also currently used as the connection/subscription timeout. ⏲️
  • -count NNN β€” Read the specified number of MQTT messages and then exit. Default is 0 β€” read forever. 🌈
  • -one or -1 β€” Short for -count 1. Read one message and exit. ☝️
  • --no-retain β€” Ignore retained messages. That is, wait for new messages rather than processing existing retained messages. 🚫
  • --code CODE β€” Use CODE for callback. The caller is responsible for ensuring that the code to be executed is safe β€” i.e. not system('rm -rf /');. The code will be called with the following arguments in @_:
    • The topic of the received message.
    • The message payload.
    • The Net::MQTT::Message object for the message.
    • A condvar that can be emitted to quit the subscribe loop.
    • The AnyEvent::MQTT object.
    • An empty hash reference that can be used as a stash.

For example:

my ($topic, $payload, $message, $quitcv, $mqtt, $stash) = @_;
print STDERR $topic, ': ', $payload, "\n";
$quitcv->send if ($stash->{'count'}++ > 10);

If a callback is provided with this option then the builtin callback is no longer called. 🫢

🌈 SEE ALSO 🌈

πŸ’€ DISCLAIMER πŸ’€

This is not official IBM code. The author works for IBM but wrote this in spare time (with permission) for fun. no cap. πŸ™ˆ

🧚 AUTHOR 🧚

Mark Hindess β€” <soft-cpan@temporalanomaly.com> β€” iconic. πŸ‘‘

This software is copyright (c) 2014 by Mark Hindess. πŸ“…

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. πŸ’–


mwah πŸ’‹ β€” this page is from perl v5.42.2, dated 2026-04-15, and it's the ANYEVENT-MQTT-SUB(1) manual. bye bestie! πŸŒΈπŸ’…

πŸ“¦ where this page comes from