Das Semantic Model ist kein Problem, das geht auch über Textdateien.
Man muss dazu nur wissen, dass die Konfiguration des Semantic Model zu 100% über die Items passiert, es sind also Eigenschaften der Items.
Es handelt sich hier ja um Points, die Teil eines übergeordneten Device oder Raums sind - dieses
Equipment oder diese
Location sind nichts anderes als Group Items. Die Points müssen also zunächst Member der entsprechenden Group sein.
Außerdem hat jeder Point eine Category (oder zumindest definiert man diese gewöhnlich), das geschieht über das Icon des Items, und es gibt die Semantic Class und Property, welche beide Über Tags gesetzt werden, so:
Code: Alles auswählen
Number:Energy GasEnergie_diesesJahr "Energie laufendes Jahr" <energy> (gHeizung) ["Measurement","Energy"] {channel="vicare:heating:66380b8fb4:Heizung-Viessmann:heating_gas_consumption_summary_heating_currentYear" [profile="transform:JS", toItemScript="|(parseFloat(input) * 11.0435) + \" kWh\""], unit="Ws", stateDescription=""[pattern="%.2f kWh"]}
Number:Energy GasEnergie_VorJahr "Energie Vorjahr" <energy> (gHeizung) ["Measurement","Energy"] {channel="vicare:heating:66380b8fb4:Heizung-Viessmann:heating_gas_consumption_total_previousYear" [profile="transform:JS", toItemScript="|(parseFloat(input) * 11.0435) + \" kWh\""], unit="Ws", stateDescription=""[pattern="%.2f kWh"]}
Es wird die Category
<energy> gesetzt, der Point gerhört zum Equipment
(gHeizung) und als Semantic Class und Property sind
["Measurement","Energy"] definiert.
An dieser Stelle nur sicherheitshalber die Warnung: Die Reihenfolge der einzelnen Parameter ist exakt einzuhalten. Jeder einzelne Parameter ist optional (bis auf Itemtyp und Itemname natürlich), muss aber exakt an der Stelle stehen, also
Code: Alles auswählen
Itemtyp Itemname "Item Label" <Icon> (Group,Groups) ["Tag","Tags"] {channel="Channel:UID"[profile], unit="",... }
Wobei alles innerhalb der jeweiligen Klammern in der Reihenfolge "beliebig" ist, es sist also egal, in welcher Reihenfolge Groups oder Tags angegeben sind, auch die Reihenfolge der Channel Links oder weitere Metadaten wie unit und stateDecription können (innerhalb der geschweiften Klammern) beliebig positioniert werden.
Und natürlich gilt auch über die Textdefinition: Ein Item darf exakt einmal im Semantic Model vorkommen, d.h. es darf nur einem Equipment
oder einer Location zugeordnet sein, niemals gleichzeitig einer Location
und einem Equipment oder gar mehreren Locations oder Equipments gleichzeitig. Ein Point darf aber gleichzeitig zu einer Semantic Group auch beliebig vielen non-semantic Groups zugeordnet sein, das ist kein Problem, diese sind ja nicht Teil des Semantic Model.