Ich probiere jetzt schon eine ganze Weile ein eigentlich relativ simples Userreading zu erstellen und scheitere ständig.
Ich habe folgendes Gerät angelegt:
Internals:
DEF <feed> 900
FUUID 5fd2c17a-f33f-55cb-9cb6-e0cb9fc564a80d2f
FVERSION 98_rssFeed.pm:0.130800/2017-01-15
INTERVAL 900
NAME rss
NEXTUPDATE Fri Dec 11 17:59:46 2020
NOTIFYDEV global
NR 327
NTFY_ORDER 50-rss
STATE Fri Dec 11 17:52:31 2020
TYPE rssFeed
URL <feed>
OLDREADINGS:
READINGS:
2020-12-11 17:52:32 f_description News Blog and More
2020-12-11 17:52:32 f_link <link>
2020-12-11 17:52:32 f_title <title>
2020-12-11 17:52:32 gzippedFeed 0
2020-12-11 17:52:32 n00_description <p>Live Server Update</p>
2020-12-11 17:52:32 n00_link <link>
2020-12-11 17:52:32 n00_pubDate Thu, 10 Dec 2020 13:14:08 +0000
2020-12-11 17:52:32 n00_title Live Server Update – 10.12.2020
2020-12-11 17:52:32 preparedLines 1
2020-12-11 17:52:31 state Fri Dec 11 17:52:31 2020
Attributes:
rfAllReadingsEvents 1
rfEncode utf8
rfMaxLines 1
rfReadings title,description,pubDate,link
userReadings description:n00_description.*
{
if (ReadingsVal("$name","n00_description","") =~ /<p>\s*(.*)\s*<\/p>/m)
{
$1;
}
else
{
"No description found!";
}
}
Eigentlich soll jetzt immer wenn n00_description beschrieben wird, auch ein bereinigtes Reading description erzeugt werden. Dummerweise passiert das aber nicht, obwohl n00_description neu beschrieben wird und auch ein entsprechendes Event im Event Monitor zu sehen ist:
2020-12-11 17:52:31 rssFeed rss Fri Dec 11 17:52:31 2020
2020-12-11 17:52:32 rssFeed rss gzippedFeed: 0
2020-12-11 17:52:32 rssFeed rss f_title: <title>
2020-12-11 17:52:32 rssFeed rss f_description: News Blog and More
2020-12-11 17:52:32 rssFeed rss f_link: <link>
2020-12-11 17:52:32 rssFeed rss n00_title: Live Server Update – 10.12.2020
2020-12-11 17:52:32 rssFeed rss n00_description: <p>Live Server Update</p>
2020-12-11 17:52:32 rssFeed rss n00_link: <link>
2020-12-11 17:52:32 rssFeed rss n00_pubDate: Thu, 10 Dec 2020 13:14:08 +0000
2020-12-11 17:52:32 rssFeed rss preparedLines: 1
Es funktioniert immer nur dann, wenn ich "userReadings description:n00_description.*" durch "userReadings description" ersetze. Hat jemand eine Idee woran das liegen könnte?
Das Reading n00_description vor dem Update zu löschen oder zu ändern hilft übrigens auch nicht. Im Modul selbst habe ich auch bereits den Teil des Codes entfernt, der alle Reading bei jedem Update gelöscht hat.
machen eventuell die html tags im reading bei der triggererkennung des userreadings probleme?
gibt es hinweise in fhem.log?
Du hast Recht! Ich hatte das schon etwas gekürzt in der Ausgabe, aber da sind tatsächlich noch 2 html Links vergraben und noch ein paar andere Dinge, die anscheinend das Regex nicht mehr ansprechen lassen. Wenn ich etwas unverfänglicheres nehme wie n00_link, dann geht alles genau wie erwartet. Zum Glück sollte es damit aber auch funktionieren. Vielen Dank!