『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
楼主: ningcol

[流程系列] 海尔NodeRed节点发布【node-red-contrib-haier】

  [复制链接]

0

主题

65

帖子

785

积分

高级会员

Rank: 4

积分
785
金钱
720
HASS币
0
发表于 2022-10-31 16:09:31 | 显示全部楼层
本帖最后由 风雨透 于 2022-10-31 22:20 编辑
astang 发表于 2022-10-31 11:57
非常感谢,已经解决了。原来是我的两台空调不能用智家里修改过的主卧空调、次卧空调这种设备名称,必须用 ...

ha里可以用HA的自动化,设置一个定时状态更新,固定时间自动触发下状态查询按钮,只是海尔的语音反馈回来的文本有时候会不一样,有时可能识别会出错,之前的文本精简,温度判断有时候返回可能会有问题,我后面是有更新了,改了个笨方法,就是把每个数字都独立出来,
QQ截图20221031154231.jpg


我主要是为了使小爱可以语音控制海尔设备,才用MQTT来做,就可以通过阿法云使小爱可以控制海尔设备
如果要用空调卡片,MQTT代码可以用climate来写,代码需要改一改,可以参考https://www.home-assistant.io/integrations/climate.mqtt/  官方的这个代码去改

如果不用MQTT,其实还有个法子来做,就是用HA自带的 辅助元素  来建开关等,之后在Node把MQTT的节点换成对应的HA中通过辅助元素建的开关,

评分

参与人数 1金钱 +5 收起 理由
ysst4 + 5 高手,这是高手!

查看全部评分

回复

使用道具 举报

9

主题

178

帖子

1367

积分

金牌会员

Rank: 6Rank: 6

积分
1367
金钱
1189
HASS币
0
发表于 2022-10-31 20:31:46 | 显示全部楼层
风雨透 发表于 2022-10-31 16:09
ha里可以用HA的自动化,设置一个定时状态更新,固定时间自动触发下状态查询按钮,只是海尔的语音反馈回来 ...

没太明白这怎么改成climate的
回复

使用道具 举报

0

主题

65

帖子

785

积分

高级会员

Rank: 4

积分
785
金钱
720
HASS币
0
发表于 2022-10-31 21:42:39 | 显示全部楼层
astang 发表于 2022-10-31 20:31
没太明白这怎么改成climate的

海尔接入新新.rar (7.05 KB, 下载次数: 128) 大概改了node流程与configuration.yaml中MQTT的代码都改了,应该是可以了,就是,用卡片,没法加状态更新按钮,HA要设定时更新状态
QQ截图20221031214112.jpg
回复

使用道具 举报

0

主题

5

帖子

32

积分

新手上路

Rank: 1

积分
32
金钱
27
HASS币
0
发表于 2022-11-3 11:00:56 | 显示全部楼层
学习一下
回复

使用道具 举报

9

主题

178

帖子

1367

积分

金牌会员

Rank: 6Rank: 6

积分
1367
金钱
1189
HASS币
0
发表于 2022-11-4 17:08:19 | 显示全部楼层
不知道为什么用节点发“书房温度是多少”,小优会回复“小优没有找到这个房间,小优帮你查到(所在城市)当前温度时......”
回复

使用道具 举报

20

主题

217

帖子

923

积分

高级会员

Rank: 4

积分
923
金钱
706
HASS币
10
发表于 2022-11-9 00:39:51 | 显示全部楼层
哇!这个简单到我都没想到能这么简单然后一开始居然不知道要输入什么。。
回复

使用道具 举报

8

主题

59

帖子

456

积分

中级会员

Rank: 3Rank: 3

积分
456
金钱
397
HASS币
0
发表于 2022-11-10 13:26:37 | 显示全部楼层
只能定时触发同步数据么...能不能进入dashboard 同步? 或者有没有自动触发的按钮 可以进入后同步的
回复

使用道具 举报

1

主题

49

帖子

1221

积分

金牌会员

Rank: 6Rank: 6

积分
1221
金钱
1167
HASS币
20
发表于 2022-11-10 18:51:51 | 显示全部楼层
风雨透 发表于 2022-10-31 16:09
ha里可以用HA的自动化,设置一个定时状态更新,固定时间自动触发下状态查询按钮,只是海尔的语音反馈回来 ...

文本不一致可以用正则来提取,热水器类似如下,仅供参考
let ret = msg.payload.response.match(/.*([开|关])机.*?([3-6]\d)度.*/)
if (ret.length > 0) {
    msg.r_status = ret[1]
    msg.r_wendu = ret[2]
}
return msg;


我比较头大的是海尔这个语音比较弱智,无法获取零冷水的状态。。我一般是节能模式(开关一下水龙头进零冷水循环),洗澡会调到洗浴循环,其实就是单次循环,海尔好像在多长时间不用水的时候自动会把单次循环给关了,也不会再自动开启节能循环。
回复

使用道具 举报

0

主题

65

帖子

785

积分

高级会员

Rank: 4

积分
785
金钱
720
HASS币
0
发表于 2022-11-11 11:33:56 | 显示全部楼层
Spending5027 发表于 2022-11-10 18:51
文本不一致可以用正则来提取,热水器类似如下,仅供参考

我比较头大的是海尔这个语音比较弱智,无法获取 ...

谢谢分享,没学过代码,只想到笨办法,
我之前也是头痛这个,主要海尔的设备很多状态不返回
我现在的做法是,在开启单次循环之后,延时2分钟在给指令关闭单次循环(刚好也顺便把HA中单次循环的开关复位为关状态),之后在跟条指令改回水动模式
回复

使用道具 举报

0

主题

4

帖子

78

积分

注册会员

Rank: 2

积分
78
金钱
74
HASS币
0
发表于 2022-12-3 01:57:58 | 显示全部楼层
这个插件可以跟homekit连接吗 ,达到用Siri控制海尔家电的目的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-4-29 23:16 , Processed in 0.061937 second(s), 35 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表