Autor Thema: [gelöst] Verlinkung von Namen  (Gelesen 611 mal)

Offline choetzu

  • Hero Member
  • *****
  • Beiträge: 1145
[gelöst] Verlinkung von Namen
« am: 29 Januar 2020, 21:06:37 »
Guten Abend,
ich bin kurz vor schluss mit der Gestaltung meiner ReadingsGroups... Ich bin sehr zufrieden. Wo ich nun aber noch anecke, ist bei einer kleinen Kosmetik. Und zwar habe ich folgende ReadingsGroup:

Abwesenheit_Dummy:<%home2>,<Abwesenheit>,state,<{WeekdayAndTimeFromTimestamp(ReadingsTimestamp($DEVICE,"state",""))}@state>
Arlo_SmartHub:<%cam2>,<Cams>,state,<{WeekdayAndTimeFromTimestamp(ReadingsTimestamp($DEVICE,"state",""))}@state>
ALARM_Vorwarnung_DOIF:<%public-service>,<Alarmanlage>,state,<{WeekdayAndTimeFromTimestamp(ReadingsTimestamp($DEVICE,"state",""))}@state>
Monitoring_Dummy:<%monitoring-system>,<Monitoring>,state,<{WeekdayAndTimeFromTimestamp(ReadingsTimestamp($DEVICE,"state",""))}@state> 
Storen_CLOSED_Anzahl_DOIF:<%shutter1>,<Storen&nbsp;zu>,state,<{WeekdayAndTimeFromTimestamp(ReadingsTimestamp($DEVICE,"state",""))}@state>
Lichter_AN_Anzahl_DOIF:<%light-bulb>,<Lichter&nbsp;an>,state,<{WeekdayAndTimeFromTimestamp(ReadingsTimestamp($DEVICE,"state",""))}@state>
Wassertank:<%water-tank>,<Wassertank>,RemainingHeight,<{WeekdayAndTimeFromTimestamp(ReadingsTimestamp($DEVICE,"RemainingHeight",""))}@RemainingHeight>

Zusätzlich habe ich hinsichtlich Verlinkung folgendes beim attr valuePrefix ergänzt:
{'Abwesenheit_Dummy.state' => '<a href="/fhem?room=02_Security">','Arlo_SmartHub.state' => '<a href="/fhem?room=07_Cams">'}
Somit habe ich 2 ReadingsValues verlinkt. Das klappt alles bestens.

Ich möchte jedoch nun anstelle des ReadingsValue lieber den Namen im ersten Fall/erste Zeile <Abwesenheit> verlinken. Das kriege ich aber irgendwie nicht hin. Weiss jemand Rat? Danke.

lg c

« Letzte Änderung: 16 Februar 2020, 21:15:10 von choetzu »
Raspi3, EnOcean, Zwave, Homematic

Offline choetzu

  • Hero Member
  • *****
  • Beiträge: 1145
Antw:Verlinkung von Namen
« Antwort #1 am: 02 Februar 2020, 11:08:14 »
Guten Morgen,
sorry, wenn ich nochmals anklopfe, aber ich komme einfach nicht weiter... Gibt es wirklich keine Möglichkeit einen einfachen Link zu setzen? So in etwa.. (siehe Abwesenheit)

define Test readingsGroup Abwesenheit_Dummy:<%home2>,< '<a href="/fhem?room=02_Security">'Abwesenheit>,state,<{WeekdayAndTimeFromTimestamp(ReadingsTimestamp($DEVICE,"state",""))}@state>
Ich komme einfach nicht drauf...

Weiter ist es mir auch ein Rätsel, wie ich einen Device-Namen setzen kann.. Folgendes funktioniert nicht, siehe $DEVICE..
define Test readingsGroup Abwesenheit_Dummy:<%home2>,<$DEVICE>,state,<{WeekdayAndTimeFromTimestamp(ReadingsTimestamp($DEVICE,"state",""))}@state>
ich bin um Hilfe dankbar. Sorry die Umstände..
Raspi3, EnOcean, Zwave, Homematic

Offline choetzu

  • Hero Member
  • *****
  • Beiträge: 1145
Antw:Verlinkung von Namen
« Antwort #2 am: 16 Februar 2020, 12:29:54 »
ich tappe im Dunkeln... und suche auch nach einem Workaround, leider ohne Erfolg.. Vielleicht kann mir jemand helfen, wenn ich mein Vorhaben besser erläutere. Ich möchte gerne eine ReadingGroup erstellen mit folgendem Output

Spalte 1: Icon (z.b. <%home>) / Spalte 2: Name oder Alias des Devices (verlinkt) / Spalte 3: Wert des Readings!! / Spalte 4: Timestamp
Das ALIAS/der Name des Devices soll anklickbar/verlinkt sein. Was habe ich probiert?

Abwesenheit_Dummy:<%home2>,stateResultat: Es kommt nur das Icon und der Readingwert. Nicht aber der Device Name

<%home2>,Abwesenheit_Dummy:stateResultat: geht nicht. kommt nix

<%home2>Abwesenheit_Dummy:<%DEVICE>,stateResultat: geht nicht. kommt gar nix.

Abwesenheit_Dummy:state
attr test nameIcon {AttrVal($DEVICE,"icon",$DEVICE)}
Resultat: Icon wird dargestellt, jedoch kein Name. Das geht offensichtlich nicht gemäss https://forum.fhem.de/index.php/topic,31991.msg244280.html#msg244280
Wenn ich hier den Namen noch darstellen könnte, wäre dies optimal

Abwesenheit_Dummy:<Abwesenheit>,state
attr test nameIcon {AttrVal($DEVICE,"icon",$DEVICE)}
Resultat: Kommt 2mal Abwesenheit und dann der Wert des Readings.. Nix anklickbar...

Da ich mich nicht so gut mit Perl auskenne, stellt sich mir die Frage, wie ich zum Resultat kommen könnte...

danke für Denkanstösse

Raspi3, EnOcean, Zwave, Homematic

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 20311
Antw:Verlinkung von Namen
« Antwort #3 am: 16 Februar 2020, 13:44:23 »
der device name ist ein internal und heisst NAME. wenn du diesen in einer readingsGroup anzeigen möchtest: +NAME

$DEVICE oder $NAME wäre wenn überhaupt die readingsGroup selber. das ist sicher nicht das was du willst.
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline choetzu

  • Hero Member
  • *****
  • Beiträge: 1145
Antw:Verlinkung von Namen
« Antwort #4 am: 16 Februar 2020, 15:01:51 »
Super, genau das habe ich gesucht. Herzlichen Dank.

Gibt es noch die Möglichkeit +NAME zu verlinken? Ich habe es versucht mit
'Abwesenheit_Dummy.+NAME' => '<a href="/fhem?room=02_Security">'
Hat aber nicht geklappt...

Raspi3, EnOcean, Zwave, Homematic

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 20311
Antw:Verlinkung von Namen
« Antwort #5 am: 16 Februar 2020, 15:07:55 »
ein problem nach dem anderen.


- wird der name denn angezeigt ?
- wenn ja: im mapping musst du NAME verwenden. das + ist nur um zu sagen das es ein internal ist.
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline choetzu

  • Hero Member
  • *****
  • Beiträge: 1145
Antw:Verlinkung von Namen
« Antwort #6 am: 16 Februar 2020, 16:13:19 »
ein problem nach dem anderen.
- wird der name denn angezeigt ?
- wenn ja: im mapping musst du NAME verwenden. das + ist nur um zu sagen das es ein internal ist.

Super, hat tiptop geklappt!!! Name wird angezeigt und die Verlinkung von NAME klappt ebenso...

Jetzt fehlt mir nur noch das "letzte" Problem..Dann bin ich ruhig ;).

 Wie mache ich die Verlinkung von <pH> in folgender Definition. mit valuePrefix hab ich es nicht hingekriegt..
Whirlpool:<%flask>,<pH>,PH,<{WeekdayAndTimeFromTimestamp(ReadingsTimestamp($DEVICE,"PH",""))}@PH>
Raspi3, EnOcean, Zwave, Homematic

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 20311
Antw:Verlinkung von Namen
« Antwort #7 am: 16 Februar 2020, 16:17:08 »
statt <pH> ein ‘dummy’ reading mit !pH verwenden und dieses ganz normal mappen.
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline choetzu

  • Hero Member
  • *****
  • Beiträge: 1145
Antw:Verlinkung von Namen
« Antwort #8 am: 16 Februar 2020, 21:14:50 »
wow, das ist ja sehr einfach. Somit haben sich alle meine Probleme gelöst (zumindest in Bezug auf FHEM ;))

so gehts..
Whirlpool:<%flask>,!pH,PH,<{WeekdayAndTimeFromTimestamp(ReadingsTimestamp($DEVICE,"PH",""))}@PH>
und beim Attribut valuePrefix folgendes setzen:
{'Whirlpool.pH' => '<a href="/fhem?room=09_Pool">'}
Herzlichen Dank justyou68!
Raspi3, EnOcean, Zwave, Homematic

Offline choetzu

  • Hero Member
  • *****
  • Beiträge: 1145
Antw:[gelöst] Verlinkung von Namen
« Antwort #9 am: 16 Februar 2020, 22:04:27 »
achso... es geht doch noch nciht 100% ;) Sorry..

nämlich in dem Fall, wenn ich das "dummy"-Reading (hier !Redox) gleich nenne wie das Reading selbst. In meinem Fall auch Redox.

Der Code sieht so aus
Whirlpool:<%lab-2>,!Redox,Redox,<{WeekdayAndTimeFromTimestamp(ReadingsTimestamp($DEVICE,"Redox",""))}@Redox>
In dem Fall werden zweimal die Werte dargestellt und nicht wie gewünscht  der Readingname (hier Redox) und einmal den Wert. Da müsste ich vermutlich mit <Redox> arbeiten und das dann irgendwie verlinken. Doch wie? folgendes geht nicht.

'<Redox>' => '<a href="/fhem?room=09_Pool">'
Raspi3, EnOcean, Zwave, Homematic

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 20311
Antw:[gelöst] Verlinkung von Namen
« Antwort #10 am: 17 Februar 2020, 06:50:20 »
jeder reading name muss eindeutige sein und nur ein mal vorkommen.

aber du kannst doch das dummy reading nennen wie du willst und per mapping dann so darstellen wie es sein soll.
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline choetzu

  • Hero Member
  • *****
  • Beiträge: 1145
Antw:[gelöst] Verlinkung von Namen
« Antwort #11 am: 17 Februar 2020, 11:09:57 »
Danke justme1968. Das habe ich auch probiert, hat aber nicht geklappt. Folgende Mappings habe ich gemäss dem Wiki probiert, erfolglos.

Whirlpool:<%lab-2>,!Test,Redox,<{WeekdayAndTimeFromTimestamp(ReadingsTimestamp($DEVICE,"Redox",""))}@Redox>
getestete Mappings:
{!Test=>"Redox"}{Test=>"Redox"}{!Test=>'Redox'}{Test=>'Redox'}{'Test'=>"Redox"}{'Test'=>'Redox'}{"Test"=>"Redox"}
nix geht... hmm... habe ich DIE Variante ausgelassen?
Raspi3, EnOcean, Zwave, Homematic

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 20311
Antw:[gelöst] Verlinkung von Namen
« Antwort #12 am: 17 Februar 2020, 20:09:35 »
richtig ist alles one !

aber nicht bei mapping -> das ist für device namen
sondern bei valueFormat -> das ist für readings

mir !... zeigst du ja ein reading an. in diesem fall halt eines das es nicht gibt und das nur dazu da ist es weiter zu verarbeiten.
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH