- Jan 04, 2023
-
-
Rob Swindell authored
<server>/state is now published directly to the <sever> topic level (the "state" topic goes away). Moved <bbs-id>/node# topics to <bbs-id>/nodes/# (allows better wild-card subscription per MQTT standards). Publishing total node count to <bbs-id>/nodes rather than <bbs-id>/node_count Introduced "publish verbosity" control (defaults to "High") - if you want nice human readable (and sometimes redundant) topic messages, leave this set to "High". To reduce traffic, set to "Low". It's expected that purpose-built Synchronet/MQTT clients should work equally-well with either setting, but when using generic MQTT clients/browser, "high" verbosity is nice. The human-readable node status is only published when "high" verbosity is enabled. Publishing the BBS name to the <bbs-id> topic, the instance hostname (as configured in sbbs.ini) to the <host> topic. Makes the hierarchy much more clear when using an MQTT browser like MQTT Explorer.
-
Rob Swindell authored
This is more consistent with how these events are logged in a BBS-common log file in data/*.log. This change also restores the server abbreviation to the error log entries that used to be there until recently.
-
Rob Swindell authored
Each Synchronet server is now its own MQTT client. This means there's no longer any MQTT logic in the Synchronet "hosts" (e.g. sbbscon.c, ctrl/*.cpp) and none needed for SBBS NT services (they'll "just work" with MQTT). This also means that just about everything (except for nodes, spam and hack) is now published per-server (in the sbbs/BBS-ID/hostname/server/ topic branch) and if you want aggregated totals or client lists, you'll have to do that in your own MQTT client or dashboard. I also removed the publishing of thread_count and socket_count topics as they weren't universally supported across all servers and are of questionable value. They can be added back later if determined to be useful.
-
- Jan 03, 2023
-
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
Should fix the new crash issues reported by Retros via #synchronet on irc.synchro.net
-
- Jan 02, 2023
-
-
Rob Swindell authored
warning: passing argument 2 of ‘mosquitto_message_callback_set’ from incompatible pointer type
-
Rob Swindell authored
Now support subscriptions (e.g. recycle topics, node input topics) in SBBSCTRL. This required a lot of search/replace and fun with circular struct pointers.
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
The only difference in the data/scheme is that the "error" topic (error log) is now under each server rather than each host. I don't *think* there are any other changes from the MQTT consumer side. Still not done: subscribing (e.g. support for recycle or node-spy-input via MQTT) and NT services support. This change also includes a cool feature that will prompt the sysop if there's a timeout (30 seconds) while waiting for servers to shutdown gracefully and giving the sysop the option to abort (Cancel) the wait (and shutdown ungracefully) or continue the wait (OK).
-
- Dec 24, 2022
-
-
Rob Swindell authored
By moving mosquitto_will_set() call into mqtt_connect(). I'm still having the issue that the LWT is being published after mosquitto_disconnect(), even though I set the "force" parameter to false in the call to mqtt_loop_stop()
-
Rob Swindell authored
This can be used to clear a 'retained' topic (of any type).
-
- Dec 21, 2022
-
-
Rob Swindell authored
-
- Dec 17, 2022
-
-
Rob Swindell authored
(minimum severity of log messages that will be published via MQTT)
-
- Dec 13, 2022
-
-
Rob Swindell authored
publish QOS still defaults to 0 (for now at least), while subscribe QOS defaults to 2.
-
Rob Swindell authored
-
- Dec 12, 2022
-
-
Rob Swindell authored
Default MQTT version is 5 Default username, password are block. Up to 255 chars each.
-
Rob Swindell authored
Requires libmosquitto (e.g. install mosquitto-dev pkg) and set in ctrl/main.ini: [mqtt] Enabled=true broker_addr=127.0.0.1 broker_port=1883 qos=0 keepalive=10 Next up: Windows support
-