PRESENCE

Begonnen von kostra, 02 Februar 2013, 22:18:00

Vorheriges Thema - Nächstes Thema

kostra

Hallo,
erst einmal vielen Dank für das neue Modul.
Nachdem ich ein Update gemacht und den den WIKI-Artikel gelesen habe, habe ich versucht, mein Handy (Android) pingen zu lassen:

define HANDY PRESENCE lan-ping 192.168.71.22 (IP aus der FB7390 ausgelesen)

Es kommt folgende Fehlermeldung
wrong syntax: define <name> PRESENCE lan-bluetooth <bluetooth-device-address> <ip-address>[:port] [ <timeout> ]

Nein, ich möchte lan-ping, nicht lan-bluetooth :-(

Grüße
kostra
FHEM version Fhem 5.8
auf einer RasPi
via CUL868 V1.55

justme1968

gib mal den timeout mit an. ich hatte beim lokalen bluetooth das gleiche problem.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Markus Bloch

Hallo zusammen,

ist gefixed und ab morgen verfügbar.

Viele Grüße

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

aktives Mitglied des FHEM e.V. (Technik)

kostra

Ja, Fehlermeldung ist weg.
Allerdings läuft das jetzt seit ca. 2 Stunden (ohne Angabe von timeout), ohne das sich state ändert =>

STATE ???

Mache ich etwas falsch, läuft das grundsätzlich auf einer FritzBox nicht, oder hat das Modul noch einen Hänger?

Grüße
kostra
FHEM version Fhem 5.8
auf einer RasPi
via CUL868 V1.55

Markus Bloch

Hi Kostra,

in der Tat funktionierte das so nicht. Das Ping-Modul auf der FritzBox arbeitet defaultmäßig ein wenig anders als das auf meinem FHEM Server.

Habe ich soeben im SVN gefixt. Kannst du dir entweder direkt aus dem SVN herunterladen, oder bis morgen warten.

Generell gibt es aber auch die Möglichkeit auf einer FritzBox den Mode "fritzbox" zu benutzen. Schau mal in die Commandref oder in das Wiki rein. Ist ganz neu seit heute verfügbar.

Viele Grüße

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

aktives Mitglied des FHEM e.V. (Technik)

det.

Hallo Markus,

vielen Dank für das nützliche Modul. Habe  damit die Konstruktion mit Dummy etc. Entsprechend dem WIKI Artikel http://www.fhemwiki.de/wiki/FritzBox:_WhoIsAtHome ersetzt. Funktioniert prima mit zwei iPhone 4 und 4S.
LG
det.

AnonymousHolger

Hallo Markus,

die Idee mit dem allgemein verwendbaren PRESENCE Modul gefällt mir gut.

Jetzt will ich meine alte Routine ersetzen, habe aber Probleme.

Mein script sieht folgendermassen aus (sowohl lan-ping, als auch fritzbox (läuft auf FB7390))

#define HolgerIP PRESENCE lan-ping 192.168.0.32 60
#define MariaIP PRESENCE lan-ping 192.168.0.43 60
define HolgerIP PRESENCE fritzbox Holger-IP4 60
define MariaIP PRESENCE fritzbox Maria-IP4S 60

define testwlan at +*00:05:00 {\
    if (value(HolgerIP) eq "present") {\
        fhem "set HomeStatus ZuHause";;\
        fhem "set Holger_zu_Hause on";;\
    }\
    else {\
      fhem "set Holger_zu_Hause off";;\
      fhem "set HomeStatus NichtzuHause";;\
      if (value(MariaIP) eq "present") {\
          fhem "set HomeStatus ZuHause";;\
      }\
    }\
    if (value(MariaIP) eq "present") {\
        fhem "set HomeStatus ZuHause";;\
        fhem "set Maria_zu_Hause on";;\
    }\
    else {\
      fhem "set Maria_zu_Hause off";;\
      fhem "set HomeStatus NichtzuHause";;\
      if (value(HolgerIP) eq "present") {\
          fhem "set HomeStatus ZuHause";;\
      }\
    }\
}
attr testwlan room 5_SYSTEM


Ich bekomme folgende Fehlermeldung (auszug aus dem LOG)
2013.02.03 15:02:57 1: CallBlockingFn: No telnet port found for sending the data back.
2013.02.03 15:02:57 1: CallBlockingFn: No telnet port found for sending the data back.
Bareword "HolgerIP" not allowed while "strict subs" in use at (eval 69) line 1.
Bareword "MariaIP" not allowed while "strict subs" in use at (eval 69) line 1.
Bareword "HolgerIP" not allowed while "strict subs" in use at (eval 69) line 1.
Bareword "MariaIP" not allowed while "strict subs" in use at (eval 69) line 1.


Markus Bloch

Hi,

das liegt daran, das du keinen Telnet-Port für FHEM definiert hast. Die Shell-Befehle werden separat von FHEM entkoppelt. Sobald die Ergebnisse vorliegen, werden diese per Telnet quasi wieder zurück an den FHEM Mutter-Prozess gegeben.

Bitte füge deiner Konfiguration folgende Zeile hinzu:


define TELNET telnet 7072 global

# Um das Telnet-Device nirgendwo anzeigen zu lassen, optional:
attr TELNET room hidden


Viele Grüße

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

aktives Mitglied des FHEM e.V. (Technik)

AnonymousHolger

Danke für die Info.

Telnet war drin, nur in der config an der falschen Stelle.

Hab nun auch meine Routine korrigiert. Funktioniert nun einwandfrei. Der eigentliche Fehler war wohl durch meine falsche Abfrage des Parameters. Korrekt funktioniert: if ("$value{HolgerIP}" eq "present")

Gibt es eine "onChange" event, der meine Homestatus routine nur dann triggern kann, wenn sich einer der "Presence" Stati ändert ?

Dann brauche ich nicht alle "X Minuten" prüfen.

Markus Bloch

Hi,

ja das gibts. Über das Attribut "event-on-change-reading" kann man steuern, das nur bei einer Änderung der darin eingetragenen Readings ein Event generiert werden soll.

Also:

define HolgerIP PRESENCE fritzbox Holger-IP4 60
attr HolgerIP event-on-change-reading state

define MariaIP PRESENCE fritzbox Maria-IP4S 60
attr MariaIP event-on-change-reading state



Nicht wunder, das man in der GUI nur 0 und 1 auswählen kann. Keine Ahnung warum das so ist. In der Commandref ist das aber entpsrechend dokumentiert (Folge dem Link readingFnAttributes aus der Attributliste von PRESENCE)

Viele Grüße

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

aktives Mitglied des FHEM e.V. (Technik)

Steffen

Hallo!

Habe das modul auch mal versucht, auf mein qnap server mit fhem aber es klappt nicht.
Liegt es vielleicht daran das fhem bei mir nicht auf der Fritzbox läuft?

Mfg Steffen

Markus Bloch

Hallo Steffen,

was genau funktioniert denn bei dir nicht und was siehst du (Logeinträge, Fehlermeldungen, etc.)?

Viele Grüße

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

aktives Mitglied des FHEM e.V. (Technik)

Steffen

Hallo!

Also bei state habe "???", habe auch mit anderen Lan-Geräten versucht aber gleiches ergebniss!
Mein fhem läuft unter debian auf einem qnap mit HMLan adapter und als dsl zugang nutze ich eine Fritzbox(kabeldeutschland)!
Als fehler meldung habe ich das hier:
CallBlockingFn: No telnet port found for sending the data back
kann aber nicht sagen ob es damit zusamen hängt???

Danke
Mfg Steffen

Reinerlein

Hi Steffen,

ich kann zwar nichts zum Modul sagen, aber das klingt so, als ob du das Modul vor der Definition des TelnetPorts definierst.
Oder ist dieser Port vielleicht gar nicht in deiner Config?

Grüße Reinerlein

Markus Bloch

Hi Steffen,

wie Reinerlein richtig vermutet hat, fehlt dir hier der Telnet Port.


define TELNET telnet 7072 global

# Um das Telnet-Device nirgendwo anzeigen zu lassen, optional:
attr TELNET room hidden



Dieser muss vor der Definition von PRESENCE stehen. Hier werde ich aber nochmal nachbessern um in einem solchen Fall das Device nicht im Regen stehen zu lassen.

Viele Grüße

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

aktives Mitglied des FHEM e.V. (Technik)