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

 找回密码
 立即注册
查看: 4850|回复: 6

[求助] /switches 下 一个yaml中多个MQTT开关应该怎么写啊 大神们?求教

[复制链接]

13

主题

289

帖子

2000

积分

金牌会员

Rank: 6Rank: 6

积分
2000
金钱
1711
HASS币
0
发表于 2019-9-20 23:02:37 | 显示全部楼层 |阅读模式
本帖最后由 riyue0000 于 2019-9-21 22:25 编辑


试过多种方法都不对,请大神们指导啊

第一种
configuration.yaml  中 switch:!include_dir_list switchs


/switchs/shufangTC1.yaml 内容如下


platform: mqtt
name: 'tc1_1'
state_topic: 'homeassistant/switch/d0bae46412c1/plug_0/state'
command_topic: 'device/ztc1/set'
payload_on: '{"mac":"d0bae46412c1","plug_0":{"on":1}}'
payload_off: '{"mac":"d0bae46412c1","plug_0":{"on":0}}'
platform: mqtt
name: 'tc1_2'
state_topic: 'homeassistant/switch/d0bae46412c1/plug_1/state'
command_topic: 'device/ztc1/set'
payload_on: '{"mac":"d0bae46412c1","plug_1":{"on":1}}'
payload_off: '{"mac":"d0bae46412c1","plug_1":{"on":0}}'

报错 ERROR (SyncWorker_0) [homeassistant.util.yaml] YAML file /config/switchs/shufangTC1.yaml contains duplicate key "platform". Check lines 0 and 6.
2019-09-21 14:04:20 ERROR (SyncWorker_0) [homeassistant.util.yaml] YAML file /config/switchs/shufangTC1.yaml contains duplicate key "name". Check lines 1 and 7

第二种
configuration.yaml  中 switch:!include_dir_list switchs


/switchs/shufangTC1-2.yaml内容如下

switch:
  - platform: mqtt
    name: 'tc1_1'
    state_topic: 'homeassistant/switch/MAC/plug_0/state'
    command_topic: 'device/ztc1/set'
    payload_on: '{"mac":"MAC","plug_0":{"on":1}}'
    payload_off: '{"mac":"MAC","plug_0":{"on":0}}'
  - platform: mqtt
    name: 'tc1_2'
    state_topic: 'homeassistant/switch/MAC/plug_1/state'
    command_topic: 'device/ztc1/set'
    payload_on: '{"mac":"MAC","plug_1":{"on":1}}'
    payload_off: '{"mac":"MAC","plug_1":{"on":0}}'


报错ERROR (MainThread) [homeassistant.config] Invalid config for [switch]: required key not provided @ data['platform']. Got None. (See /config/switchs/shufangTC1-2.yaml, line 1). Please check the docs at https://home-assistant.io/components/switch/

第三种
configuration.yaml  中 switch:!include_dir_list switchs


/switchs/ketingTC1.yaml内容如下

  - platform: mqtt
    name: 'ketingtc1_1'
    state_topic: 'homeassistant/switch/d0bae46447c4/plug_0/state'
    command_topic: 'device/ztc1/set'
    payload_on: '{"mac":"d0bae46447c4","plug_0":{"on":1}}'
    payload_off: '{"mac":"d0bae46447c4","plug_0":{"on":0}}'

  - platform: mqtt
    name: 'ketingtc1_2'
    state_topic: 'homeassistant/switch/d0bae46447c4/plug_1/state'
    command_topic: 'device/ztc1/set'
    payload_on: '{"mac":"d0bae46447c4","plug_1":{"on":1}}'
    payload_off: '{"mac":"d0bae46447c4","plug_1":{"on":0}}'

报错ERROR (MainThread) [homeassistant.config] Invalid config for [switch]: expected a dictionary. Got [OrderedDict([('platform', 'mqtt'), ('name', 'ketingtc1_1'), ('state_topic', 'homeassistant/switch/d0bae46447c4/plug_0/state'), ('command_topic', 'device/ztc1/set'), ('payload_on', '{"mac":"d0bae46447c4","plug_0":{"on":1}}'), ('payload_off', '{"mac":"d0bae46447c4","plug_0":{"on":0}}')]), OrderedDict([('platform', 'mqtt'), ('name', 'ketingtc1_2'), ('state_topic', 'homeassistant/switch/d0bae46447c4/plug_1/state'), ('command_topic', 'device/ztc1/set'), ('payload_on', '{"mac":"d0bae46447c4","plug.... (See /config/switchs/ketingTC1.yaml, line 0). Please check the docs at https://home-assistant.io/components/switch/

到底应该如何填写? 求大神教导

回复

使用道具 举报

73

主题

1165

帖子

6681

积分

论坛元老

Rank: 8Rank: 8

积分
6681
金钱
5511
HASS币
30
发表于 2019-9-21 03:36:24 | 显示全部楼层
switch: !include_dir_merge_list switchs
回复

使用道具 举报

13

主题

289

帖子

2000

积分

金牌会员

Rank: 6Rank: 6

积分
2000
金钱
1711
HASS币
0
 楼主| 发表于 2019-9-21 08:56:23 | 显示全部楼层
xuyang 发表于 2019-9-21 03:36
switch: !include_dir_merge_list switchs

文件夹要改成switchs么?  
我现在运行下面的实体都没什么问题,但一个YAML写多个实体就报错
.homeassistant\switche\loudaodeng.yaml

platform: mqtt
name: "loudaodeng"
state_topic: "stat/sonoff2/POWER1"
command_topic: "cmnd/sonoff2/POWER1"
qos: 1
payload_on: "ON"
payload_off: "OFF"
retain: true

其他的文件都是一个实体 不会报错   写在一起就报错
回复

使用道具 举报

73

主题

1165

帖子

6681

积分

论坛元老

Rank: 8Rank: 8

积分
6681
金钱
5511
HASS币
30
发表于 2019-9-21 10:54:09 | 显示全部楼层
riyue0000 发表于 2019-9-21 08:56
文件夹要改成switchs么?  
我现在运行下面的实体都没什么问题,但一个YAML写多个实体就报错
.homeassis ...

是的,习惯上,多个文件,文件夹加s
回复

使用道具 举报

13

主题

289

帖子

2000

积分

金牌会员

Rank: 6Rank: 6

积分
2000
金钱
1711
HASS币
0
 楼主| 发表于 2019-9-21 22:26:05 | 显示全部楼层
xuyang 发表于 2019-9-21 10:54
是的,习惯上,多个文件,文件夹加s

不是文件夹命名的问题 能贴下你的范例么,大神?
回复

使用道具 举报

73

主题

1165

帖子

6681

积分

论坛元老

Rank: 8Rank: 8

积分
6681
金钱
5511
HASS币
30
发表于 2019-9-22 04:24:17 | 显示全部楼层

switch: !include_dir_merge_list switchs

你的写成了!include_dir_list switchs,

看清楚两者不同。merge,dir,不同
回复

使用道具 举报

13

主题

289

帖子

2000

积分

金牌会员

Rank: 6Rank: 6

积分
2000
金钱
1711
HASS币
0
 楼主| 发表于 2019-9-24 22:38:29 | 显示全部楼层
xuyang 发表于 2019-9-22 04:24
switch: !include_dir_merge_list switchs

你的写成了!include_dir_list switchs,

好的  谢谢
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-12-29 10:41 , Processed in 0.174471 second(s), 28 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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