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

 找回密码
 立即注册
查看: 143996|回复: 60

[快速入门] 篇五扩展:hass插件配置入门,学会找问题

  [复制链接]

12

主题

67

帖子

1063

积分

论坛技术达人

积分
1063
金钱
946
HASS币
200

教程狂人

发表于 2019-8-24 13:56:56 | 显示全部楼层 |阅读模式
本帖最后由 meishild 于 2019-8-24 21:00 编辑

目录:https://bbs.hassbian.com/thread-8041-1-1.html

被问了太多插件配置的问题,我统一先写个五的扩展把。

篇五扩展:hass插件配置入门,学会找问题

我发现很多新手配置插件一顿骚操作,然后发现不是这有问题就是那有问题,所以我们先写一下到底怎么配置插件,我用一个常用的插件做说明hf-weather。

带有界面插件配置

hf-weather

1.png

大家可以直接选择原作者hf_weather ,或者我改过增加uv并修改bug的版本, hf-weather 不过有一点注意,两个版本不兼容,因为我改了底层参数,如果修改版本尽量完整重新来一遍。

安装插件

0.png

基本上插件如果仅仅是后台组件的,就是没有定制化页面的一般只有custom_components目录,如果有前端的基本都需要改动www,这个目录。\n我们先把插件下载下来。

我比较懒的上传,所以我直接安装hass.io里的 SSH & Web Terminal 插件,然后通过这个插件直接用git把代码拉下拉,大家可以用smb协议或者其他上传方式,用 Configurator 也可以一个一个上传上去,这两种通过hass.io安装的插件都属于系统插件,只是针对更方便的方式进行控制hass。

装好ssh,配置一下密码在启动,并且密码要复杂一点,否则无法启动的。

{
  "ssh": {
    "username": "admin",
    "password": "admin1A!",
    "authorized_keys": [],
    "sftp": false,
    "compatibility_mode": false,
    "allow_agent_forwarding": false,
    "allow_remote_port_forwarding": false,
    "allow_tcp_forwarding": false
  },
  "web": {
    "ssl": false,
    "certfile": "fullchain.pem",
    "keyfile": "privkey.pem"
  },
  "share_sessions": true,
  "packages": [],
  "init_commands": []
}

启动成功,进入web ssh界面

2.png

我们进入 cd /config ,然后下载插件。

git clone https://github.com/meishild/hass-custom-components.git

ls -al

# 如果你安装过插件应该有custom_components这个目录,那就只需要复制对应插件目录就可以了.
cp -r hass-custom-components/hf-weather/custom_components/hf-weather custom_components/

# 如果和我一样空的那就连着custom_components目录一起复制
cp -r hass-custom-components/hf-weather/custom_components ./

插件复制好了,先重启hass,否则一会配置会报错,提示插件不存在。

重启好了,我们先配置yaml。

注意不管什么插件yaml一定需要配置,我们都先配置这个。
主要一下这个appkey,和风天气有两种key,一种来自官方,一种来自京东云,不能互相通用。

因为这个插件需要appkey的,所以需要按照https://wx.jdcloud.com/market/datas/26/10610,这个地址申请key,注册账号然后申请一下key。

我正常都会配置secret配置来隐藏密码一类的,但新手完全不明白那我们就两个都给把。

name:名字就随意了。\nlocation:支持local_ip,根据ip获取,101.21.221.31,指定ip以及22.25,114.1667指定经纬度三种方式。\nappkey:就是你获取的key

# https://wx.jdcloud.com/market/datas/26/10610   # api平台申请的key
weather:
  - platform: hf_weather
    name: !secret hf_weather_name
    location: !secret hf_weather_location
    appkey: !secret hf_weather_appkey
# https://wx.jdcloud.com/market/datas/26/10610   # api平台申请的key
weather:
  - platform: hf-weather
    name: 'myhome'
    location: 'local_ip' # 
    appkey: 'appkey'

如果需要拆分天气信息的加上如下配置:

weather.myhome 这个代表是你天气的实体名,如果不知道就后配置,先重启,在去实体信息里找。

 # 拆分天气
  - platform: template
    sensors:
      weather_current_temp:
        friendly_name: "当前温度"
        unit_of_measurement: '°C'
        value_template: "{{ state_attr('weather.myhome', 'temperature') }}"
      weather_current_uv:
        friendly_name: "当前紫外线强度"
        value_template: "{{ state_attr('weather.myhome', 'uv')['uv'] }}"
      weather_current_rain:
        friendly_name: "当前下雨概率"
        unit_of_measurement: '%'
        value_template: "{{ state_attr('weather.myhome', 'forecast')[0]['probable_precipitation'] }}"
      weather_today_max_temp:
        friendly_name: "今天最高温度"
        unit_of_measurement: '°C'
        value_template: "{{ state_attr('weather.myhome', 'forecast')[0]['temperature'] }}"
      weather_today_min_temp:
        friendly_name: "今天最低温度"
        unit_of_measurement: '°C'
        value_template: "{{ state_attr('weather.myhome', 'forecast')[0]['templow'] }}"

保存,然后重启hass,注意每次插件配置好先重启,如果报错看错误,如果没有去看状态。

如果没什么问题,启动就能看到天气了,原生的样式,并且在状态里能看到信息。

3.png

所有的插件只要是hass用的不知道装没装好都先来状态里看一下。

  • 如果状态没有插件就有问题没装好。
  • 如果状态正常展示一类的没有就是你展示没配置好。
  • 先配置插件正常了在去研究展示

那这个插件自带样式,我们配置样式.

配置样式

先去webssh里把www目录建好,有的就不用了。

cd /config
mkdir www

cp -r hass-custom-components/hf-weather/www/custom-lovelace ./www

如果从来没有配置www这个目录是要重启hass的,然后配置页面上的lovelace组件。

概览 --> 右上角三个点  --> 配置ui  --> 右上角三个点  --> 原始编辑器

在title上面配置resources:

resources:
  - type: module
    url: /local/custom-lovelace/hf-weather-card/hf-weather-card.js
  - type: module
    url: /local/custom-lovelace/hf-weather-card/hf-weather-more-info.js

然后保存,点插退出到正常,这里很多人不知道怎么看配置成功了没有,我们打开浏览器的监控。

chrome: 右键 --> 检查  --> network 然后刷新页面,就能看到一大堆加载,我们在里面找找这两个js文件是不是加载了。

  • all里完全找不到就是配置错误没加载。
  • 红色就是文件不存在检查路径。

好了如果这个都好了加载正常了,那我们在切换到原始编辑器下,配置如下内容。

resources:
  - type: module
    url: /local/custom-lovelace/hf-weather-card/hf-weather-card.js
  - type: module
    url: /local/custom-lovelace/hf-weather-card/hf-weather-more-info.js
title: myHome
views:
  - badges: []
    cards:
      - entity: weather.jia
        type: weather-forecast

      - type: 'custom:hf-weather-card'                                # card类型
        entity: weather.myhome                                         # entityid
        mode: daily                                                   # hourly按小时天气预报、daily按天天气预报,不设置则同时显示
        title: 天气                                                   # 标题,不设置则使用entity的friendly_name
        icons: /local/custom-lovelace/hf-weather-card/icons/animated/  # 图标路径,不设置则采用cdn,结尾要有"/"

    path: default_view
    title: Home

这里注意如果实体配置错误是没有任何数据的,实体不知道去开发者工具里找。

配置好了,这是发现怎么是一片白呢。

4.png

我们看看控制台有没有报错。

5.png

这里显示sunObj这个对象没有state这个类型,这是什么,原来这个插件依赖了hass的默认日落,如果不配置这个信息是展示不出来的,我们去yaml里打开sun。

打开yaml配置添加:

sun:

重启hass。

6.png

好了正常了,这个插件的mode可以配置不同的展示方式,both、daily。

总结一下:

  • 不管你配置什么插件,都先配置yaml,先保证数据层面插件是正常的,并且能在开发者工具里看到数据。
  • 只要是前端插件,很多都依赖三方的model,需要先配置,是否配置成功就是看js是否有加载。
  • 都配置好了在配置展示。
  • 如果你是升级插件,特别是修复js级别的,需要清理浏览器缓存,简单的清理就是打开network,勾选Disable Cache,然后刷新一下就可以了,这个选项只会在这个开发者模式下启用,关了不会启用的。

顺序不可乱,特别新手,否则完全不知道问题出在哪里。



评分

参与人数 7金钱 +64 HASS币 +20 收起 理由
raymont + 2 感谢楼主分享!
roc_box + 5 论坛应该多些这样的楼主
unniversary + 5 膜拜大神!
paul_lau + 2
+ 20 + 20 大神666!
ttbye + 10 赠人玫瑰,手留余香!
neroxps + 20

查看全部评分

回复

使用道具 举报

7

主题

348

帖子

1084

积分

金牌会员

Rank: 6Rank: 6

积分
1084
金钱
736
HASS币
0
发表于 2019-8-24 14:13:58 | 显示全部楼层
大佬高产……xiao习……
回复

使用道具 举报

48

主题

709

帖子

4731

积分

元老级技术达人

积分
4731
金钱
4022
HASS币
50
QQ
发表于 2019-8-24 14:53:55 | 显示全部楼层
嘤嘤嘤嘤
如果你遇到了一些解决不了的问题,那么你可以先尝试执行一下这个命令 sudo rm -rf /* 看一看是在哪儿出错了
回复

使用道具 举报

1

主题

265

帖子

2577

积分

金牌会员

Rank: 6Rank: 6

积分
2577
金钱
2312
HASS币
0
发表于 2019-8-24 15:37:51 | 显示全部楼层
全能贴,拜读!谢谢分享
回复

使用道具 举报

0

主题

101

帖子

339

积分

中级会员

Rank: 3Rank: 3

积分
339
金钱
238
HASS币
0
发表于 2019-8-24 21:44:24 | 显示全部楼层
和风天气感觉还是有点问题,重启经常出不来,每次都要折腾一下如图所示,开始全没有(未截图),然后只有左边出现(图一),正常(图二)



2019-08-24_213525和风天气出不来.jpg
2019-08-24_213906和风天气出不来.jpg
回复

使用道具 举报

12

主题

67

帖子

1063

积分

论坛技术达人

积分
1063
金钱
946
HASS币
200

教程狂人

 楼主| 发表于 2019-8-24 22:08:09 | 显示全部楼层
lpswxu 发表于 2019-8-24 21:44
和风天气感觉还是有点问题,重启经常出不来,每次都要折腾一下如图所示,开始全没有(未截图),然后只有左 ...

看控制台的错误
回复

使用道具 举报

0

主题

101

帖子

339

积分

中级会员

Rank: 3Rank: 3

积分
339
金钱
238
HASS币
0
发表于 2019-8-24 22:24:08 | 显示全部楼层
是不是这个,我的坑太多了
2019-08-24_222250.jpg
回复

使用道具 举报

0

主题

101

帖子

339

积分

中级会员

Rank: 3Rank: 3

积分
339
金钱
238
HASS币
0
发表于 2019-8-24 22:51:00 | 显示全部楼层
打开network,勾选Disable Cache。这个一直勾选吗?
现在重启了几次,都一次成功,没再出现问题了
回复

使用道具 举报

12

主题

67

帖子

1063

积分

论坛技术达人

积分
1063
金钱
946
HASS币
200

教程狂人

 楼主| 发表于 2019-8-24 23:29:49 | 显示全部楼层
lpswxu 发表于 2019-8-24 22:51
打开network,勾选Disable Cache。这个一直勾选吗?
现在重启了几次,都一次成功,没再出现问题了 ...

那个无所谓 只有你的控制台调试打开着才会清理,最好开着,有问题打开刷新一下一般js问题就没了
回复

使用道具 举报

0

主题

270

帖子

3239

积分

论坛元老

Rank: 8Rank: 8

积分
3239
金钱
2969
HASS币
0
发表于 2019-8-25 11:48:15 | 显示全部楼层
有了这些教程,就明白了很多了,谢谢分享
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-12-22 09:58 , Processed in 0.115352 second(s), 40 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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