Powiadomienia, zasilanie listy

Udało się coś wykombinować? Też mi na tym zależy, a nie mogę ogarnąć.
Czy korzystasz z czyszczenia listy tak jak Artur? U mnie nie wiedzieć dlaczego czyści tylko pierwszy wiersz, a pozostałe zostają.

Myślę jak ogarnąc to co wcześniej pisaliście, chodzi mi o to aby w kolejnych pkt w liscie ostrzeżeń i alarmów była dopisana data i godzina, zarazem chciałbym aby te same wartości szły w powiadomieniu na tel do aplikacji tak jak teraz tylko wzbogacone o wyżej wymienioną datę i godiznę.
Tak jak na filmie @artur -a wpisałem:

    #  <font color = 'yellow' > Lista ostrzeżeń
    {% for i in states.input_select.ostrzezenia.attributes.options %}
    -  {{i }} 
    {%- endfor %}
    </font> 

Lecz nie wiem jak dalej to zrobić. Czy to co @artur napisał zrobi robote i gdzie to wpisać:

fvar czas = new Date();
var czas_formatowany = czas.getDate() + "-" + (czas.getMonth() + 1) + "-" + czas.getFullYear() + " " 
+ czas.getHours() + ":" + czas.getMinutes() + ":" + czas.getSeconds()
msg.payload =
{
"data":
{
    "message": czas_formatowany+" To jest treść wiadomości",
}
}
return msg;

To wpisz w nodzie function

coś mi nie idzie - mam teraz tak:

msg.wiadomosc =
{
“temat”:“alarm”,
“tresc”:“treść wiadomości”,
“typ”:“ostrzezenie”
}
return msg;

jak wklejam to chyba nie idzie mi na ostrzeżenia tylko gdzieś ginie.

To co wkleiłeś, to tak wygląda node function przed wejściem do podprocesu.
Podany kod doklejasz w samym podprocesie w function Wiadomość
kod dla telefonu

var czas = new Date();
var czas_formatowany = czas.getHours() + ":" + czas.getMinutes() + ":" + czas.getSeconds() +" - "
msg.payload =
{
    "data":
    {
        "message": czas_formatowany+msg.wiadomosc.tresc,
        "data": 
        {
        "ttl": 0,
        "priority": "high",
        }
    }
}
return msg;

Niestety dla zasilania listy to mi nie działa, więc godzinę wklejam w nodzie function Wzbogacanie listy. Z minusów, przy kilku powiadomieniach najpierw są godziny a później treść powiadomienia. Może można to jakoś poprawić, ale lepsze to niż nic.

if (msg.data.attributes.options.includes("Brak ostrzeżeń")) {
    msg.data.attributes.options.splice(0,1);
}

if (!msg.data.attributes.options.includes(msg.wiadomosc.tresc)) {
    msg.data.attributes.options.push(msg.wiadomosc.tresc);
}
var czas = new Date();
var czas_formatowany = czas.getHours() + ":" + czas.getMinutes() + ":" + czas.getSeconds() +" - "

msg.payload = 
{
    "data": 
    {
        "options":czas_formatowany+ msg.data.attributes.options
    }    
}
return msg;

@ajakubek a pokazał byś swojego flow? Chociaż kawałek, powklejałem i całkiem przestało działać, a inaczej i albo nie wysyła na telefon albo nie idzie na panel powiadomien.

To co wkleiłeś kończysz podprocesem Powiadomienia

image

to jest w podprocesie Powiadomienia na telefony i wzbogacanie listy

No tak :slight_smile: proste to było, Dzięki.

Teraz prawie jest jak bym chciał, wcześiej szło jedno pod drugim a teraz mam tak:
image
2 testy wypuszczone, jest jeden za drugim a nie pod - pewnie to nie problem ale za nic nie wiem jak go rozwiązać

Na telefonie jest prawidłowo a tak jak pisałem na zasilaniu listy wyświetlają się najpierw daty później teksty i nie wiem jak to naprawić

U mnie tak jak widać, jeśli chodzi o cel został osiągnięty tylko teraż aby szło jedno pod drugim. Może @artur coś by podopowiedział. W tej formie jest nie akceptowalne.
HELP

Od momentu pojawienia się wersji core 2021.10 każdorazowo po restarcie HA pojawia mi się w logach coś takiego:

Logger: homeassistant.helpers.template
Source: helpers/template.py:1624
First occurred: 19:08:17 (3 occurrences)
Last logged: 19:08:17

Template variable error: 'None' has no attribute 'attributes' when rendering '# <font color='#c00000'>Alarmy:</font> {% for i in states.input_select.alarmy.attributes.options %} - {{i }} {%- endfor %}'
Template variable error: 'None' has no attribute 'attributes' when rendering '# <font color='#c1c100'>Ostrzeżenia:</font> {% for i in states.input_select.ostrzezenia.attributes.options %} - {{i }} {%- endfor %}'
Template variable error: 'None' has no attribute 'attributes' when rendering '# <font color='#007a00'>Informacje:</font> {% for i in states.input_select.informacje.attributes.options %} - {{i }} {%- endfor %}'

Czy ktoś może podpowiedzieć na czym polega problem ?

Ja mam taki sam problem i niestety nie wiem coc jest przyczyną… :frowning:

Cześć, działa u kogoś?

msg.payload=
{
    "data":
    {
    "message":"Wykryto ruch w domu o godz. {{now().strftime('%H:%M w dniu %d-%m-%Y')}}",
    "title": "UWAGA"
    }
}
return msg;

Działa zgodnie z założeniem.

faktycznie, ale tylko na telefonie, a patrzyłem na debug

Edit:

@marcinwojciesz możesz podesłać prawidłowy kod?

@luki25 po raz kolejny - edytuj Swoje posty!!!

Dokładnie, bo tam ma działać.

hejka, kto to naprawił?
obraz

Ja mam cały czas tak jak wyżej.
Też idzie jedno za drugim i nie wygląda to fajnie.

nie wiem dlaczego tak macie… u mnie jest normalnie :slight_smile:
specjalnie jeszczezostawiłem wcześniejsze komunikaty, podłączyłem na test czujnik ruchu i będę dorabiał do funkcji wszędzie czas :slight_smile:
image

usunąłem sekundy aby nie powielać tych samych komunikatów ze zwględu na sekundę i już jest ładniej… jeżeli zostają sekundy to w sumie każdy komunikat będzie zapełniał bardzo szybko miejsce bez sekund w zasadzie tylko jeden w danej minucie :slight_smile:

image

może komuś pomoże :

image

var czas = new Date();
var czas_formatowany = czas.getHours() + ":" + czas.getMinutes() + " - "

msg.wiadomosc =
{
    "temat":"Alarm",
    "tresc":czas_formatowany+"Ruch "+ msg.room,
    "typ":"info"
}
return msg;

podziel się proszę swoim kodem zasilania listy, może masz coś innego niż my…