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

 找回密码
 立即注册
查看: 24840|回复: 74

[新奇玩法] YAML 混搭 JSON 讓你的設定檔更簡捷

  [复制链接]

30

主题

493

帖子

4767

积分

论坛元老

佑桑

Rank: 8Rank: 8

积分
4767
金钱
4259
HASS币
156

教程狂人

发表于 2020-1-2 12:01:40 | 显示全部楼层 |阅读模式
本帖最后由 chinyaolin 于 2020-1-2 15:27 编辑

有的時候, 我們撰寫的 config 中會有大量重覆內容
例如我為了整合 google voice 而又不想讓所有的實例都開放
project_id: yyyy-123456789
service_account: !include ksekcfg_135.json
report_state: true
expose_by_default: false

entity_config:
#
#        後陽台電燈
#################################################################################
  light.hassmart_2ch_aaa1b8_lt2:
    name: 電燈
    expose: true
    room: 後陽台
#
#        餐廳電燈
#################################################################################
  light.hassmart_1ch_aa3c65_lt1:
    name: 電燈
    expose: true
    room: 餐廳
#
#        餐廳吊燈
#################################################################################
  light.hassmart_3ch_aa4dfb_lt1:
    name: 吊燈
    expose: true
    room: 餐廳
#
#        客廳電視機
#################################################################################
  switch.benq_55sw700:
    name: 電視機
    expose: true
    room: 客廳
    aliases:
      - 電視
當設定的實例愈來愈多時, 維護內容將變得令人厭煩,
有沒有更好的方法呢?

其實, YAML 與 JSON 基本上是相同的, 試試看這個吧 Yaml to json converter
以下這段 YAML 代碼
  light.hassmart_1ch_aa3c65_lt1:
    name: 電燈
    expose: true
    room: 餐廳

可以轉換為
{
  "light.hassmart_1ch_aa3c65_lt1": {
    "name": "電燈",
    "expose": true,
    "room": "餐廳"
  }
}

接著做點小調整, 將雙引號去除, 換行符號去除, 保留 YAML 的空格縮進
  light.hassmart_1ch_aa3c65_lt1: {room: 主臥室, name: 電燈, expose: true}


再整理一下, 看起來是不是清爽多了
游客,如果您要查看本帖隐藏内容请回复

评分

参与人数 4金钱 +62 收起 理由
summ99111 + 2 论坛有你更精彩!
ttimasdf + 20 厉害了word楼主!
Roger + 20 赠人玫瑰,手留余香!
+ 20 纳尼,还有这种操作?

查看全部评分

ASRock H370 PRO4, 48GB, 8TBx3 + 2TBx3
ESXi 6.7 + Ununtu + Docker + HASS.IO -> Homeassistant OS
(Home Assistant Supervised 官方文件)
回复

使用道具 举报

5

主题

193

帖子

2716

积分

金牌会员

Rank: 6Rank: 6

积分
2716
金钱
2523
HASS币
0
发表于 2020-1-2 12:11:19 | 显示全部楼层
看看看看
回复

使用道具 举报

8

主题

361

帖子

3725

积分

论坛元老

Rank: 8Rank: 8

积分
3725
金钱
3364
HASS币
10
发表于 2020-1-2 12:19:41 | 显示全部楼层
感谢分享
回复

使用道具 举报

0

主题

25

帖子

713

积分

高级会员

Rank: 4

积分
713
金钱
688
HASS币
0
发表于 2020-1-2 12:25:46 | 显示全部楼层
看看有啥
回复

使用道具 举报

0

主题

71

帖子

1305

积分

论坛积极会员

积分
1305
金钱
1234
HASS币
0
发表于 2020-1-2 12:38:32 | 显示全部楼层
感谢分享,看看
回复

使用道具 举报

0

主题

71

帖子

1305

积分

论坛积极会员

积分
1305
金钱
1234
HASS币
0
发表于 2020-1-2 12:43:01 | 显示全部楼层
借贴问下,有没有自动生成重复配置的方法,因为有60台设备打算接进来,但是光配置文件就要弄半天了
回复

使用道具 举报

0

主题

204

帖子

1041

积分

金牌会员

Rank: 6Rank: 6

积分
1041
金钱
837
HASS币
0
发表于 2020-1-2 12:51:45 | 显示全部楼层
学习学习   
回复

使用道具 举报

30

主题

493

帖子

4767

积分

论坛元老

佑桑

Rank: 8Rank: 8

积分
4767
金钱
4259
HASS币
156

教程狂人

 楼主| 发表于 2020-1-2 13:25:13 | 显示全部楼层
zhou1104 发表于 2020-1-2 12:43
借贴问下,有没有自动生成重复配置的方法,因为有60台设备打算接进来,但是光配置文件就要弄半天了 ...

應該是沒有現成的方法了, 用 EXCEL 整理試試?
ASRock H370 PRO4, 48GB, 8TBx3 + 2TBx3
ESXi 6.7 + Ununtu + Docker + HASS.IO -> Homeassistant OS
(Home Assistant Supervised 官方文件)
回复

使用道具 举报

8

主题

735

帖子

4266

积分

论坛元老

Rank: 8Rank: 8

积分
4266
金钱
3526
HASS币
40
QQ
发表于 2020-1-2 13:31:24 | 显示全部楼层
感谢分享
回复

使用道具 举报

19

主题

597

帖子

4045

积分

版主

Rank: 7Rank: 7Rank: 7

积分
4045
金钱
3433
HASS币
40
发表于 2020-1-2 13:39:19 | 显示全部楼层
哇,这个网站很好,太强大了,收藏了!
谢谢分享!
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-4-26 23:25 , Processed in 0.061262 second(s), 34 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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