Signalduino: Fragen zur whitelist/blacklist

Begonnen von dora71, 02 Februar 2019, 12:15:52

Vorheriges Thema - Nächstes Thema

dora71

Hallo zusammen,

ich kämpfe mich zur Zeit durch das Blacklist / Whitelist Feature beim Signalduino.

Ich benutze den Signalduino für 433 MHz, das funktioniert auch prima, sowohl für Intertechno-Steckdosen (Senden/Empfangen), für Conrad RS-200 Steckdosen (mit RAW-Aussendung) und für eine Wetterstation von Conrad / Sender von TCM. Soweit, so gut.

Laut Wiki kann ich die Blacklist/Whitelist ja nur für bestimmte Protokolle benutzen. Dazu meine Fragen:

  • Wenn ich z. B. Protokoll 0 blackliste, sind dann automatisch auch die "Unterprotokolle" (z. B. 0.3, 0.2) mit geblacklistet?
  • Kann ich über die Blacklist/Whitelistfunktion spezifischere Einstellungen vornehmen. z. B. empfange ich z. Zt. ABS Wetterstationsdaten, die ich nicht brauche, ich kann Protokoll 0 aber nicht blacklisten, da die Wetterstation von Conrad bzw. der Sender von TCM ebenfalls Protokoll 0 benutzt. Zur Zeit versuche ich das Ganze, über die autocreate-Attribute zu lösen.
  • Im Wiki tue ich mich sehr schwer mit der Erklärung zur White/Blacklist, z. B. "hilfreich ist es auch, wenn in den verwendeten Geräten im Internal <gerätename>_DMSG nachgesehen wird", dort finde ich bei mir z. B. gar nichts, was auf eine Protokollnummer hinweist.

Ich kann gerne im Wiki mit behilflich sein, aber ich möchte nicht einfach etwas herauslöschen. Habe gerade erst mit dem Editieren begonnen.  :D

Gruß Rainer

Ralf9

ZitatWenn ich z. B. Protokoll 0 blackliste, sind dann automatisch auch die "Unterprotokolle" (z. B. 0.3, 0.2) mit geblacklistet?
nein nur die 0. Die 0.3, 0.2 mußt Du ggf auch in die blacklist eintragen.

ZitatKann ich über die Blacklist/Whitelistfunktion spezifischere Einstellungen vornehmen. z. B. empfange ich z. Zt. ABS Wetterstationsdaten, die ich nicht brauche, ich kann Protokoll 0 aber nicht blacklisten, da die Wetterstation von Conrad bzw. der Sender von TCM ebenfalls Protokoll 0 benutzt.
Nein in der Blacklist/Whitelistfunktion kannst Du nur Protokoll IDs angeben, das was Du möchtest müsste im CUL_TCM97001 Modul gemacht werden.

Zitat
"hilfreich ist es auch, wenn in den verwendeten Geräten im Internal <gerätename>_DMSG nachgesehen wird", dort finde ich bei mir z. B. gar nichts, was auf eine Protokollnummer hinweist
Eine Möglichkeit dies einzubauen wäre nachzuschauen ob in der DMSG keine # enthalten ist und dann die ID ergänzen . z.B.
ID=0.1, s24803E740000
oder
0.1# s24803E740000

Gruß Ralf


FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

dora71

Hi Ralf,

ZitatEine Möglichkeit dies einzubauen wäre nachzuschauen ob in der DMSG keine # enthalten ist und dann die ID ergänzen

Interessanterweise ändert sich bei mir das Reading.  ???  :o

Zur Zeit (20:16 Uhr) ist es z. B.:
sduino433_DMSG sDDC450115000

Und jetzt (20:22 Uhr) lautet es:
sduino433_DMSG sDDC450919000

Und ich nehme an, die passende Protokoll-Nummer finde ich nur mit verbose 4 auf dem Signalduino-Device, richtig?

Gruß Rainer

Ralf9

#3
Ich habe es bei mir mal eingebaut, ist nur eine Zeile in der 00_SIGNALduino
Einfach hier

sub SIGNALduno_Dispatch($$$$$)
...
my %addvals = (DMSG => $dmsg);
if (AttrVal($name,"suppressDeviceRawmsg",0) == 0) {
$addvals{RAWMSG} = $rmsg
}

Diese Zeile einfügen:
$addvals{ID} = $id if (index($dmsg,"#") == -1);
es sieht dann so aus:
my %addvals = (DMSG => $dmsg);
$addvals{ID} = $id if (index($dmsg,"#") == -1);
if (AttrVal($name,"suppressDeviceRawmsg",0) == 0) {
$addvals{RAWMSG} = $rmsg
}


Dann ein fhem neustart oder "reload 00_SIGNALduino"

Gruß Ralf

FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

dora71

Hallo Ralf und alle anderen,

nach Einbau Deiner Zeile erhalte ich jetzt ein zusätzliches Internal mit der Protokoll ID  :)
sduino433_ID 0.3

Das ist doch schon mal ein Anfang! Jetzt hoffe ich nur, dass die "unerwünschten" Temperatursender ein anderes Protokoll haben, dann ist es einfach.
Ist auf jeden Fall schon mal eine große Hilfe. Vielen Dank.

Checkst Du das in das Modul mit ein?
Für alle, die das auch schon vorher machen wollen: Wir reden über Zeile 1933.

Gruß Rainer