Alias vs Original Device Name

Begonnen von Hackstall, 04 September 2018, 19:12:37

Vorheriges Thema - Nächstes Thema

Hackstall

Hallo,

ich habe angefangen meine Devices als Namen im Original zu lassen und per Alias dann den Devices meinen Namen zu geben.

Dieses funktioniert auch alles ganz gut mit folgender Einschränkung.

Ich speichere alle Daten in einer Datenbank. Hier taucht jedoch der Original-Name auf.
Was muss ich tun damit auch hier der alias Name übernommen wird.


Zips.

define ZWave_SENSOR_MULTILEVEL_29 ZWave d6b4118c 29
attr ZWave_SENSOR_MULTILEVEL_29 alias Draussen_ZRain
#attr ZWave_SENSOR_MULTILEVEL_29 DbLogExclude .*
attr ZWave_SENSOR_MULTILEVEL_29 DbLogInclude .*
attr ZWave_SENSOR_MULTILEVEL_29 IODev ZWDongle_1
attr ZWave_SENSOR_MULTILEVEL_29 classes ZWAVEPLUS_INFO SENSOR_MULTILEVEL CONFIGURATION ASSOCIATION BATTERY WAKE_UP METER DEVICE_RESET_LOCALLY ASSOCIATION_GRP_INFO POWERLEVEL VERSION MANUFACTURER_SPECIFIC
attr ZWave_SENSOR_MULTILEVEL_29 group Grp-ZRain
attr ZWave_SENSOR_MULTILEVEL_29 icon weather_thunderstorm
attr ZWave_SENSOR_MULTILEVEL_29 room 4.1_DG_Terasse,ZWave
attr ZWave_SENSOR_MULTILEVEL_29 vclasses ASSOCIATION:2 ASSOCIATION_GRP_INFO:1 BATTERY:1 DEVICE_RESET_LOCALLY:1 MANUFACTURER_SPECIFIC:2


In der Datenbank erscheint dann folgender Devicename:
2018-09-04 19:04:52   ZWave_SENSOR_MULTILEVEL_29   ZWAVE   battery: 100 %   battery   100 %   
2018-09-04 19:04:52   ZWave_SENSOR_MULTILEVEL_29   ZWAVE   batteryState: ok   batteryState   ok   
2018-09-04 19:04:52   ZWave_SENSOR_MULTILEVEL_29   ZWAVE   batteryPercent: 100   batteryPercent   100   

ich hätte aber gerne Draussen_ZRain in der Datenbank wie im Alias angegeben.

Gibt es hier eine Möglichkeit?

Danke Andreas

DS_Starter

Ja die gibt es. Schau dir mal das Attribut "valueFn" im DbLog an. Dort speziall die Variable $DEVICE.  Ich muss grad mal weg, werde aber später es selbst mal probieren.

LG,
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

DS_Starter

#2
Hallo Andreas,

du kannst dein Ziel erreichen indem du das Attribut "valueFn" folgendermaßen setzt:


{
  $DEVICE = AttrVal($DEVICE,"alias",$DEVICE);
}


Hat ein Device einen Alias, wird dieser im Datensatz verwendet, ansonsten der originale Devicename.
Ich würde an deiner Stelle jedoch darauf achten, dass der Alias den Richtlinien von Devicenamen folgt, also keine Leerzeichen, Umlaute etc. enthält. DbLog und der Datenbank ist das zwar egal, aber wenn dann Auswertungen gemacht werden, könnte es evtl. zu Problemen kommen.
Man könnte die Funktion noch verfeinern um ungültige Aliase zu verhindern, das kannst du gerne ausprobieren.

Grüße
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Hackstall

Hallo Heiko,

auch wenn ich schon etwas bei FHEM unterwegs bin verstehe ich leider aus Deiner Antwort nur Bahnhof.

Was ist den valueFn und wie müsste denn dann meine attr

ich habe mal folgendes gemäss Deiner Beschreibung versucht:

attr ZWave_SENSOR_MULTILEVEL_29 valueFn {$DEVICE = AttrVal($DEVICE,"alias",$DEVICE);}


aber hier gab es beim speichern der fhem.cfg schon Probleme.

Könntest Du mir vielleicht noch etwas auf die Sprünge helfen.

Danke Andreas

DS_Starter

#4
Hi Andreas,

sorry,  das Attribut "valueFn" ist im DbLog zu setzen.
Diese Funktion dient zum benutzerspezifischen Anpassen der zu speichernden Datensätze. In der commandref von DbLog steht einiges dazu.

Also im DbLog attr "valueFn" setzen:


{
  $DEVICE = AttrVal($DEVICE,"alias",$DEVICE);
}

Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter