Home Assistant 0.101.3
MQTT相机的topic负载所需要的载荷是PNG等格式图片文件内容字节数组,然而0.102版本有bug,虽然图片能够成功上传,但是Home Assistant会一直报无法解码warning,占用大量日志存储。
该办法可以通过简单修改Home Assistant代码实现。首先要确定Home Assistant安装位置,可以进入python,导入包,查看包路径得到安装位置。
在Home Assistant的程序包路径下,搜索文件内容can't decode payload,即可定位文件在homeassistant/components/mqtt/__init__.py。
在该文件中,查看出现报错的位置的代码,如图所示。
为了防止warning载荷太长,可以在如图位置添加截取前20个字节。
这样操作之后,再查看日志,可以看到报错消息长度大幅缩短。如果希望完全不出现该warning,可以自己修改代码,判断字节数组是否是图片。以PNG为例,如果第1~3字节为'PNG',则不报warning。
1、MQTT相机的topic负载所需要的载荷是PNG等格式图片文件内容字节数组,然而0.102版本有bug,虽然图片能够成功上传,但是Home Assistant会一直报无法解码warning,占用大量日志存储。 2、该办法可以通过简单修改Home Assistant代码实现。首先要确定Home Assistant安装位置,可以进入python,导入包,查看包路径得到安装位置。 3、在Home Assistant的程序包路径下,搜索文件内容can't decode payload,即可定位文件在homeassistant/components/mqtt/__init__.py。 4、在该文件中,查看出现报错的位置的代码,如图所示。 5、为了防止warning载荷太长,可以在如图位置添加截取前20个字节。 6、这样操作之后,再查看日志,可以看到报错消息长度大幅缩短。如果希望完全不出现该warning,可以自己修改代码,判断字节数组是否是图片。以PNG为例,如果第1~3字节为'PNG',则不报warning。
如果遇到问题,可以在下面提出疑问。