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

 找回密码
 立即注册
查看: 10781|回复: 12

[求助] 请教如何以文字形式显示人体传感器器触发记录

[复制链接]

7

主题

188

帖子

2345

积分

金牌会员

Rank: 6Rank: 6

积分
2345
金钱
2157
HASS币
0
发表于 2019-12-23 11:42:19 | 显示全部楼层 |阅读模式
11111.jpg
现在人体传感器显示的是这样的记录,要看具体的触发时间不好看,请教下,有没有用文字显示触发记录的办法
回复

使用道具 举报

1

主题

32

帖子

130

积分

论坛分享达人

积分
130
金钱
98
HASS币
0
发表于 2019-12-23 14:53:05 | 显示全部楼层
本帖最后由 东瓜菜园 于 2019-12-23 14:55 编辑

我也刚好有这个需求,先mark一下,我看了下homeassistant官网上的demo,单独加了一个传感器,用来显示,最近一次触发的时间。具体怎么实现的我也不清楚。 QQ截图20191223145430.jpg
回复

使用道具 举报

1

主题

32

帖子

130

积分

论坛分享达人

积分
130
金钱
98
HASS币
0
发表于 2019-12-23 14:58:13 | 显示全部楼层
我用的是espeasy固件,我设想了一下,可以写个代码,开关发生变化的话,通过mqtt发送当前系统时间到homeassistant。
如有有其他简便的方法,可以在homeassistant上直接实现,那更方便了。
回复

使用道具 举报

3

主题

43

帖子

119

积分

注册会员

Rank: 2

积分
119
金钱
76
HASS币
0
发表于 2019-12-23 15:25:24 | 显示全部楼层
不懂帮顶,希望你们尽快解决,
回复

使用道具 举报

6

主题

484

帖子

4040

积分

论坛元老

Rank: 8Rank: 8

积分
4040
金钱
3556
HASS币
0
发表于 2019-12-23 20:11:37 | 显示全部楼层
customize: !include customize.yaml
  customize_glob:
    "*.*":
      custom_ui_state_card: state-card-custom-ui
    automation.*:
      extra_data_template: >
        var t = attributes.last_triggered;
        if (t === null) {
          return '尚未触发' ;
        }else {
          var tt = new Date(t);
          var time = (tt.getMonth()+1) +'月'+tt.getDate()+'日 '+tt.getHours()+':'+(tt.getMinutes()<10?('0'+tt.getMinutes()):tt.getMinutes());
          return '上次触发:'+ time;
        }
可以参考下这个,每次触发,会在下面显示何时触发的!
回复

使用道具 举报

7

主题

188

帖子

2345

积分

金牌会员

Rank: 6Rank: 6

积分
2345
金钱
2157
HASS币
0
 楼主| 发表于 2019-12-23 20:23:37 | 显示全部楼层
本帖最后由 xlsj519 于 2019-12-23 20:26 编辑
robotxc 发表于 2019-12-23 20:11
customize: !include customize.yaml
  customize_glob:
    "*.*":

这是加在configuration.yaml里吗?
检查配置提示出错:
Error loading /config/configuration.yaml: mapping values are not allowed here  in "/config/configuration.yaml", line 8, column 19


提示位置是customize_glob:这里
回复

使用道具 举报

1

主题

32

帖子

130

积分

论坛分享达人

积分
130
金钱
98
HASS币
0
发表于 2019-12-23 20:47:21 | 显示全部楼层
我用的espeasy+mqtt,
刚试了一下效果
QQ截图20191223204107.jpg
espeasy中,红外设备名称为PIR,PIR#State值发生变化时,mqtt推送系统时间。
在rules中代码如下
on PIR#State do
Publish ESPd1/PIRt,"%systm_hm_am%"
endon

homeassistant中代码如下:
sensor 1:
  - platform: mqtt
    name: 最后触发时间
    state_topic: "ESPd1/PIRt"
    qos: 0
作为一个传感器设备,加载到主页即可。



回复

使用道具 举报

1

主题

32

帖子

130

积分

论坛分享达人

积分
130
金钱
98
HASS币
0
发表于 2019-12-23 20:52:11 | 显示全部楼层
xlsj519 发表于 2019-12-23 20:23
这是加在configuration.yaml里吗?
检查配置提示出错:
Error loading /config/configuration.yaml: mappi ...

hass的代码我也不懂,customize: !include customize.yaml这句应该是引用customize.yaml这个文件,
下面的代码应该写到customize.yaml这个文件里面。

如果调试好了,请发教程。我试试。
回复

使用道具 举报

9

主题

67

帖子

681

积分

高级会员

Rank: 4

积分
681
金钱
614
HASS币
0
发表于 2019-12-27 15:07:52 | 显示全部楼层
本帖最后由 k765107 于 2020-1-15 15:32 编辑

configuration.yaml

input_datetime:
  motion_last_runtime:
    name:  Motion Sensor Last triggered time
    has_date: true
    has_time: true

automations.yaml

  - alias: "動態最後時間"
    trigger:
      platform: state
      entity_id: "你的物件id"
      from: 'off'
      to: 'on'
    action:
      - service: input_datetime.set_datetime
        data_template:
          entity_id: input_datetime.motion_last_runtime
          time: '{{ (as_timestamp(now()) | timestamp_custom("%H:%M:%S", true)) }}'
          date: '{{ (as_timestamp(now()) | timestamp_custom("%Y-%m-%d", true)) }}'

再去開
1579073494180.jpg



回复

使用道具 举报

9

主题

67

帖子

681

积分

高级会员

Rank: 4

积分
681
金钱
614
HASS币
0
发表于 2020-1-15 15:58:07 | 显示全部楼层
再去用 Multiple Entity Row 卡 ,我也是初學,只會做到這樣

1579074940568.jpg

回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-24 22:53 , Processed in 0.108231 second(s), 34 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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