<struct_type> -> Fehler "unknown attribute"

Begonnen von Motivierte linke Hände, 20 Januar 2015, 17:45:42

Vorheriges Thema - Nächstes Thema

Motivierte linke Hände

Dann sage ich mal: "Danke!", denn hier kommen jetzt keine Fehlermeldungen mehr!  :)
FHEM 6 in einer KVM VM mit Ubuntu
HM-CFG-USB2, 2xHM-CFG-HMLAN, HM-HMUARTLGW mit 100+ HomeMatic Devices, Geofencing, Fritzbox, Unifi, HUE, Harmony-Hub, Denon-Receiver-Modul, Calendar, GardenaSmartDevice, Shelly, MQTT (zigbee2mqtt, Tasmota und Shelly) und ein wenig 1Wire.

betateilchen

hier sieht es im Moment auch erstmal ganz gut aus. Danke.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Markus Bloch

Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

moonsorrox

#18
EDITH:// update heute, alles wieder OK, Danke

und wie mache ich das, wenn ich die structure in einer extra Datei habe - bei mir die AussenBeleuchtung.cfg - die ich dann per include einfüge..?
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

baumeister

Nach Update von heute morgen läuft alles wieder wie gewünscht. Danke

Motivierte linke Hände

Hm, nun muss ich leider doch nochmal nachfragen, da ich wieder beim Start von fhem Fehler im Log zu meinen struct Definitionen bekomme:

2015.01.24 09:31:18 1: Including ./log/fhem.save
2015.01.24 09:31:18 1: configfile: anwesend.iPhone6: unknown attribute struc_iPhone6. Type 'attr anwesend.iPhone6 ?' for a detailed list.
anwesend.iPhone5S: unknown attribute struc_iPhone5s. Type 'attr anwesend.iPhone5S ?' for a detailed list.
anwesend.Repeater.iPhone6: unknown attribute struc_iPhone6. Type 'attr anwesend.Repeater.iPhone6 ?' for a detailed list.
anwesend.Repeater.iPhone5S: unknown attribute struc_iPhone5s. Type 'attr anwesend.Repeater.iPhone5S ?' for a detailed list.
anwesend.geofency.iPhone6: unknown attribute struc_iPhone6. Type 'attr anwesend.geofency.iPhone6 ?' for a detailed list.
2015.01.24 09:31:18 1: usb create starting
2015.01.24 09:31:18 1: usb create end


Angelegt über die Weboberfläche, finde ich Folgendes in folgender Reihenfolge in der cfg.

(Der Übersichtlichkeit halber hier in mehrere Blöcke aufgeteilt, steht in der cfg untereinander.)

Anwesenheitsprüfung über Fritzbox
define RemoteFritzBoxWeb dummy
define anwesend.iPhone6 PRESENCE function {RemoteFritzBoxWeb("70:3E:AC:35:27:22")} 120 120
attr anwesend.iPhone6 userattr struc_allePhonesda struc_allePhonesda_map structexclude
attr anwesend.iPhone6 event-on-change-reading state
attr anwesend.iPhone6 struc_allePhonesda da.irgendwer
attr anwesend.iPhone6 struc_iPhone6 da.iPhone6
define anwesend.iPhone5S PRESENCE function {RemoteFritzBoxWeb("28:E1:4C:9C:A7:AD")} 120 120
attr anwesend.iPhone5S userattr struc_allePhonesda struc_allePhonesda_map structexclude
attr anwesend.iPhone5S event-on-change-reading state
attr anwesend.iPhone5S struc_allePhonesda da.irgendwer
attr anwesend.iPhone5S struc_iPhone5s da.iPhone5S


Prüfung über Repeater
define anwesend.Repeater.iPhone6 PRESENCE function {RemoteFritzBoxWeb("70:3E:AC:35:27:22", 1)} 120 120
attr anwesend.Repeater.iPhone6 userattr struc_allePhonesda struc_allePhonesda_map structexclude
attr anwesend.Repeater.iPhone6 event-on-change-reading state
attr anwesend.Repeater.iPhone6 struc_allePhonesda da.irgendwer
attr anwesend.Repeater.iPhone6 struc_iPhone6 da.iPhone6
define anwesend.Repeater.iPhone5S PRESENCE function {RemoteFritzBoxWeb("28:E1:4C:9C:A7:AD", 1)} 120 120
attr anwesend.Repeater.iPhone5S userattr struc_allePhonesda struc_allePhonesda_map structexclude
attr anwesend.Repeater.iPhone5S event-on-change-reading state
attr anwesend.Repeater.iPhone5S struc_allePhonesda da.irgendwer
attr anwesend.Repeater.iPhone5S struc_iPhone5s da.iPhone5S


Prüfung über Geofency (nur ein Telefon)
define anwesend.geofency.iPhone6 dummy
attr anwesend.geofency.iPhone6 userattr struc_allePhonesda struc_allePhonesda_map structexclude
attr anwesend.geofency.iPhone6 event-on-change-reading state
attr anwesend.geofency.iPhone6 struc_allePhonesda da.irgendwer
attr anwesend.geofency.iPhone6 struc_iPhone6 da.iPhone6
define set_anwesend.geofency.iPhone6 notify geofancy:currLoc_Christian.* set anwesend.geofency.iPhone6 $EVTPART1


Anwesenheitsprüfungen für Telefone in je einer Structure kombinieren
define da.iPhone5S structure struc_iPhone5s anwesend.iPhone5S anwesend.Repeater.iPhone5S
attr da.iPhone5S userattr struc_allePhonesda struc_allePhonesda_map structexclude
attr da.iPhone5S clientstate_behavior relative
attr da.iPhone5S clientstate_priority present absent
attr da.iPhone5S event-on-change-reading state
attr da.iPhone5S struc_allePhonesda da.irgendwer
define da.iPhone6 structure struc_iPhone6 anwesend.iPhone6 anwesend.Repeater.iPhone6 anwesend.geofency.iPhone6
attr da.iPhone6 userattr struc_allePhonesda struc_allePhonesda_map structexclude
attr da.iPhone6 clientstate_behavior relativeKnown
attr da.iPhone6 clientstate_priority present|Zu_Hause absent|underway
attr da.iPhone6 event-on-change-reading state
attr da.iPhone6 struc_allePhonesda da.irgendwer


Und dann noch eine Structure zum Kombinieren der Telefone, testen, ob überhaupt jemand da ist.
define da.irgendwer structure struc_allePhonesda da.iPhone6 da.iPhone5S

Was mache ich falsch? Stimmt die Reihenfolge in der cfg nicht?

Danke, Christian
FHEM 6 in einer KVM VM mit Ubuntu
HM-CFG-USB2, 2xHM-CFG-HMLAN, HM-HMUARTLGW mit 100+ HomeMatic Devices, Geofencing, Fritzbox, Unifi, HUE, Harmony-Hub, Denon-Receiver-Modul, Calendar, GardenaSmartDevice, Shelly, MQTT (zigbee2mqtt, Tasmota und Shelly) und ein wenig 1Wire.

rudolfkoenig

Das Problem ist, dass das userattr der structure(!) nicht alles enthaelt, was die Mitglieder benoetigen, aber beim FHEM-Start wird es aus der Konfigfile gelesen und ueberschreibt die bereits richtig gesetzten userattr der Mitglieder. Tritt nur bei mehrstufigen structures neuen Stils auf, die das device-userattr anstatt das global-userattr verwenden.

Ich habe userattr auch in die (lange) Attribut-Aunahmeliste aufgenommen. Um die aktuellen Meldungen zu fixen, sollte man nach Update (ab morgen) +Neustart ein save durchfuehren, und danach einen erneuten Neustart. Nach diesem zweiten Start sind die Meldungen weg.

Langfristig koennte man darueber nachdenken, den attr/deleteattr Befehl nicht an die Strukturmitglieder weiterzureichen.

Motivierte linke Hände

Zitat von: rudolfkoenig am 24 Januar 2015, 16:09:34
Um die aktuellen Meldungen zu fixen, sollte man nach Update (ab morgen) +Neustart ein save durchfuehren, und danach einen erneuten Neustart. Nach diesem zweiten Start sind die Meldungen weg.

Ich habe gestern ein Update gemacht. Scheint geklappt zu haben, heute erzählt mir fhem beim Update-Check "nothing to do...".

Config-Save und Restart habe ich jetzt ein paar Male abwechselnd gemacht. Das Log beim Start sagt immer noch:

2015.01.26 18:32:15 0: Server shutdown
2015.01.26 18:32:18 1: Including fhem.cfg
2015.01.26 18:32:18 3: telnetPort: port 7072 opened
2015.01.26 18:32:18 3: WEB: port 8083 opened
2015.01.26 18:32:18 3: WEBphone: port 8084 opened
2015.01.26 18:32:18 3: WEBtablet: port 8085 opened
2015.01.26 18:32:18 2: eventTypes: loaded 4645 events from ./log/eventTypes.txt
2015.01.26 18:32:18 1: HMLAN_Parse: HMUSB new condition disconnected
2015.01.26 18:32:18 3: Opening HMUSB device 192.168.1.24:1000
2015.01.26 18:32:18 3: HMUSB device opened
2015.01.26 18:32:18 1: HMLAN_Parse: HMUSB new condition init
2015.01.26 18:32:18 3: anwesend.iPhone6: unknown attribute struc_iPhone6. Type 'attr anwesend.iPhone6 ?' for a detailed list.
2015.01.26 18:32:18 3: anwesend.iPhone5S: unknown attribute struc_iPhone5s. Type 'attr anwesend.iPhone5S ?' for a detailed list.
2015.01.26 18:32:18 3: anwesend.Repeater.iPhone6: unknown attribute struc_iPhone6. Type 'attr anwesend.Repeater.iPhone6 ?' for a detailed list.
2015.01.26 18:32:18 3: anwesend.Repeater.iPhone5S: unknown attribute struc_iPhone5s. Type 'attr anwesend.Repeater.iPhone5S ?' for a detailed list.
2015.01.26 18:32:18 3: anwesend.geofency.iPhone6: unknown attribute struc_iPhone6. Type 'attr anwesend.geofency.iPhone6 ?' for a detailed list.
2015.01.26 18:32:18 3: WEBuser: port 8082 opened
2015.01.26 18:32:18 3: WEBhook: port 8081 opened
2015.01.26 18:32:18 3: Registering GEOFANCY geofancy for URL /geo...
2015.01.26 18:32:19 1: Including ./log/fhem.save
2015.01.26 18:32:19 1: configfile: anwesend.iPhone6: unknown attribute struc_iPhone6. Type 'attr anwesend.iPhone6 ?' for a detailed list.
anwesend.iPhone5S: unknown attribute struc_iPhone5s. Type 'attr anwesend.iPhone5S ?' for a detailed list.
anwesend.Repeater.iPhone6: unknown attribute struc_iPhone6. Type 'attr anwesend.Repeater.iPhone6 ?' for a detailed list.
anwesend.Repeater.iPhone5S: unknown attribute struc_iPhone5s. Type 'attr anwesend.Repeater.iPhone5S ?' for a detailed list.
anwesend.geofency.iPhone6: unknown attribute struc_iPhone6. Type 'attr anwesend.geofency.iPhone6 ?' for a detailed list.
2015.01.26 18:32:19 1: usb create starting
2015.01.26 18:32:19 1: usb create end
2015.01.26 18:32:19 2: Error messages while initializing FHEM: configfile: anwesend.iPhone6: unknown attribute struc_iPhone6. Type 'attr anwesend.iPhone6 ?' for a detailed list. anwesend.iPhone5S: unknown attribute struc_iPhone5s. Type 'attr anwesend.iPhone5S ?' for a detailed list. anwesend.Repeater.iPhone6: unknown attribute struc_iPhone6. Type 'attr anwesend.Repeater.iPhone6 ?' for a detailed list. anwesend.Repeater.iPhone5S: unknown attribute struc_iPhone5s. Type 'attr anwesend.Repeater.iPhone5S ?' for a detailed list. anwesend.geofency.iPhone6: unknown attribute struc_iPhone6. Type 'attr anwesend.geofency.iPhone6 ?' for a detailed list.
2015.01.26 18:32:19 0: Server started with 189 defined entities (version $Id: fhem.pl 7714 2015-01-25 15:24:49Z rudolfkoenig $, os linux, user fhem, pid 15475)


Definitionen etc. sind noch wie oben... Die Funktionalität scheint nicht beeinträchtigt. Wenn ich noch was testen, probieren, etc. soll, bitte gerne melden!
FHEM 6 in einer KVM VM mit Ubuntu
HM-CFG-USB2, 2xHM-CFG-HMLAN, HM-HMUARTLGW mit 100+ HomeMatic Devices, Geofencing, Fritzbox, Unifi, HUE, Harmony-Hub, Denon-Receiver-Modul, Calendar, GardenaSmartDevice, Shelly, MQTT (zigbee2mqtt, Tasmota und Shelly) und ein wenig 1Wire.

rudolfkoenig

Irgendwie hat das Einchecken der Datei nicht geklappt, ich wuesste gerne, ob das ein technisches Problem ist, oder ob ich getraeumt habe. Jedenfalls sollte der update heute ein geaendertes structure.pm mitbringen. Bitte damit nochmal testen.

Motivierte linke Hände

 :) Ja, update, restart, save, restart, und die Fehlermeldungen sind weg.  :)

Danke!
FHEM 6 in einer KVM VM mit Ubuntu
HM-CFG-USB2, 2xHM-CFG-HMLAN, HM-HMUARTLGW mit 100+ HomeMatic Devices, Geofencing, Fritzbox, Unifi, HUE, Harmony-Hub, Denon-Receiver-Modul, Calendar, GardenaSmartDevice, Shelly, MQTT (zigbee2mqtt, Tasmota und Shelly) und ein wenig 1Wire.

Joker2002

Hallo und guten Morgen miteinander.
Heute Morgen fuhren meine Rollläden nicht mehr hoch. Ein Blick in FHEM brachte mir folgende Meldungen:

configfile: DOIF_Pushovermeldungen_Rund_ums_Haus: unknown attribute do. Type 'attr DOIF_Pushovermeldungen_Rund_ums_Haus ?' for a detailed list.
DOIF_Rolladensteuerung_Tuer_Schlafzimmer_1: unknown attribute wait. Type 'attr DOIF_Rolladensteuerung_Tuer_Schlafzimmer_1 ?' for a detailed list.
DOIF_Funkfernbedienung_Schlafzimmer: unknown attribute wait. Type 'attr DOIF_Funkfernbedienung_Schlafzimmer ?' for a detailed list.
DOIF_Rolladensteuerung_Tuer_Wohnzimmer: unknown attribute wait. Type 'attr DOIF_Rolladensteuerung_Tuer_Wohnzimmer ?' for a detailed list.
DOIF_Rolladensteuerung_Fenster_Schlafzimmer_1: unknown attribute wait. Type 'attr DOIF_Rolladensteuerung_Fenster_Schlafzimmer_1 ?' for a detailed list.
DOIF_Rolladensteuerung_Tuer_Schlafzimmer_2: unknown attribute wait. Type 'attr DOIF_Rolladensteuerung_Tuer_Schlafzimmer_2 ?' for a detailed list.
DOIF_Rolladensteuerung_Fenster_Schlafzimmer_2: unknown attribute wait. Type 'attr DOIF_Rolladensteuerung_Fenster_Schlafzimmer_2 ?' for a detailed list.
DOIF_Rolladensteuerung_Fenster_Wohnzimmer_1: unknown attribute wait. Type 'attr DOIF_Rolladensteuerung_Fenster_Wohnzimmer_1 ?' for a detailed list.
DOIF_Rolladensteuerung_Fenster_Wohnzimmer_3: unknown attribute wait. Type 'attr DOIF_Rolladensteuerung_Fenster_Wohnzimmer_3 ?' for a detailed list.
DOIF_Rolladensteuerung_Fenster_Bad: unknown attribute wait. Type 'attr DOIF_Rolladensteuerung_Fenster_Bad ?' for a detailed list.
DOIF_Rolladensteuerung_Fenster_Kueche: unknown attribute wait. Type 'attr DOIF_Rolladensteuerung_Fenster_Kueche ?' for a detailed list.
DOIF_Lichtsschaltung: unknown attribute do. Type 'attr DOIF_Lichtsschaltung ?' for a detailed list.
DOIF_Lichtsteuerung_Garten: unknown attribute do. Type 'attr DOIF_Lichtsteuerung_Garten ?' for a detailed list.
DOIF_Lichtsteuerung_Garten: unknown attribute wait. Type 'attr DOIF_Lichtsteuerung_Garten ?' for a detailed list.
DOIF_Pushovermeldungen_Xiamo_Mi_Flower_Sensor: unknown attribute do. Type 'attr DOIF_Pushovermeldungen_Xiamo_Mi_Flower_Sensor ?' for a detailed list.
DOIF_Rolladensteuerung_Arbeitszimmer: unknown attribute wait. Type 'attr DOIF_Rolladensteuerung_Arbeitszimmer ?' for a detailed list.
DOIF_Multimediasteuerung_Fire_TV: unknown attribute wait. Type 'attr DOIF_Multimediasteuerung_Fire_TV ?' for a detailed list.
DOIF_Multimediasteuerung_HTPC: unknown attribute wait. Type 'attr DOIF_Multimediasteuerung_HTPC ?' for a detailed list.
DOIF_Multimediasteuerung_Beamer: unknown attribute wait. Type 'attr DOIF_Multimediasteuerung_Beamer ?' for a detailed list.
DOIF_Multimediasteuerung_Chromecast: unknown attribute wait. Type 'attr DOIF_Multimediasteuerung_Chromecast ?' for a detailed list.
DOIF_Alarmclock: unknown attribute do. Type 'attr DOIF_Alarmclock ?' for a detailed list.


Ich habe gesehen, dass nach dem gestrigen Update von FHEM (ich update jeden Morgen das System), am DOIF Modul ein Update durchgeführt wurde.

Kann es sein, dass bei dem Update irgenwas am DOIF verändert wurde, so dass meine DOIFS nicht mehr funktionieren ?

Bin echt für jeden Tipp dankbar  ;)

Joker2002

hier ein exemplarisches DOIFS eines meiner Rollläden:


Internals:
   DEF       
###################
## -Rollladenfenster Bad- ##
###################




## 14,114:
(
## im Normalfall wird der Rollo frühestens um 07.00 Uhr hochgefahren
## Von Mai bis August, wenn die Sonne hinten weg ist oder die Temperatur niedriger als 25 C ist oder die Wetterlage schlecht ist, soll der Rollladen wieder hochgefahren werden


([Rollladenstatus2_dummy] eq "on") and
([Rollladenstatus_Beschattung_vorne_dummy] eq "off")
)





(set rollo_OG_Z6 off) (set rollo_OG_Z6 off)





DOELSEIF




## 14:
## Von Mai bis August wenn die Sonne vorne angekommen ist und die Temperatur von über 27 Grad erreicht ist, soll der Rollladen etwas herunterfahren

([Rollladenstatus_Beschattung_vorne_dummy] eq "on")





(set rollo_OG_Z6 pos 71)







DOELSEIF



#################
## Spezialfall ##
#################


## 0:
## Rollladen im Bad fährt hoch, wenn die Fernbedienung betätigt wird
(
([b1_C] eq "on") and
([Anwesend] eq "on") and
([Rollladenstatus2_dummy] eq "off")
)

(set rollo_OG_Z6 off)


DOELSEIF


## 0:
## Rollladen im Bad fährt runter, wenn die Fernbedienung betätigt wird

(
([b1_C] eq "off") and
([Rollladenstatus2_dummy] eq "off")
)

(set rollo_OG_Z6 on)



DOELSEIF



## 14,114:

## im Normalfall fährt der Rolladen nach Sonnenuntergang runter

([Rollladenstatus2_dummy] eq "off")





(set rollo_OG_Z6 on) (set rollo_OG_Z6 on)

   MODEL      Perl
   NAME       DOIF_Rolladensteuerung_Fenster_Bad
   NR         351
   NTFY_ORDER 50-DOIF_Rolladensteuerung_Fenster_Bad
   STATE      cmd_4
   TYPE       DOIF
   READINGS:
     2018-03-22 22:48:29   Device          Anwesend
     2018-03-22 18:35:51   cmd             4
     2018-03-22 18:35:51   cmd_event       Rollladenstatus2_dummy
     2018-03-22 18:35:51   cmd_nr          4
     2018-03-22 22:48:29   e_Anwesend_STATE on
     2018-03-22 18:35:51   e_Rollladenstatus2_dummy_STATE off
     2018-02-19 22:57:38   e_b1_C_STATE    off
     2018-02-19 09:00:12   mode            enabled
     2018-03-22 18:35:51   state           cmd_4
     2018-03-22 06:33:16   wait_timer      no timer
   Regex:
   condition:
     0         
   devices:
   helper:
     DOIF_Readings_events
     DOIF_eventas
     globalinit 1
     last_timer 0
     sleeptimer -1
   itimer:
   perlblock:
     0         
   uiState:
   uiTable:
Attributes:
   icon       fts_shutter_1w_90
   room       Automatik

rudolfkoenig

ZitatKann es sein, dass bei dem Update irgenwas am DOIF verändert wurde, so dass meine DOIFS nicht mehr funktionieren ?
Das vermute ich auch: https://forum.fhem.de/index.php/topic,85868
Kannst du das bitte im passenden Forum mit passenden Betreff nochmal platzieren?

Damian

#28
Es gibt eine neue Version von DOIF, die zwei Modi unterstützt. Aufgrund der Definition wird bei dir offenbar der flasche Modus (Model-Perl) erkannt.

Lösche bitte die Leerzeilen am Anfang
bis zur ersten Klammer auf:

###################
## -Rollladenfenster Bad- ##
###################
## 14,114:
(
##
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Joker2002

hm, verstehe nicht genau was Du meinst.

..so in etwa ?

## 14,114:
(
## im Normalfall wird der Rollo frühestens um 07.00 Uhr hochgefahren
## Von Mai bis August, wenn die Sonne hinten weg ist oder die Temperatur niedriger als 25 C ist oder die Wetterlage schlecht ist, soll der Rollladen wieder hochgefahren werden
([Rollladenstatus2_dummy] eq "on") and
([Rollladenstatus_Beschattung_vorne_dummy] eq "off")
)





(set rollo_OG_Z6 off) (set rollo_OG_Z6 off)