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

 找回密码
 立即注册
查看: 121941|回复: 583

[经验分享] 已更新,0.92最新的custom_component目录结构

  [复制链接]

23

主题

1338

帖子

6755

积分

超级版主

Rank: 8Rank: 8

积分
6755
金钱
5392
HASS币
100

教程狂人

发表于 2019-4-6 19:45:59 | 显示全部楼层 |阅读模式
本帖最后由 natic 于 2019-8-13 22:04 编辑

0.88之后ha启用了新的custom component目录,老的目录方式依然在使用,但是最好及时更新,以防新版本突然失效自定义的组件为文件夹名称,对应platform为.py文件名

0.92已经更新,废弃旧方式,但是很多插件依然不能使用,原因是ha移除了依赖,需要用新的方式引入依赖,所以最好等待作者更新,也可以按照下面的方式自己更新,理论上加一个manifest.json,填写domain,dependencies,requirements按需填写,其他随意

参考链接

https://developers.home-assistant.io/blog/
https://developers.home-assistant.io/docs/en/creating_integration_manifest.html

旧目录结构

/config/custom_components/climate/xiaomi_miio_airconditioningcompanion.py

新目录结构

//定义文件,定义组件的名字所属平台,链接等信息
/config/custom_components/xiaomi_miio_airconditioningcompanion/manifest.json
//依赖文件,REQUIREMENTS DEPENDENCIES放在此文件
/config/custom_components/xiaomi_miio_airconditioningcompanion/__init__.py
//原来的xiaomi_miio_airconditioningcompanion.py文件
/config/custom_components/xiaomi_miio_airconditioningcompanion/climate.py

空调伴侣的配置方法

空调伴侣插件PR已经合并,可以去github下载最新插件,也可以参照下面方式自行更改
https://github.com/syssi/xiaomi_airconditioningcompanion

1,在custom_components下面新建文件夹xiaomi_miio_airconditioningcompanion,下面的文件都在放在文件夹里面
2,新建一个manifest.json
{
  "domain": "xiaomi_miio_airconditioningcompanion",
  "name": "AC partner",
  "documentation": "https://www.example.com",
  "dependencies": [],
  "codeowners": [],
  "requirements": []
}
3,把源文件内容移到climate.py


WX20190426-101121.png



















评分

参与人数 1金钱 +5 收起 理由
charles0568 + 5 在下对你的景仰犹如滔滔长江之水,连绵不绝.

查看全部评分

回复

使用道具 举报

2

主题

316

帖子

1626

积分

金牌会员

Rank: 6Rank: 6

积分
1626
金钱
1310
HASS币
0
发表于 2019-4-6 20:23:49 | 显示全部楼层
本帖最后由 saoye 于 2019-4-6 20:26 编辑

如果/config/custom_components/climate/目录下有几个 *.py文件,是否要建*个文件夹下的climate.py ?
回复

使用道具 举报

23

主题

1338

帖子

6755

积分

超级版主

Rank: 8Rank: 8

积分
6755
金钱
5392
HASS币
100

教程狂人

 楼主| 发表于 2019-4-6 21:20:28 | 显示全部楼层
saoye 发表于 2019-4-6 20:23
如果/config/custom_components/climate/目录下有几个 *.py文件,是否要建*个文件夹下的climate.py ?
...

是的,每个自定义的componeng都要单独文件夹,这是为了和默认模块保持一致
回复

使用道具 举报

2

主题

316

帖子

1626

积分

金牌会员

Rank: 6Rank: 6

积分
1626
金钱
1310
HASS币
0
发表于 2019-4-6 23:32:31 | 显示全部楼层
natic 发表于 2019-4-6 21:20
是的,每个自定义的componeng都要单独文件夹,这是为了和默认模块保持一致 ...

好的,谢谢!
回复

使用道具 举报

8

主题

2073

帖子

6053

积分

论坛元老

流水无味

Rank: 8Rank: 8

积分
6053
金钱
3980
HASS币
145

灌水之王

发表于 2019-4-7 09:06:56 | 显示全部楼层
感谢!!  还是有些错误 不要升
回复

使用道具 举报

23

主题

1338

帖子

6755

积分

超级版主

Rank: 8Rank: 8

积分
6755
金钱
5392
HASS币
100

教程狂人

 楼主| 发表于 2019-4-7 09:38:40 | 显示全部楼层
xieahui 发表于 2019-4-7 09:06
感谢!!  还是有些错误 不要升

现在只是warning,还能用段时间
回复

使用道具 举报

40

主题

2176

帖子

8286

积分

元老级技术达人

积分
8286
金钱
6095
HASS币
110
发表于 2019-4-8 09:09:36 | 显示全部楼层
xieahui 发表于 2019-4-7 09:06
感谢!!  还是有些错误 不要升

0.90 0.91都没啥问题 可能我接入的东西比较少吧....
要说问题  梅林路由的一个插件死活不正常,但没有任何报错   取消了device_tracker后  这个插件才会报错 无法解决依赖
还有就是最近莫名SSL连接有问题,但这个基本确认和HA版本无关 是docker的原因  还没解决
回复

使用道具 举报

23

主题

1338

帖子

6755

积分

超级版主

Rank: 8Rank: 8

积分
6755
金钱
5392
HASS币
100

教程狂人

 楼主| 发表于 2019-4-16 16:33:30 | 显示全部楼层
最近好多人遇到这个问题,大家赶紧升级
回复

使用道具 举报

13

主题

333

帖子

1418

积分

金牌会员

Rank: 6Rank: 6

积分
1418
金钱
1085
HASS币
0
发表于 2019-4-25 09:33:33 | 显示全部楼层
natic 发表于 2019-4-16 16:33
最近好多人遇到这个问题,大家赶紧升级

这个改动是不是适合全部插件,还需要改动插件本身么?
回复

使用道具 举报

23

主题

1338

帖子

6755

积分

超级版主

Rank: 8Rank: 8

积分
6755
金钱
5392
HASS币
100

教程狂人

 楼主| 发表于 2019-4-25 09:45:06 | 显示全部楼层
ufonba 发表于 2019-4-25 09:33
这个改动是不是适合全部插件,还需要改动插件本身么?

全部自定义插件都需要改目录,插件内容本身不需要动
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-22 13:08 , Processed in 0.181068 second(s), 37 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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