[gelöst]CalDav: Formatierung NAMEANDTIME
-
- Beiträge: 52
- Registriert: 27. Jan 2018 08:46
[gelöst]CalDav: Formatierung NAMEANDTIME
Moin zusammen,
wenn ich in meiner Items-Datei für die CalDav-Art NAMEANDTIME als Formatierung "Termin %s" eintrage...kommt in der basicUi "Blaue Tonne: xxx @ 3/13/19 12:00 AM - 3/14/19 12:00 AM" heraus. Ich hätte gerne eine Formatierung "Blaue Tonne @ 13.03.19". Wie bekomme ich das hin? *grübel*
wenn ich in meiner Items-Datei für die CalDav-Art NAMEANDTIME als Formatierung "Termin %s" eintrage...kommt in der basicUi "Blaue Tonne: xxx @ 3/13/19 12:00 AM - 3/14/19 12:00 AM" heraus. Ich hätte gerne eine Formatierung "Blaue Tonne @ 13.03.19". Wie bekomme ich das hin? *grübel*
Zuletzt geändert von Tentazione am 12. Mär 2019 18:42, insgesamt 1-mal geändert.
-
- Beiträge: 278
- Registriert: 15. Apr 2018 17:09
Re: CalDav: Formatierung NAMEANDTIME
Hallo Tentazione,
versuche mal anstatt %s das hier %1$td.%1$tm.%1$tY so habe ich mein Datum gefixt.
mfg
Madmike
versuche mal anstatt %s das hier %1$td.%1$tm.%1$tY so habe ich mein Datum gefixt.
mfg
Madmike
- udo1toni
- Beiträge: 15248
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: CalDav: Formatierung NAMEANDTIME
Die Frage ist ja, was für eine Sorte Item Du hast. Wenn es DateTime ist, ist es leicht mit einer anderen Formatierung zu lösen, ich habe aber den Eindruck, dass es sich um ein String Item handelt.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 52
- Registriert: 27. Jan 2018 08:46
Re: CalDav: Formatierung NAMEANDTIME
@udo1toni: Dieser Eindruck täuscht Dich erstmal nicht. Allerdings würde ein DateTime ja wohl nur die Datums-/Zeit- Informationen aufnehmen?! Die Beschreibung...bzw. den Namen des Events hätte ich auch schon gerne in dieser Zeichenkette
- udo1toni
- Beiträge: 15248
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: CalDav: Formatierung NAMEANDTIME
Ich nutze das CalDav Binding nicht, weshalb ich hier nur Mutmaßungen äußern kann. Ich stelle es mir so vor, dass Du vier Items verwenden musst. Das erste Item ist DateTime und enthält den Start-Zeitpunkt, das zweite Item vom gleichen Typ enthält den End-Zeitpunkt. Das dritte Item vom Typ String enthält den Namen. Das vierte Item ist ein ungebundenes String Item. Mit einer Rule verknüpfst Du dann die ersten drei Items zu einer Zeichenkette, die Du in das vierte Item speicherst. Die Rule triggert, wenn sich eines der drei QuellItems ändert. Innerhalb der Rule kannst Du den Formatter genauso nutzen, wie im Label (im Sinne von: mit einem Format-String erzielbare Ausgabe)
Es kann auch sein, dass man an irgendeiner Stell konfigurieren kann, wie der kombinierte String aussehen soll, allerdings, wie gesagt, habe ich keine Ahnung von CalDav.
Es kann auch sein, dass man an irgendeiner Stell konfigurieren kann, wie der kombinierte String aussehen soll, allerdings, wie gesagt, habe ich keine Ahnung von CalDav.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 52
- Registriert: 27. Jan 2018 08:46
Re: CalDav: Formatierung NAMEANDTIME
ich bastl da nun schon ganze Zeit rum... bekomme aber immer nur ne Fehlermeldung beim DateTime.
hab folgendes Item angelegt
in einer Rule versuche ich das ganze zu formatieren...bekomme aber nur
zugreifen tue ich so
hab folgendes Item angelegt
Code: Alles auswählen
DateTime CMuellStart "[%1$td.%1$tm.%1$tY]" <calendar> {caldavPersonal="calendar:Muell type:EVENT eventNr:1 value:START"}
Code: Alles auswählen
"An error occurred during the script execution: Could not invoke method: org.joda.time.base.AbstractDateTime.toString(java.lang.String) on instance: 2019-03-13T00:00:00.000+0100"
Code: Alles auswählen
val DateTime cx=CMuellStart.state
logInfo("test",cx.toString("dd.MM.yyyy HH:mm"))
-
- Beiträge: 52
- Registriert: 27. Jan 2018 08:46
Re: CalDav: Formatierung NAMEANDTIME
habs jetzt langsam #glaub
zerlegt mir schön die entsprechenden Items...
Allerdings wird der Wert nicht in der Sitemap angezeigt
Dort habe ich ein
definiert
Code: Alles auswählen
import java.text.SimpleDateFormat
rule "Muell neu"
when
Item anwesend changed
then
val SimpleDateFormat sdf = new SimpleDateFormat("dd.MM.yyyy HH:mm")
val SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS")
val String cm=CMuellName.state.toString
var Date cx = sdf1.parse(CMuellStart.state.toString)
val String CMuellTest=cm.substring(0,cm.indexOf(":")) + " " + sdf.format(cx)
logInfo("test",CMuellTest)
end
Code: Alles auswählen
String CMuellName "Muellabfuhr [%s]" <calendar> {caldavPersonal="calendar:Muell type:EVENT eventNr:1 value:NAME"}
String CMuellStart "[%1$td.%1$tm.%1$tY]" <calendar> {caldavPersonal="calendar:Muell type:EVENT eventNr:1 value:START"}

Dort habe ich ein
Code: Alles auswählen
Frame label="xx" {
Default item=CMuellTest
}
-
- Beiträge: 52
- Registriert: 27. Jan 2018 08:46
Re: CalDav: Formatierung NAMEANDTIME
wieder etwas weiter...und fast am Ziel 
Items
Rule
sitemap
Log
Das einzige was nun noch nicht geschieht...das die Sitemap sich aktualisiert. Wer kann da noch helfen??

Items
Code: Alles auswählen
String CMuellName "Muellabfuhr [%s]" <calendar> {caldavPersonal="calendar:Muell type:EVENT eventNr:1 value:NAME"}
String CMuellStart "[%1$td.%1$tm.%1$tY]" <calendar> {caldavPersonal="calendar:Muell type:EVENT eventNr:1 value:START"}
String CMuellTest "[%s]" <calendar>
Code: Alles auswählen
import java.text.SimpleDateFormat
rule "Muell neu"
when
Item anwesend changed
then
var SimpleDateFormat sdf = new SimpleDateFormat("dd.MM.yyyy")
var SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS")
var String cm=CMuellName.state.toString
var Date cx = sdf1.parse(CMuellStart.state.toString)
CMuellTest.sendCommand(cm.substring(0,cm.indexOf(":")) + " " + sdf.format(cx))
end
Code: Alles auswählen
Frame label="xx" {
Default item=CMuellTest
}
Code: Alles auswählen
2019-03-11 21:20:06.023 [vent.ItemStateChangedEvent] - anwesend changed from ON to OFF
2019-03-11 21:20:06.450 [ome.event.ItemCommandEvent] - Item 'CMuellTest' received command Blaue Tonne 13.03.2019
2019-03-11 21:20:06.457 [vent.ItemStateChangedEvent] - CMuellTest changed from NULL to Blaue Tonne 13.03.2019
- udo1toni
- Beiträge: 15248
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: CalDav: Formatierung NAMEANDTIME
Hast Du openHAB mal durchgestartet?
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 52
- Registriert: 27. Jan 2018 08:46
Re: CalDav: Formatierung NAMEANDTIME
ah........
Jupp...das wars. Danke
