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

 找回密码
 立即注册
查看: 10758|回复: 13

[技术探讨] 【六神分享】HA0.69+博联broadlink MP1(或鸿雁)插件修复

[复制链接]

175

主题

2956

帖子

7555

积分

超级版主

我就是六神

Rank: 8Rank: 8

积分
7555
金钱
4574
HASS币
398

活跃会员教程狂人灌水之王

QQ
发表于 2018-5-12 14:46:59 | 显示全部楼层 |阅读模式
本帖最后由 jyz_0501 于 2018-10-29 18:46 编辑
2018-05-12 14:42:07 ERROR (MainThread) [homeassistant.components.switch] Error while setting up platform broadlink_mp1
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/homeassistant/helpers/entity_platform.py", line 129, in _async_setup_platform
    SLOW_SETUP_MAX_WAIT, loop=hass.loop)
  File "/usr/lib/python3.6/asyncio/tasks.py", line 358, in wait_for
    return fut.result()
  File "/usr/lib/python3.6/concurrent/futures/thread.py", line 56, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/switch/broadlink_mp1.py", line 74, in setup_platform
    persistent_notification = loader.get_component('persistent_notification')
TypeError: get_component() missing 1 required positional argument: 'comp_or_platform'



请看二楼解决办法及附件


回复

使用道具 举报

40

主题

3057

帖子

1万

积分

超级版主

Nero

Rank: 8Rank: 8

积分
11135
金钱
8028
HASS币
182
发表于 2018-5-12 15:56:51 | 显示全部楼层
本帖最后由 neroxps 于 2018-5-12 17:06 编辑
jyz_0501 发表于 2018-5-12 15:05
哈哈  给解决掉错误就告诉你

估计升级到开发板就修好了这个BUG

https://github.com/home-assistant/home-assistant/commit/c4ec2e3434e3981476de6581bb578cf88dd01693
下载这个文件 https://raw.githubusercontent.com/home-assistant/home-assistant/dev/homeassistant/loader.py

放到 /usr/lib/python3.6/site-packages/homeassistant/ 下面(记得备份原来的文件。)试试行不行?乱猜的哈哈

囧,不说是自改版,我还以为是官方版呢

不懂python,但是看起来是知道 0.69.0 loader.get_component 是加了一个输入参数。而自建插件缺了个参数。

论坛的broadlink_mp1.py

    ip_addr = config.get(CONF_HOST)
    friendly_name = config.get(CONF_FRIENDLY_NAME)
    alias_names = config.get(CONF_ALIAS)
    mac_addr = binascii.unhexlify(
        config.get(CONF_MAC).encode().replace(b':', b''))
    switch_type = config.get(CONF_TYPE)

    persistent_notification = loader.get_component('persistent_notification') """← 这里缺了个参数。"""

而 homeassistant test 里面的标准写法

    def setUp(self):
        """Setup things to be run when tests are started."""
        self.hass = get_test_home_assistant()
        platform = loader.get_component(self.hass, 'switch.test')  """←这里应该要多了个 self.hass"""
        platform.init()
        # Switch 1 is ON, switch 2 is OFF
        self.switch_1, self.switch_2, self.switch_3 = \
            platform.DEVICES

至于 get_test_home_assistant() 这个方法是在这个py文件里面 https://github.com/home-assistant/home-assistant/blob/dev/tests/common.py

这个到底干嘛不太明白。

萌新蒙的解决方法

在论坛的 broadlink_mp1.py 74 行从

    persistent_notification = loader.get_component('persistent_notification')

改成

    persistent_notification = loader.get_component(hass,'persistent_notification')

我懵的,不知道对不对啊。(经过测试是对的)

下面附件是改好的文件




broadlink_mp1_for_0.69.0.zip

2.2 KB, 下载次数: 261

评分

参与人数 2金钱 +27 收起 理由
+ 20 你是对的!谢谢!
jyz_0501 + 7 分享是一种美德!

查看全部评分

Nero
回复

使用道具 举报

40

主题

3057

帖子

1万

积分

超级版主

Nero

Rank: 8Rank: 8

积分
11135
金钱
8028
HASS币
182
发表于 2018-5-12 15:03:33 | 显示全部楼层
一直很好奇楼主的配色是自己手动一个一个拷进去的吗?
据说69 框架大改,估计会有一大批插件挂掉。
Nero
回复

使用道具 举报

175

主题

2956

帖子

7555

积分

超级版主

我就是六神

Rank: 8Rank: 8

积分
7555
金钱
4574
HASS币
398

活跃会员教程狂人灌水之王

QQ
 楼主| 发表于 2018-5-12 15:05:41 | 显示全部楼层
neroxps 发表于 2018-5-12 15:03
一直很好奇楼主的配色是自己手动一个一个拷进去的吗?

哈哈  给解决掉错误就告诉你





















是vs code 自带的, 直接复制 连带着主题都复制过来了~~
回复

使用道具 举报

40

主题

3057

帖子

1万

积分

超级版主

Nero

Rank: 8Rank: 8

积分
11135
金钱
8028
HASS币
182
发表于 2018-5-12 15:07:48 | 显示全部楼层
jyz_0501 发表于 2018-5-12 15:05
哈哈  给解决掉错误就告诉你

那么背景也整个换成黑色好啦。这样看的眼花
Nero
回复

使用道具 举报

26

主题

553

帖子

2726

积分

金牌会员

Rank: 6Rank: 6

积分
2726
金钱
2148
HASS币
100

教程狂人

发表于 2018-5-12 15:16:04 | 显示全部楼层
neroxps 发表于 2018-5-12 15:03
一直很好奇楼主的配色是自己手动一个一个拷进去的吗?
据说69 框架大改,估计会有一大批插件挂掉。
...

69是不是自制插件要限制了?
回复

使用道具 举报

25

主题

688

帖子

3630

积分

论坛元老

Rank: 8Rank: 8

积分
3630
金钱
2937
HASS币
219

活跃会员

发表于 2018-5-12 15:25:43 | 显示全部楼层
0.69我一直用,博联都正常使用呢,rmpro和黑豆
回复

使用道具 举报

175

主题

2956

帖子

7555

积分

超级版主

我就是六神

Rank: 8Rank: 8

积分
7555
金钱
4574
HASS币
398

活跃会员教程狂人灌水之王

QQ
 楼主| 发表于 2018-5-12 15:30:06 | 显示全部楼层
aktifin 发表于 2018-5-12 15:25
0.69我一直用,博联都正常使用呢,rmpro和黑豆

我用的改版的MP1插件,不是用的 官方自带的MP1
回复

使用道具 举报

1

主题

129

帖子

825

积分

高级会员

Rank: 4

积分
825
金钱
696
HASS币
0
发表于 2018-5-12 16:33:06 | 显示全部楼层
我的也挂了  每次升级 都要挂一次
回复

使用道具 举报

1

主题

129

帖子

825

积分

高级会员

Rank: 4

积分
825
金钱
696
HASS币
0
发表于 2018-5-12 17:14:14 | 显示全部楼层
neroxps 发表于 2018-5-12 15:56
[md]~~估计升级到开发板就修好了这个BUG~~

~~https://github.com/home-assistan ... 581bb578cf88dd01693 ...

谢谢  加了hass  就好了
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-4-29 12:36 , Processed in 0.109188 second(s), 39 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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