This expression is not allowed...
Verfasst: 12. Apr 2021 08:58
Guten Morgen,
ich habe heute morgen meinen Alexa Family Report angepasst, weil mir Geburtstage angesagt wurden, die noch weit in der Zukunft liegen.
Kurz zum Aufbau.
Ich baue mir über Ephemeris die Termine zusammen und nutze sie dann in der Rule
Anschliessen bastel ich mir den Text zusammen den die Alexa uns vorbetet. Das klappt soweit auch ganz prima.
Allerdings ist unser nächster Geburtstag erst in 165 Tagen. Das möchten wir noch nicht hören. Daher habe ich die Passage wie folgt erweitert.
daraufhin bekomme ich diese INFO im Log.
Oben drüber schreibt er mir im LOG diese INFO. Hier sieht es so aus, als ob komplett leer ist.
Bestimmt kann man meinen Code schöner gestalten. Grundsätzlich müsste das doch aber funktionieren ?!
Beste Grüße
ich habe heute morgen meinen Alexa Family Report angepasst, weil mir Geburtstage angesagt wurden, die noch weit in der Zukunft liegen.
Kurz zum Aufbau.
Ich baue mir über Ephemeris die Termine zusammen und nutze sie dann in der Rule
Code: Alles auswählen
val long untBirth = Ephemeris.getDaysUntil(nextBirth, '/etc/openhab/services/anniversaries.xml')
Code: Alles auswählen
aText += "<amazon:effect name='whispered'>"
if (untBirth >= 2) {aText += "Übrigens, in " + untBirth + " Tagen ist " + nextBirth "."}
if (untBirth == 1) {aText += "Übrigens, morgen ist " + nextBirth "."}
if (untBirth == 0) {aText += "Heute ist " + nextBirth ". Juhuuuuu"}
aText += "</amazon:effect>"
Code: Alles auswählen
if (untBirth <= 30) {
aText += "<amazon:effect name='whispered'>"
if (untBirth >= 2) {aText += "Übrigens, in " + untBirth + " Tagen ist " + nextBirth "."}
if (untBirth == 1) {aText += "Übrigens, morgen ist " + nextBirth "."}
if (untBirth == 0) {aText += "Heute ist " + nextBirth ". Juhuuuuu"}
aText += "</amazon:effect>"
}
Code: Alles auswählen
2021-04-12 08:46:03.213 [INFO ] [el.core.internal.ModelRepositoryImpl] - Validation issues found in configuration model 'AlexaFamilyReport.rules', using it anyway:
This expression is not allowed in this context, since it doesn't cause any side effects.
Code: Alles auswählen
if (untBirth <= 30)
Code: Alles auswählen
if
aText += "<amazon:effect name='whispered'>"
if (untBirth >= 2) {aText += "Übrigens, in " + untBirth + " Tagen ist " + nextBirth "."}
if (untBirth == 1) {aText += "Übrigens, morgen ist " + nextBirth "."}
if (untBirth == 0) {aText += "Heute ist " + nextBirth ". Juhuuuuu"}
aText += "</amazon:effect>"
Beste Grüße