I have a sensor setup for the next start time of an event in google calender. I am wanting to try and convert it into something more readable with a template sensor.
Currently the start time is an attribute of the calender sensor
Weekday as a decimal number, where 0 is Sunday and 6 is Saturday.
0, 1, …, 6
%d
Day of the month as a zero-padded decimal number.
01, 02, …, 31
%b
Month as locale’s abbreviated name.
Jan, Feb, …, Dec (en_US);Jan, Feb, …, Dez (de_DE)
%B
Month as locale’s full name.
January, February, …, December (en_US);Januar, Februar, …, Dezember (de_DE)
%m
Month as a zero-padded decimal number.
01, 02, …, 12
%y
Year without century as a zero-padded decimal number.
00, 01, …, 99
%Y
Year with century as a decimal number.
1970, 1988, 2001, 2013
%H
Hour (24-hour clock) as a zero-padded decimal number.
00, 01, …, 23
%I
Hour (12-hour clock) as a zero-padded decimal number.
01, 02, …, 12
%p
Locale’s equivalent of either AM or PM.
AM, PM (en_US);am, pm (de_DE)
%M
Minute as a zero-padded decimal number.
00, 01, …, 59
%S
Second as a zero-padded decimal number.
00, 01, …, 59
%f
Microsecond as a decimal number, zero-padded on the left.
000000, 000001, …, 999999
%z
UTC offset in the form +HHMM or -HHMM (empty string if the the object is naive).
(empty), +0000, -0400, +1030
%Z
Time zone name (empty string if the object is naive).
(empty), UTC, EST, CST
%j
Day of the year as a zero-padded decimal number.
001, 002, …, 366
%U
Week number of the year (Sunday as the first day of the week) as a zero padded decimal number. All days in a new year preceding the first Sunday are considered to be in week 0.
00, 01, …, 53
%W
Week number of the year (Monday as the first day of the week) as a decimal number. All days in a new year preceding the first Monday are considered to be in week 0.
00, 01, …, 53
%c
Locale’s appropriate date and time representation.
Tue Aug 16 21:30:00 1988 (en_US);Di 16 Aug 21:30:00 1988 (de_DE)
{% set myitem = states(‘replace.me’) %}
{{ as_timestamp(strptime(states.sensor.heure_travailler_par_mois_a.attributes.value, ‘%dd %Hh %Mm’)) | timestamp_custom(’%H:%M’) }} i have that 12:51
{{states.sensor.heure_travailler_par_mois_a.attributes.value}} i have that 1d 12h 52m
I’m currently trying to find a way to convert a Life360 timestamp in UTC to something more readable. e.g
From: 2020-02-09T12:54:21+00:00
To: Sunday @ 12:54pm
First question, can the time be obtained from an an entity’s attribute? In this case, the entity is called device_tracker.life360_name with an attribute called at_loc_since.
I’ve tried this within the template editor but it gives an error:
So, is it possible to do the same thing in javascript by any chance?
Ideally I’d like to convert UTC to a similar output within custom fields in the button card (I came across this post whilst hunting for solutions). Whilst this jinja2 method works well, it would mean creating two sensors for each person (last seen and at loc since), so a neater solution is to convert within javascript.
Happy to bring this up in the button card thread instead rather than hijacking this one (I’ve seen you active in there too).
I have a sensor which reports rain at e.g. 16:25 (HH:MM). I want to compare this with equal or less than states(‘sensor.time’) + 20 minutes, before retracting my sunblinds. I take it that in order to accomplish this, I first have to make a unix timestamp of both and here is where I get stuck. Any suggestions?