众所周知,HA、NR这些很强大,但一般只能在内网访问,要实现外网管理设备,一般有以下几种方案:
- 内网穿透:需要有公网服务器进行中转;
- 端口映射+DDNS:需要有域名并部署动态域名解析;
- HomeKit远程控制:需要iPhone且有iPad或HomePod做家庭中枢。
其实MQTT也很强大,如果能在手机上操控MQTT,再在NodeRED做相应的订阅发布,也可以实现外网手机管理设备。
经过对play商店上几款MQTT APP的试用,我发现IotMQTTPanel是一款很不错的APP,很符合我的需求。
- 首先,在IotMQTTPanel设置MQTT,可以试用http://test.mosquitto.org/ 这个公开免费的
- 然后添加MQTT面板
- 例如添加一个开关类型的,通过订阅主题获得开关状态,通过发布主题控制开关
- 当然,还需要在NodeRED实现相应的MQTT处理
- 此外,借助IotMQTTPanel的克隆面板功能,我们可以很方便的把面板复制到其他MQTT,例如我设置了两个MQTT,一个外网的,一个内网的,两个MQTT实现相同功能,修改成本很小
IotMQTTPanel是我目前发现的最好用的安卓MQTT APP,界面不算难看,也没见广告,唯一不足的是免费版不支持通知功能,总的来说还是蛮好用的,推荐坛友们折腾~