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

 找回密码
 立即注册
查看: 66299|回复: 219

[基础教程] 统计开机时间

  [复制链接]

39

主题

750

帖子

4707

积分

论坛元老

Freddy.

Rank: 8Rank: 8

积分
4707
金钱
3932
HASS币
0

最佳新人卓越贡献

发表于 2018-12-17 10:16:30 | 显示全部楼层 |阅读模式
本帖最后由 南柯醉一梦丶 于 2019-4-29 14:44 编辑

【前提】
需要组件systemmonitor 并开启 last_boot 参数(时间戳的格式)
【效果】
1.png
【代码】
- platform: template
    sensors:
      since_last_boot:
        friendly_name: 系统运行
        value_template: >-
          {% set up_time = as_timestamp(now()) - as_timestamp(states('sensor.last_boot')) %}
          {% set days = (up_time // (60 * 60 * 24)) %}
          {% set weeks = (days// 7) %}
          {% set hours = (up_time// (60 * 60)) - days * 24 %}
          {% set minutes = (up_time // 60) - (days * 24 * 60) %}
          {% set days = ((up_time // (60 * 60 * 24))) - (weeks * 7) %}
          {% set minutes = (minutes) - (hours * 60) %}
          {% macro phrase(value, name) %}
                    {%- set value = value | int %}
                    {{-'{}{}{}'.format(value,name,end) if value | int > 0 else''}}
          {%- endmacro %}
          {% set text = [ phrase(weeks,'周'),phrase(days,'天'), phrase(hours,'小时'), phrase(minutes,'分钟') ] | select('!=','') | list | join('') %}
          {{ text }}
  - platform: template
    sensors:
      start_boot:
        friendly_name: 开机时间
        value_template: >-
          {{ as_timestamp(states('sensor.last_boot')) | timestamp_custom('%Y-%m-%d ') }}{{ as_timestamp(states('sensor.last_boot')) | timestamp_custom('%H:%M:%S') }}

评分

参与人数 1金钱 +20 收起 理由
+ 20 大神666!

查看全部评分

回复

使用道具 举报

23

主题

660

帖子

3108

积分

论坛元老

Rank: 8Rank: 8

积分
3108
金钱
2448
HASS币
10
发表于 2018-12-17 10:19:49 | 显示全部楼层
可以,试试加上
回复

使用道具 举报

4

主题

531

帖子

3912

积分

论坛元老

Rank: 8Rank: 8

积分
3912
金钱
3371
HASS币
120
发表于 2018-12-17 10:37:01 | 显示全部楼层
本帖最后由 killadm 于 2018-12-17 10:42 编辑

谢谢楼主分享
0.84开始last_boot改成了时间戳,官方增加了一套时间戳的展示方法,不过现在有bug,没楼主这个完美
QQ截图20181217103759.jpg
48938234-e24ccf80-ef10-11e8-8e18-06960c626b4a.gif



评分

参与人数 1金钱 +20 收起 理由
+ 20 厉害了k大

查看全部评分

回复

使用道具 举报

8

主题

735

帖子

4268

积分

论坛元老

Rank: 8Rank: 8

积分
4268
金钱
3528
HASS币
40
QQ
发表于 2018-12-17 10:59:16 | 显示全部楼层
感谢分享
回复

使用道具 举报

39

主题

750

帖子

4707

积分

论坛元老

Freddy.

Rank: 8Rank: 8

积分
4707
金钱
3932
HASS币
0

最佳新人卓越贡献

 楼主| 发表于 2018-12-17 11:00:04 | 显示全部楼层
killadm 发表于 2018-12-17 10:37
谢谢楼主分享
0.84开始last_boot改成了时间戳,官方增加了一套时间戳的展示方法,不过现在有bug,没楼主这 ...

自带的那个我也写了 等下更新下。。
回复

使用道具 举报

30

主题

526

帖子

2323

积分

金牌会员

Rank: 6Rank: 6

积分
2323
金钱
1792
HASS币
20
发表于 2018-12-17 11:11:20 | 显示全部楼层
又有新鲜东西拉
回复

使用道具 举报

4

主题

129

帖子

759

积分

高级会员

love421

Rank: 4

积分
759
金钱
625
HASS币
30
发表于 2018-12-17 11:12:43 | 显示全部楼层
6666666666
回复

使用道具 举报

6

主题

738

帖子

5590

积分

论坛元老

Rank: 8Rank: 8

积分
5590
金钱
4847
HASS币
20
发表于 2018-12-17 11:17:01 | 显示全部楼层
看看咋弄。。
回复

使用道具 举报

8

主题

863

帖子

5126

积分

论坛元老

Rank: 8Rank: 8

积分
5126
金钱
4263
HASS币
0
发表于 2018-12-17 11:23:39 | 显示全部楼层
谢谢分享
回复

使用道具 举报

4

主题

282

帖子

3665

积分

论坛元老

Rank: 8Rank: 8

积分
3665
金钱
3383
HASS币
0
发表于 2018-12-17 13:39:57 | 显示全部楼层
看看楼主的,学习了
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-4-27 10:58 , Processed in 0.115395 second(s), 37 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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