Ich schreibe gerade einen Adapter für ioBroker und auf dem Konferenz in Karlsruhe wurde mir gesagt, dass man mit Telnet aus FHEM die ganze information raus lesen kann. Ich habe FHEM installiert, aber mit "list" bin ich nicht schlau geworden.
Mich interessieren 3 Sachen:
- wie kriege ich die liste von allen steuerbaren und lesbaren Objekten aus FHEM?
- wie kriege ich die aktuelle Werte von States aus FHEM?
- wie bekomme ich Änderungen von States aus FHEM, so dass ich nicht pollen muss?
fhem> list
Type list <name> for detailed info.
Global:
global (<no definition>)
FHEMWEB:
FHEMWEB:192.168.1.69:50645 (Connected)
WEB (Initialized)
WEBphone (Initialized)
WEBtablet (Initialized)
eventTypes:
eventTypes (active)
notify:
initialUsbCheck (2016-02-23 18:42:42)
FileLog:
Logfile (active)
autocreate:
autocreate (active)
telnet:
telnet:192.168.1.69:50650 (Connected)
telnetPort (Initialized)
fhem> list global
Internals:
DEF <no definition>
NAME global
NR 1
STATE <no definition>
TYPE Global
currentlogfile ./log/fhem-2016-02.log
logfile ./log/fhem-%Y-%m.log
Attributes:
autoload_undefined_devices 1
configfile fhem.cfg
logfile ./log/fhem-%Y-%m.log
modpath .
motd SecurityCheck:
WEB,WEBphone,WEBtablet has no basicAuth attribute.
telnetPort has no password/globalpassword attribute.
Restart FHEM for a new check if the problem is fixed,
or set the global attribute motd to none to supress this message.
statefile ./log/fhem.save
updateInBackground 1
userattr cmdIcon devStateIcon devStateStyle icon sortby webCmd widgetOverride
verbose 3
version $Id: fhem.pl 9893 2015-11-15 08:43:05Z rudolfkoenig $
fhem> list autocreate
Internals:
NAME autocreate
NOTIFYDEV global
NR 14
NTFY_ORDER 50-autocreate
STATE active
TYPE autocreate
Attributes:
filelog ./log/%NAME-%Y.log
fhem>
Was sind hier die States/Variablen? (nicht die Konfiguration)
Wenn man die commandref aufmerksam liest findet man einige Befehle, z.b. jsonlist2 oder inform on
Sent from my iPad using Tapatalk
achja, die akteullen stati gast du ja schon mit list, das in der Klammer
Sent from my iPad using Tapatalk
Um "jsonlist2" und "getstate" zu haben muss man vielleicht die Module installieren?
Sind "initialUsbCheck", "eventTypes ", ... States?
Meines Wissens sind jsonlist2 und getstate keine Module sondern FHEM Befehle, also nichts zu installieren, aber achtung, auf jeden Fall case sensitiv. http://fhem.de/commandref.html#JsonList2 (http://fhem.de/commandref.html#JsonList2)
Mit den Stati meinte ich die Inhalte in den Klammern, z.b. (Initialized), daher nein, das sind keine Stati sondern devices bzw. notify, aber das ist wirklich gut dokumentiert.
Sent from my iPad using Tapatalk
Zitat von: Bluefox am 24 Februar 2016, 21:53:00
- wie kriege ich die liste von allen steuerbaren und lesbaren Objekten aus FHEM?
- wie kriege ich die aktuelle Werte von States aus FHEM?
- wie bekomme ich Änderungen von States aus FHEM, so dass ich nicht pollen muss?
Da ich wohl erjenige war der dir am Samstag den list Tipp gab :
die ersten beiden Fragen -> so wie du es gemacht hast :)
Allerdings ist deine aktuelle fhem Inst. doch recht nackt d.h. du hast noch keine Geräte drin die dir die gewünschten Daten liefern könnten. Bsp von mir mit einer Wetterstation erigbt bei list :
Zitat
LaCrosse:
La1A (T: 11.2 H: 76)
Das Gerät nennt sich La1A und zeigt den state
ein list La1A ergibt dann :
Zitat
Internals:
DEF 1A
IODev Jee
NAME La1A
NR 59
STATE T: 11.2 H: 76
TYPE LaCrosse
addr 1A
corr1 0
corr2 0
Readings:
2016-02-22 19:52:59 battery ok
2016-02-22 19:52:59 error 0
2016-02-22 19:52:59 humidity 76
2016-02-22 19:52:59 rain 72.5
2016-02-22 19:49:19 state T: 11.2 H: 76
2016-02-22 19:52:59 temperature 11.2
2016-02-22 19:52:59 windDirectionDegree 270
2016-02-22 19:52:59 windDirectionText W
2016-02-22 19:52:46 windGust 0
2016-02-22 19:52:59 windSpeed 0.4
Attributes:
IODev Jee
alias Wetterstation
event-on-change-reading .*
room Jee
sollten also alle Infos sein die du benötigst
Zitat- wie bekomme ich Änderungen von States aus FHEM, so dass ich nicht pollen muss?
die Änderungen landen entweder in Log Files oder in einer DB oder im Nirwana, je nach dem wie der User es eben definiert hat.
Um extern alles mitzubekommen was ich intern ändert wirst du wohl ein extra Modul benötigen.
für das mitlesen von Statusänderungen benötigst du keine zusätzlichen Tools, wie ich schon ganz oben geschrieben habe, in der telnet session den Befehl "inform on" eingeben und du siehst alle events. Kann man auch filtern, http://fhem.de/commandref.html#inform (http://fhem.de/commandref.html#inform).
Vielen Dank!. JsonList2 ist schon was. :)
Eigentlich ich brauche nur 2 Befehle "JsonList2" und dann "inform on"
inform on gibt es in zwei Versionen:
Mit Zeit und und ohne..
Kann mir jemand Ausschnitt posten mit möglich viel Updates (inform on), die keine Geheim-Daten beinhalten. Ich werde dann Tests damit schreiben.
Zitat von: Bluefox am 25 Februar 2016, 21:26:34
Vielen Dank!. JsonList2 ist schon was. :)
Eigentlich ich brauche nur 2 Befehle "JsonList2" und dann "inform on"
inform on gibt es in zwei Versionen:
Mit Zeit und und ohne..
Kann mir jemand Ausschnitt posten mit möglich viel Updates (inform on), die keine Geheim-Daten beinhalten. Ich werde dann Tests damit schreiben.
Viel Spaß damit
Zitat von: schka17 am 26 Februar 2016, 16:14:45
Viel Spaß damit
Habe wieder die Zeit gefunden FHEM anzuschauen.
Es fehlt mir zu "inform on" noch passende "jsonlist2" Ausgabe.
Kann jemand jsonlist2 und dann "inform on" ausführen und dann eine weile aufzeichnen was da kommt?
Und natürlich hier posten.