{"id":281010,"date":"2026-02-05T00:26:31","date_gmt":"2026-02-05T00:26:31","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/mqtt-plug\/"},"modified":"2026-02-05T00:28:20","modified_gmt":"2026-02-05T00:28:20","slug":"mqtt-plug","status":"publish","type":"plugin","link":"https:\/\/pcd.wordpress.org\/plugins\/mqtt-plug\/","author":7574497,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0","stable_tag":"1.0","tested":"6.9.4","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"MQTT-Plug","header_author":"potar","header_description":"Lightweight, general purpose MQTT-over-WebSocket viewer for WordPress; supports Live (admin) and Observer (shareable) modes.","assets_banners_color":"8a668a","last_updated":"2026-02-05 00:28:20","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/www.paypal.com\/ncp\/payment\/4RV65EGN96SLS","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":10,"downloads":185,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0":{"tag":"1.0","author":"potar","date":"2026-02-05 00:28:20"}},"upgrade_notice":{"1.0":"<p>First stable release of MQTT-Plug. Suitable for production use.<\/p>"},"ratings":[],"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3454196,"resolution":"256x256","location":"assets","locale":""},"icon-512x512.png":{"filename":"icon-512x512.png","revision":3454196,"resolution":"512x512","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3454196,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3454196,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3454196,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3454196,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3454196,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3454196,"resolution":"4","location":"assets","locale":""}},"screenshots":{"1":"Live MQTT dashboard","2":"Log Tab","3":"History Tab","4":"Settings"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[12532,74243,126135,3518,190408],"plugin_category":[],"plugin_contributors":[246848],"plugin_business_model":[],"class_list":["post-281010","plugin","type-plugin","status-publish","hentry","plugin_tags-dashboards","plugin_tags-iot","plugin_tags-mqtt","plugin_tags-realtime","plugin_tags-websocket","plugin_contributors-potar","plugin_committers-potar"],"banners":{"banner":"https:\/\/ps.w.org\/mqtt-plug\/assets\/banner-772x250.png?rev=3454196","banner_2x":"https:\/\/ps.w.org\/mqtt-plug\/assets\/banner-1544x500.png?rev=3454196","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/mqtt-plug\/assets\/icon-256x256.png?rev=3454196","icon_2x":"https:\/\/ps.w.org\/mqtt-plug\/assets\/icon-256x256.png?rev=3454196","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/mqtt-plug\/assets\/screenshot-1.png?rev=3454196","caption":"Live MQTT dashboard"},{"src":"https:\/\/ps.w.org\/mqtt-plug\/assets\/screenshot-2.png?rev=3454196","caption":"Log Tab"},{"src":"https:\/\/ps.w.org\/mqtt-plug\/assets\/screenshot-3.png?rev=3454196","caption":"History Tab"},{"src":"https:\/\/ps.w.org\/mqtt-plug\/assets\/screenshot-4.png?rev=3454196","caption":"Settings"}],"raw_content":"<!--section=description-->\n<p>MQTT-Plug brings live MQTT data directly into WordPress using secure WebSocket connections.<br \/>\nIt is designed for developers, IoT experimenters, and small production deployments that want real-time visibility without building a custom frontend.<\/p>\n\n<p>Unlike traditional MQTT tools, MQTT-Plug focuses on <strong>embedding live data into WordPress pages, posts, and dashboards<\/strong>, while keeping credentials safe and configuration simple.<\/p>\n\n<h3>Key Features<\/h3>\n\n<ul>\n<li>Connect to MQTT brokers over WS\/WSS<\/li>\n<li>Live message stream and event log<\/li>\n<li>Topic-based subscriptions<\/li>\n<li>Shortcode-driven embeds<\/li>\n<li>Works with public or authenticated dashboards<\/li>\n<li>Designed for modern MQTT backends (Mosquitto, EMQX, HiveMQ, The-Link-Builders, managed brokers)<\/li>\n<li>No external Node services required<\/li>\n<li>Lightweight; no tracking, no telemetry, no lock-in<\/li>\n<\/ul>\n\n<p>MQTT-Plug is infrastructure-agnostic. You control your broker, topics, and data flow.<\/p>\n\n<h3>Configuration<\/h3>\n\n<p>In <strong>Settings \u2192 MQTT-Plug<\/strong>, configure:<\/p>\n\n<ul>\n<li>Broker host<\/li>\n<li>WebSocket port<\/li>\n<li>TLS \/ secure connection (WSS)<\/li>\n<li>Username and password (if required)<\/li>\n<li>Base topic or subscription filter<\/li>\n<li>Debug logging (optional)<\/li>\n<\/ul>\n\n<p>All credentials are stored using WordPress options and are never exposed to public users unless explicitly enabled.<\/p>\n\n<h3>Usage<\/h3>\n\n<p>Basic shortcode:<\/p>\n\n<p>[mqtt_plug]<\/p>\n\n<p>Optional attributes:<\/p>\n\n<ul>\n<li><code>height=\"520px\"<\/code> \u2013 set container height<\/li>\n<li><code>class=\"custom-class\"<\/code> \u2013 add a CSS hook<\/li>\n<li><code>mode=\"observer\"<\/code> \u2013 server-fed or read-only views (if enabled)<\/li>\n<\/ul>\n\n<p>Example:<\/p>\n\n<p>[mqtt_plug height=\"600px\" class=\"iot-dashboard\" mode=\"observer\"]<\/p>\n\n<h3>Security Notes<\/h3>\n\n<ul>\n<li>Public pages should <strong>not<\/strong> use live credentials.<\/li>\n<li>Use observer or server-fed modes for public dashboards.<\/li>\n<li>Always prefer WSS when exposing MQTT over the internet.<\/li>\n<li>Rotate credentials regularly for production systems.<\/li>\n<\/ul>\n\n<p>MQTT-Plug does not open inbound ports on WordPress and does not proxy MQTT traffic through the server unless explicitly configured.<\/p>\n\n<h3>License<\/h3>\n\n<p>GPLv2 or later.<\/p>\n\n<h3>Credits<\/h3>\n\n<p>Developed by <strong>Michael Winchester<\/strong><br \/>\nFor documentation and updates, visit <a href=\"https:\/\/meshplug.michaelwinchester.com\/\">https:\/\/meshplug.michaelwinchester.com\/<\/a><\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>mqtt-plug<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or install via the WordPress plugin installer.<\/li>\n<li>Activate the plugin through the <em>Plugins<\/em> menu.<\/li>\n<li>Go to <strong>Settings \u2192 MQTT-Plug<\/strong> to configure your broker connection.<\/li>\n<li>Add the shortcode to any page or post.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20replace%20my%20mqtt%20broker%3F\"><h3>Does this replace my MQTT broker?<\/h3><\/dt>\n<dd><p>No. MQTT-Plug is a viewer and frontend. You still need an MQTT broker.<\/p><\/dd>\n<dt id=\"which%20brokers%20are%20supported%3F\"><h3>Which brokers are supported?<\/h3><\/dt>\n<dd><p>Any MQTT broker that supports WebSockets, including Mosquitto, EMQX, HiveMQ, and managed services.<\/p><\/dd>\n<dt id=\"can%20i%20use%20this%20for%20production%20systems%3F\"><h3>Can I use this for production systems?<\/h3><\/dt>\n<dd><p>Yes, provided you follow standard MQTT security practices. For large-scale or multi-tenant systems, a managed broker is recommended.<\/p><\/dd>\n<dt id=\"is%20javascript%20required%3F\"><h3>Is JavaScript required?<\/h3><\/dt>\n<dd><p>Yes. MQTT-Plug uses browser-based WebSocket connections for live data.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0<\/h4>\n\n<ul>\n<li>Initial stable release<\/li>\n<li>Hardened settings validation<\/li>\n<li>Improved connection lifecycle handling<\/li>\n<li>Observer-safe rendering<\/li>\n<li>Clean shortcode API<\/li>\n<li>Production-ready defaults<\/li>\n<\/ul>","raw_excerpt":"Real-time MQTT dashboards inside WordPress. Connect securely over WebSocket (WS\/WSS) and visualize live IoT data, logs, and events.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/281010","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=281010"}],"author":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/potar"}],"wp:attachment":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=281010"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=281010"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=281010"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=281010"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=281010"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=281010"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}