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

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

[插件集成] ikuai和openwrt信息和基本控制更简单的接入方法

  [复制链接]

0

主题

210

帖子

2177

积分

金牌会员

Rank: 6Rank: 6

积分
2177
金钱
1967
HASS币
0
发表于 2022-11-18 21:41:26 | 显示全部楼层
dscao 发表于 2022-11-17 22:28
地址写的是 https:// 吗?
按理说应该可以呀,另外一个pve就是强制证书的,且忽略验证了,都正常获取呀。
...

重新安装,可以了。感谢!!!
回复

使用道具 举报

0

主题

38

帖子

308

积分

中级会员

Rank: 3Rank: 3

积分
308
金钱
270
HASS币
0
发表于 2022-11-18 21:55:11 | 显示全部楼层
dscao 发表于 2022-11-17 17:23
双播的数据结构或位置不一样,应该有影响吧。天数感觉差了1000倍呢。这个我没搞清楚怎么回事,我用我自己 ...
"snapshoot_wan": [
            {
                "id": 1, 
                "comment": "光猫", 
                "interface": "wan1", 
                "mac": "00:a0:c9:ee:0f:83", 
                "member": [
                    "eth0"
                ], 
                "bandmode": 0, 
                "default_route": 0, 
                "internet": 3, 
                "ip_addr": "", 
                "netmask": "", 
                "gateway": "", 
                "dns1": "", 
                "dns2": "", 
                "count_static": 1, 
                "count_dhcp": 0, 
                "count_pppoe": 2, 
                "count_check_fail": 0, 
                "updatetime": 0, 
                "check_res": 0, 
                "errmsg": "", 
                "power": "", 
                "isp": "", 
                "imei": ""
            },
我看了下代码,因为不是物理网卡模式的话,这个updatetime的时间是0,但是代码里面时间是用当前时间去减去这个时间,所以就会造成启动时间不对,可以加个判断是否0,这样哪怕取不到数据最多也是显示0
回复

使用道具 举报

76

主题

1357

帖子

1万

积分

元老级技术达人

积分
18335
金钱
16938
HASS币
290
 楼主| 发表于 2022-11-18 22:00:43 | 显示全部楼层
本帖最后由 dscao 于 2022-11-18 22:02 编辑
lovedreamland 发表于 2022-11-18 21:55
我看了下代码,因为不是物理网卡模式的话,这个updatetime的时间是0,但是代码里面时间是用当前时间去减 ...

感谢反馈及提供改正方法!
我两个地方的爱快,一个联通一个电信,用单线多拨,都上不了网,多线拨不上去。以前用openwrt时都可以4拨。奇怪不知哪里设置不对。所以就一直使用正常的单拨了。
回复

使用道具 举报

1

主题

13

帖子

88

积分

注册会员

Rank: 2

积分
88
金钱
75
HASS币
0
发表于 2022-11-18 22:08:47 | 显示全部楼层
安装配置完成后报错
正在重试设置: None

详细日志
Logger: homeassistant
Source: custom_components/openwrt/data_fetcher.py:140
Integration: openwrt (documentation)
First occurred: 21:57:49 (7 occurrences)
Last logged: 22:03:15

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/config/custom_components/openwrt/data_fetcher.py", line 140, in _get_openwrt_status
    cpuinfo = resdata["cpuinfo"]
KeyError: 'cpuinfo'


使用的openwrt Xiaomi-R4A
回复

使用道具 举报

0

主题

38

帖子

308

积分

中级会员

Rank: 3Rank: 3

积分
308
金钱
270
HASS币
0
发表于 2022-11-18 22:13:14 | 显示全部楼层
本帖最后由 lovedreamland 于 2022-11-18 22:24 编辑
dscao 发表于 2022-11-18 22:00
感谢反馈及提供改正方法!
我两个地方的爱快,一个联通一个电信,用单线多拨,都上不了网,多线拨不上去。 ...
if resdata["Data"].get("snapshoot_wan") and resdata["Data"]["snapshoot_wan"][0]["updatetime"] != 0:
            self._data["ikuai_wan_ip"] = resdata["Data"]["snapshoot_wan"][0]["ip_addr"]
            self._data["ikuai_wan_ip_attrs"] = resdata["Data"]["snapshoot_wan"][0]
            self._data["ikuai_wan_uptime"] = self.seconds_to_dhms(int(time.time() - resdata["Data"]["snapshoot_wan"][0]["updatetime"])) 
        else:
            self._data["ikuai_wan_ip"] = "未知"
            self._data["ikuai_wan_uptime"] = "未知"
哈哈,我技术有限,就这么暂时改下。
主要是爱快基于物理网卡的混合模式比较麻烦,

你看看能不能加一个基于物理模式的判断,如果是基于物理网卡的混合模式的话,就直接获取这个默认网关的这一条数据,这样就可以通用了,我不太懂python,这种复杂的条件就搞不了了。
顺便在加个LOGO呗,空白一片不太好看呀,这个完善了我的NR版的就准备要淘汰啦


QQ截图20221118222428.png
回复

使用道具 举报

76

主题

1357

帖子

1万

积分

元老级技术达人

积分
18335
金钱
16938
HASS币
290
 楼主| 发表于 2022-11-18 22:18:41 | 显示全部楼层
Zynismus16 发表于 2022-11-18 22:08
安装配置完成后报错

详细日志

我用的是x86 安装的5.15版的,有可能固件不同有属性不一样,需要修改代码了。暂时没有测试条件。
回复

使用道具 举报

0

主题

38

帖子

308

积分

中级会员

Rank: 3Rank: 3

积分
308
金钱
270
HASS币
0
发表于 2022-11-18 23:10:07 | 显示全部楼层
本帖最后由 lovedreamland 于 2022-11-18 23:17 编辑

还有一个问题,不知道你那边有没有,就是启动的时候会报2次错误:
2022-11-18 23:07:44.450 ERROR (MainThread) [custom_components.ikuai] Error fetching ikuai data:
QQ截图20221118231609.png
还有就是在HA启动后会报这个错误,我把timeout改到10好像会好一些
2022-11-18 23:10:02.932 ERROR (SyncWorker_10) [homeassistant] Error doing job: Task exception was never retrieved

Traceback (most recent call last):

  File "/config/custom_components/ikuai/data_fetcher.py", line 131, in _get_ikuai_status

    resdata = await self._hass.async_add_executor_job(self.requestpost_json, url, header, json_body)

asyncio.exceptions.CancelledError


During handling of the above exception, another exception occurred:


Traceback (most recent call last):

  File "/config/custom_components/ikuai/data_fetcher.py", line 130, in _get_ikuai_status

    async with timeout(5):

  File "/usr/local/lib/python3.10/site-packages/async_timeout/__init__.py", line 129, in __aexit__

    self._do_exit(exc_type)

  File "/usr/local/lib/python3.10/site-packages/async_timeout/__init__.py", line 212, in _do_exit

    raise asyncio.TimeoutError
回复

使用道具 举报

76

主题

1357

帖子

1万

积分

元老级技术达人

积分
18335
金钱
16938
HASS币
290
 楼主| 发表于 2022-11-19 01:38:30 | 显示全部楼层
lovedreamland 发表于 2022-11-18 23:10
还有一个问题,不知道你那边有没有,就是启动的时候会报2次错误:

还有就是在HA启动后会报这个错误,我把t ...

调试发现了这个问题,多个线程有时同步进行,超时太短了就会出现这个问题。谢谢!
回复

使用道具 举报

50

主题

1300

帖子

4890

积分

论坛DIY达人

积分
4890
金钱
3590
HASS币
20
发表于 2022-11-19 17:43:52 | 显示全部楼层
老大!有时间再弄个高恪路由的插件吧!谢谢!
回复

使用道具 举报

0

主题

75

帖子

798

积分

高级会员

Rank: 4

积分
798
金钱
723
HASS币
0
发表于 2022-11-22 18:44:56 | 显示全部楼层
Zynismus16 发表于 2022-11-18 22:08
安装配置完成后报错

详细日志

同样得问题
Logger: homeassistant
Source: custom_components/openwrt/data_fetcher.py:140
Integration: openwrt (documentation)
First occurred: 18:39:34 (3 occurrences)
Last logged: 18:42:15

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/config/custom_components/openwrt/data_fetcher.py", line 140, in _get_openwrt_status
    cpuinfo = resdata["cpuinfo"]
KeyError: 'cpuinfo'
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-4-26 19:44 , Processed in 0.064440 second(s), 32 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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