HM-SEC-SD in der Webansicht etwas verschönern

Begonnen von Guest, 25 Juni 2012, 20:21:57

Vorheriges Thema - Nächstes Thema

Markus

                                                   

Am Samstag, 24. November 2012 20:01:53 UTC+1 schrieb UliM:
>
> Hi,
> dann hast Du die Routine aus dem zip "einfach so" übernommen - da muss
> noch was davor und dahinter.
> Lies Dir mal
> http://www.fhemwiki.de/wiki/99_myUtils_anlegen
> durch, damit solltest Du es hinbekommen.
>
 
Sorry ich blick nicht durch und ja ich habe begonnen das Buch
"Programmieren lernen mit Perl" zu Lesen

Jetzt bekomme ich diese Fehlermeldung :-(

*syntax error at ./FHEM/99_myUtils.pm line 21, near "my " Global symbol
"$ReturnString" requires explicit package name at ./FHEM/99_myUtils.pm line
21. Global symbol "$ReturnString" requires explicit package name at
./FHEM/99_myUtils.pm line 33. Global symbol "$ReturnString" requires
explicit package name at ./FHEM/99_myUtils.pm line 35. syntax error at
./FHEM/99_myUtils.pm line 36, near "}"


meine 99utilis

##############################################
# $Id: 99_Utils.pm 1932 2012-10-06 20:15:33Z ulimaass $
package main;

use strict;
use warnings;
use POSIX;

sub
myUtils_Initialize($$)
{
  my ($hash) = @_;
}


##########################################################
# Rauchmelder
CheckRauchmelder
{
    my $dev1 = "";
    my $ReturnString = "";
    my $state1 = "";
    my %devlist = devspec2array("Rauchmelder_.*");
    my $wert = "";
    foreach (%devlist){
        $dev1 = "$_";
        $state1 = Value($dev1);
        if (index($state1, "_days_since_last_alive") >= 0) {
            $wert = sprintf("%02d", substr($state1, 0, 2) + 1);
            if ($wert <= 13) {substr($state1, 0, 2) = $wert;}
            {fhem "setstate $dev1 $state1"};
        }
        $ReturnString .= "\n".$dev1." : ".$state1;
    }
    return ($ReturnString);
}


1;


*meine FHEM.cfg
*

define Rauchmelder_Kuche CUL_HM 177AAB
attr Rauchmelder_Kuche actCycle 090:00
attr Rauchmelder_Kuche actStatus unknown
attr Rauchmelder_Kuche devInfo 000100
attr Rauchmelder_Kuche firmware 1.0
attr Rauchmelder_Kuche hmClass receiver
attr Rauchmelder_Kuche model HM-SEC-SD
attr Rauchmelder_Kuche protLastRcv 2012-11-23 08:36:42
attr Rauchmelder_Kuche protSndCnt 3
attr Rauchmelder_Kuche protSndLast 2012-11-20 20:34:08
attr Rauchmelder_Kuche protState CMDs_done
attr Rauchmelder_Kuche room Kuche
attr Rauchmelder_Kuche serialNr IEQ0401826
attr Rauchmelder_Kuche subType smokeDetector
define FileLog_Rauchmelder_Kuche FileLog ./log/Rauchmelder_Kuche-%Y.log
Rauchmelder_Kuche
attr FileLog_Rauchmelder_Kuche logtype text
attr FileLog_Rauchmelder_Kuche room CUL_HM


define RauchmelderStatusNotify notify Rauchmelder_.*:alive {\
    {fhem ("setstate %NAME 00_days_since_last_alive") }\
}
attr RauchmelderStatusNotify group Workflow
attr RauchmelderStatusNotify room Rauchmelder

define RauchmelderAliveTimer at *00:00:00 {CheckRauchmelder()}
attr RauchmelderAliveTimer group Workflow
attr RauchmelderAliveTimer room Rauchmelder

*

Gruß, Uli
>
> Gruß Zurück

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Raspberry Pi2 als FHEM-Plattform
HM, FS20, 1-Wire, PanStamp,LW12,Intertechno,ESPEasy,Alexa

UliM

                                                 

Hi,
1. wie heisst die Datei genau?  Du schreibst 99utils
Sieh tnicht korrekt aus.  Bedenke, dass der Name der Initialize-Routine mit
dem Dateinamen passen muss, siehe wiki.

2. Da fehlt das Schlüsselwort "sub".
*##########################################################
# Rauchmelder
sub
CheckRauchmelder
{
    my $dev1 = "";
    my $ReturnString = "";

*=8-)

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

Markus

                                                   

OK das "sub"wars die Fehlermeldung ist jetzt weg und ich erhalte bei allen
Rauchmeldern das Bild mit der 0
aber sie haben erst heute ihren status gesendet das heist ich kann jetzt
nicht testen ob es wirklich funktioniert.

1. wie heisst die Datei genau?  Du schreibst 99utils
>
Die Datei heist jetzt: 99_CheckRauchmelderUtils.pm
 Ich hab auch 99_myUtils.pm ausprobiert mit dem selben ergebnis.


Sieht nicht korrekt aus.  Bedenke, dass der Name der Initialize-Routine mit
> dem Dateinamen passen muss, siehe wiki.
>
> 2. Da fehlt das Schlüsselwort "sub".
> *##########################################################
> # Rauchmelder
> sub
> CheckRauchmelder  # ist das **der Name der Initialize-Routine?*

 

> *{
>     my $dev1 = "";
>     my $ReturnString = "";
>
> *=8-)
>
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Raspberry Pi2 als FHEM-Plattform
HM, FS20, 1-Wire, PanStamp,LW12,Intertechno,ESPEasy,Alexa

UliM

                                                 

Am Samstag, 24. November 2012 21:43:30 UTC+1 schrieb Markus:
>
>
> *CheckRauchmelder  # ist das **der Name der Initialize-Routine?*
>
>
>
>
*Nein, der Name der initialize-Routine steht an der Initialize-Routine:
*
*use strict;
use warnings;
use POSIX;

sub
myUtils_Initialize($$)
{
  my ($hash) = @_;
}*
Der rote Teil muss mit dem Dateinamen überinstimmen:
Dateiname: 99_myUtils.pm
Routine myUtils_Initialize

Ist das Beispiel mit "Werkzeugkasten" im Wiki nicht anschaulich genug?

Gruß, Uli


--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

Guest

Originally posted by: <email address deleted>

Noch ein anderer Punkt.
Oben wurde erwähnt, dass die Rauchmelder nur alle ca 3,5 Tage ein
Lebenszeichen senden.

Bei mir kommt jedoch ca. jede 1-2 Minuten ein "alive" an.

2012-11-24_21:45:04 Rauchmelder_Wohnzimmer Activity:unknown
2012-11-24_21:45:33 Rauchmelder_Wohnzimmer Activity:unknown
2012-11-24_21:45:51 Rauchmelder_Wohnzimmer Activity:unknown
2012-11-24_21:46:17 Rauchmelder_Wohnzimmer Activity:unknown
2012-11-24_21:46:38 Rauchmelder_Wohnzimmer Activity:unknown
2012-11-24_21:47:09 Rauchmelder_Wohnzimmer Activity:alive
2012-11-24_21:47:50 Rauchmelder_Wohnzimmer Activity:unknown
2012-11-24_21:48:20 Rauchmelder_Wohnzimmer Activity:unknown
2012-11-24_21:48:50 Rauchmelder_Wohnzimmer Activity:alive
2012-11-24_21:49:08 Rauchmelder_Wohnzimmer Activity:unknown
2012-11-24_21:49:39 Rauchmelder_Wohnzimmer Activity:alive
2012-11-24_21:50:09 Rauchmelder_Wohnzimmer Activity:unknown
2012-11-24_21:50:09 Rauchmelder_Wohnzimmer Activity:alive
2012-11-24_21:50:24 Rauchmelder_Wohnzimmer Activity:unknown
2012-11-24_21:50:54 Rauchmelder_Wohnzimmer Activity:alive
2012-11-24_22:01:14 Rauchmelder_Wohnzimmer Activity:unknown
2012-11-24_22:01:45 Rauchmelder_Wohnzimmer Activity:alive
2012-11-24_22:03:15 Rauchmelder_Wohnzimmer Activity:unknown
2012-11-24_22:03:15 Rauchmelder_Wohnzimmer Activity:alive

Das Teil ist nagelneu. Hat sich da was an der Firmware geändert?

VG,
Dirk


Am Samstag, 24. November 2012 21:49:29 UTC+1 schrieb UliM:
>
>
>
> Am Samstag, 24. November 2012 21:43:30 UTC+1 schrieb Markus:
>>
>>
>> *CheckRauchmelder  # ist das **der Name der Initialize-Routine?*
>>
>>
>>
>>
> *Nein, der Name der initialize-Routine steht an der Initialize-Routine:
> *
> *use strict;
> use warnings;
> use POSIX;
>
> sub
> myUtils_Initialize($$)
> {
>   my ($hash) = @_;
> }*
> Der rote Teil muss mit dem Dateinamen überinstimmen:
> Dateiname: 99_myUtils.pm
> Routine myUtils_Initialize
>
> Ist das Beispiel mit "Werkzeugkasten" im Wiki nicht anschaulich genug?
>
> Gruß, Uli
>
>
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Markus

                                                   

Habs jetzt hingekrigt und Funktioniert auch!

@UliM Ja jetzt wo ichs kapiert habe und weis wie es geht ist das Beispiel
anschaulich genug :-)
aber als neuling sehe ich manchmal wirklich vor lauter Bäumen den Wald nicht


Danke für die Hilfe und eure Geduld!

lg Markus

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Raspberry Pi2 als FHEM-Plattform
HM, FS20, 1-Wire, PanStamp,LW12,Intertechno,ESPEasy,Alexa

Guest

Originally posted by: <email address deleted>

Nabend zusammen,

inzwischen sieht das Thema Rauchmelder auch bei mir ganz gut aus. Die
Dinger melden alive recht regelmässig. Habe jetzt auch alles was hier steht
brav eingefügt allerdings ist meine Webansicht immer noch diese:

smokeDetector
  RM_Arbeitszimmer
<http://192.168.100.1:8083/fhem?detail=RM_Arbeitszimmer>
        alive
 RM_Esszimmer
<http://192.168.100.1:8083/fhem?detail=RM_Esszimmer>
alive
 RM_Flur_Kuche
<http://192.168.100.1:8083/fhem?detail=RM_Flur_Kuche>
alive
 RM_Flur_Oben
<http://192.168.100.1:8083/fhem?detail=RM_Flur_Oben>
alive
 RM_Kammer
<http://192.168.100.1:8083/fhem?detail=RM_Kammer>
alive
 RM_Schlafzimmer
<http://192.168.100.1:8083/fhem?detail=RM_Schlafzimmer>
alive
 
Wie bekomme ich die hübschen Kreise da angezeigt? Die Bilder liegen unter
images/default nur anzeigen will er sie mir nicht. Muss ich den Dingern ein
spezielles Attribut geben?

define RM_Arbeitszimmer CUL_HM 1B065B
attr RM_Arbeitszimmer actCycle 090:00
attr RM_Arbeitszimmer actStatus unknown
attr RM_Arbeitszimmer devInfo 000100
attr RM_Arbeitszimmer firmware 1.0
attr RM_Arbeitszimmer hmClass receiver
attr RM_Arbeitszimmer model HM-SEC-SD
attr RM_Arbeitszimmer protLastRcv 2012-11-15 17:58:47
attr RM_Arbeitszimmer room Rauchmelder
attr RM_Arbeitszimmer serialNr JEQ0089994
attr RM_Arbeitszimmer subType smokeDetector
define FileLog_RM_Arbeitszimmer FileLog ./log/RM_Arbeitszimmer-%Y.log
RM_Arbeitszimmer
attr FileLog_RM_Arbeitszimmer logtype text
attr FileLog_RM_Arbeitszimmer room Rauchmelder

Dank Euch

Martin


--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Morgen Thot,

ja sowohl notify als auch at sind drin und im Log gibt es keine
Fehlermeldungen - gibt es eine Möglichkeit zu prüfen, ob die auch tun =>
irgendwas Richtung LOG 3?

Und bei mir steht im Webinterface halt der Text "alive" - wie kommt da das
Icon hin? Sollte das automatisch tun, oder muss ich da noch was ändern -
konfigurieren - programmieren?

Danke

Martin

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hallo Dirk,

diese Meldungen sind nicht korrekt, da geht etwas nicht nach plan.
Devices die am Action Detector haengen werden (sollte  im Commandref
stehen...)
- nach booten auf unknown gesetzt, da fhem den Zustand nicht kenne - aber
nur ein mal!
- je nach erhalten der ersten Nachricht auf alive gesetzt werden
- wenn in spezifizierten Zeitraum keine (egal welche) nachricht gekommen
ist auf dead gesetzt

Alle events werden nur gepostet, wenn sich der Zustand aendert, nicht
regelmaessig
Unknown darf es nur nach neustart oder neu neu eintragen des Device geben

Der Zeitraum wird im device im Attribut actCyle festgelegt und kann auch
geaendert werden
Der Zustand aller ueberwachten deivces steht in der entity actiondetector
Gruss
Martin



--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hi Martin Mauser,
ich würde einen Schritt für Schritt Test vorschlagen.
Noch kurz eine Hintergrundinfo: das Ganze läuft erst los, wenn fürden
jeweiligen RM ein alive empfangen wurde. Wenn also deine Einrichtung des
Ganzen erst nach dem letzten alive durchgeführt wurde, dann passiert
erstmal nichts.
 
Jetzt mal, was ich prüfen würde:
1. Notify. Sollte etwa so aussehen (wobei SD_  bei dir durch RM_ ersetzt
werden muss):
define SDStatusNotify notify SD_.*:alive {fhem ("setstate %NAME
00_days_since_last_alive") }
2. Test ob das Notify funktioniert, auf der WebCMD Zeile folgendes
eingeben: trigger RM_Arbeitszimmer alive
es wird also so getan, als ob der RM ein alive gesendet hat
3. Dadurch sollte das Icon mit der Null in der Ansicht auftauchen
4.Test ob das Script funktioniert, auf der WebCMD Zeile folgendes eingeben:
{CheckSD}
5. Dadurch sollte aus der Null eine Eins geworden sein.
 
Gib mir mal Bescheid, an welcher Stelle es nicht mehr geht
PS: bitte beachten, im Scriptblock steht auch noch SD_ welches bei dir
durch RM_ ausgetauscht werden muss.
 
VG und Erfolg
 
 

On Thursday, November 29, 2012 10:49:23 AM UTC+1, Martin Mauser wrote:

> Morgen Thot,
>
> ja sowohl notify als auch at sind drin und im Log gibt es keine
> Fehlermeldungen - gibt es eine Möglichkeit zu prüfen, ob die auch tun =>
> irgendwas Richtung LOG 3?
>
> Und bei mir steht im Webinterface halt der Text "alive" - wie kommt da das
> Icon hin? Sollte das automatisch tun, oder muss ich da noch was ändern -
> konfigurieren - programmieren?
>
> Danke
>
> Martin
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Ich würde noch den Scripteil auf diesen Stand bringen:
 
sub
CheckSD
{
 my $dev1 = "";
 my $state1 = "";
 my @devlist = devspec2array("SD_.*");
 my $wert = "";
 foreach (@devlist){
  $dev1 = "$_";
  $state1 = Value($dev1);
  if (index($state1, "_days_since_last_alive") >= 0) {
   $wert = sprintf("%02d", substr($state1, 0, 2) + 1);
   if ($wert <= 13) {substr($state1, 0, 2) = $wert;}
   {fhem "setstate $dev1 $state1"};
  }
  Log 3, "$state1 : $dev1";
 }
 return;
}
 
 
 

On Thursday, November 29, 2012 11:49:30 AM UTC+1, thot...@gmx.net wrote:

> Hi Martin Mauser,
> ich würde einen Schritt für Schritt Test vorschlagen.
> Noch kurz eine Hintergrundinfo: das Ganze läuft erst los, wenn fürden
> jeweiligen RM ein alive empfangen wurde. Wenn also deine Einrichtung des
> Ganzen erst nach dem letzten alive durchgeführt wurde, dann passiert
> erstmal nichts.
>  
> Jetzt mal, was ich prüfen würde:
> 1. Notify. Sollte etwa so aussehen (wobei SD_  bei dir durch RM_ ersetzt
> werden muss):
> define SDStatusNotify notify SD_.*:alive {fhem ("setstate %NAME
> 00_days_since_last_alive") }
> 2. Test ob das Notify funktioniert, auf der WebCMD Zeile folgendes
> eingeben: trigger RM_Arbeitszimmer alive
> es wird also so getan, als ob der RM ein alive gesendet hat
> 3. Dadurch sollte das Icon mit der Null in der Ansicht auftauchen
> 4.Test ob das Script funktioniert, auf der WebCMD Zeile folgendes
> eingeben: {CheckSD}
> 5. Dadurch sollte aus der Null eine Eins geworden sein.
>  
> Gib mir mal Bescheid, an welcher Stelle es nicht mehr geht
> PS: bitte beachten, im Scriptblock steht auch noch SD_ welches bei dir
> durch RM_ ausgetauscht werden muss.
>  
> VG und Erfolg
>  
>  
>
> On Thursday, November 29, 2012 10:49:23 AM UTC+1, Martin Mauser wrote:
>
>> Morgen Thot,
>>
>> ja sowohl notify als auch at sind drin und im Log gibt es keine
>> Fehlermeldungen - gibt es eine Möglichkeit zu prüfen, ob die auch tun =>
>> irgendwas Richtung LOG 3?
>>
>> Und bei mir steht im Webinterface halt der Text "alive" - wie kommt da
>> das Icon hin? Sollte das automatisch tun, oder muss ich da noch was ändern
>> - konfigurieren - programmieren?
>>
>> Danke
>>
>> Martin
>>
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Jup - manchmal lohnt einfaches warten....

Gerade reingschaut und alles sieht sehr sehr sexy aus - DANK DIR

martin

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hi Uli
die Icons kannst du gerne verwenden. relativ gut sehen die aber nur aus, wenn man den dark style verwendet.
Wiki ist eine herausforderung. Sowohl technisch als auch zeitlich.
Werde aber mal einen Antrag stellen.
Irgendwann kommt der Zeitpunkt, da muss man dann auch was an die fhem Gemeinde zurückgeben.

VG



Am Donnerstag, 29. November 2012 06:51:44 UTC+1 schrieb UliM:
> Hi Thotti,
> wäre klasse wenn Du nen Wiki zum Rauchmelder anlegen könntest unter http://www.fhemwiki.de/wiki/Kategorie:HomeMatic_Components und dort auch gleich die Timer-Icon-Lösung hinterlegst.
>
> gerne kann ich die time-icons einchecken (falls noch nicht geschehen)
> Wäre das möglich?
>
> Gruß Uli
>
> Am Mittwoch, 28. November 2012 schrieb thot...@gmx.net :
>
> Hallo Martin,
> hast du auch zu diesem Kostrukt zugehörigen notify und at angelegt?
> Sprich das notify reagiert auf die alive Meldung eines RM's und setzt den state auf "00_days_since_last_alive".
>
> Der at (Timer) läuft einmal am Tag und zählt die 00 hoch auf 01. Nächsten Tag auf 01 usw.
>
> Hilft das weiter?
> VG
>
> Am Mittwoch, 28. November 2012 20:49:29 UTC+1 schrieb Martin Mauser:
> Nabend zusammen,
>
> inzwischen sieht das Thema Rauchmelder auch bei mir ganz gut aus. Die Dinger melden alive recht regelmässig. Habe jetzt auch alles was hier steht brav eingefügt allerdings ist meine Webansicht immer noch diese:
>
>
>
> smokeDetector
>
>
>
>
>
> RM_Arbeitszimmer
>
>
>         alive
>
>
>
>
>
> RM_Esszimmer
>
>
> alive
>
>
>
>
>
> RM_Flur_Kuche
>
>
> alive
>
>
>
>
>
> RM_Flur_Oben
>
>
> alive
>
>
>
>
>
> RM_Kammer
>
>
> alive
>
>
>
>
>
> RM_Schlafzimmer
>
>
> alive
>
>
>
>
>
>
> Wie bekomme ich die hübschen Kreise da angezeigt? Die Bilder liegen unter images/default nur anzeigen will er sie mir nicht. Muss ich den Dingern ein spezielles Attribut geben?
>
> define RM_Arbeitszimmer CUL_HM 1B065B
>
> attr RM_Arbeitszimmer actCycle 090:00
> attr RM_Arbeitszimmer actStatus unknown
> attr RM_Arbeitszimmer devInfo 000100
> attr RM_Arbeitszimmer firmware 1.0
> attr RM_Arbeitszimmer hmClass receiver
> attr RM_Arbeitszimmer model HM-SEC-SD
>
> attr RM_Arbeitszimmer protLastRcv 2012-11-15 17:58:47
> attr RM_Arbeitszimmer room Rauchmelder
> attr RM_Arbeitszimmer serialNr JEQ0089994
> attr RM_Arbeitszimmer subType smokeDetector
> define FileLog_RM_Arbeitszimmer FileLog ./log/RM_Arbeitszimmer-%Y.log RM_Arbeitszimmer
>
> attr FileLog_RM_Arbeitszimmer logtype text
> attr FileLog_RM_Arbeitszimmer room Rauchmelder
>
> Dank Euch
>
> Martin
>
>
>
>
>
>
>
> --
>
> To unsubscribe from this group, send email to
>
> fhem-users+unsubscribe@googlegroups.com

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hi!
Ich habe nach der Einrichtung deiner Verbesserung bereits vor Tagen nunmehr
Heute mit Schrecken/Freude feststellen müssen, das es mit der schöneren
Darstellung funktioniert. Danke für die Icons und das Modul. Vielleicht
findet sich ja noch jemand der die Icons für die Standardansicht
verbessert, oder ich muss mich selbst mal daran versuchen. Zur Zeit sitze
ich aber noch an der Übersetzung der commandref.  


>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hi,
tut mir leid ;-)
Ich habe halt "nur" den dark style im Auge gehabt. Und dafür fand ich das
ausreichend.
Mir ist erst viel später aufgefallen, dass im normal style so gut wie
nichts zu erkennen ist.
VG

Am Freitag, 30. November 2012 09:08:57 UTC+1 schrieb ilmtuelp0815:
>
> Hi!
> Ich habe nach der Einrichtung deiner Verbesserung bereits vor Tagen
> nunmehr Heute mit Schrecken/Freude feststellen müssen, das es mit der
> schöneren Darstellung funktioniert. Danke für die Icons und das Modul.
> Vielleicht findet sich ja noch jemand der die Icons für die Standardansicht
> verbessert, oder ich muss mich selbst mal daran versuchen. Zur Zeit sitze
> ich aber noch an der Übersetzung der commandref.  
>
>
>>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com