nein, gibt es nicht.
Ankündigung
Einklappen
Keine Ankündigung bisher.
HSMonitor - Aktualisierung
Einklappen
X
-
In gewissen maße geht das schon.
Lies dir die ajax.js durch. Da ist alles drin was du dafür brauchst.
Der Zugriff ist dadurch aber nur möglich auf das was in der Visu auch angelegt ist. Siehe Logikbaustein 12251_Proxy aus dem hsfusion Bereich.
Der macht nämlich genau das.
Login in die HS-Visu mittels Python. Ist aber genauso schon in der ajax.js und sollte eigentlich auch in jede andere Programmiersprache implemtiert werden können.
Code:##### AUTH ##### self.nGlobTAN2=0 self.sGlobKey1="" self.sGlobKey2="" for i in range(0,64-len(self.user.UserPW)): self.user.UserPW+=chr(0) for i in range(64): self.sGlobKey1+=chr(ord(self.user.UserPW[i])^0x5c) self.sGlobKey2+=chr(ord(self.user.UserPW[i])^0x36); def doLogin(self): self.nGlobTAN2=0 if self.failedLogins<3: self.failedLogins+=1 ## Init und TAN holen uri="/hsgui?cmd=init&user=%s&cid=%s&ref=%s&temp=%d" % (self.user.UserName,self.design,self.ref,self.timeStamp()) result = __import__('re').findall(r"<HND>(\d+)</HND><TAN>(\d+)</TAN><POS>(\d+)</POS>", self.receive(uri)) if not result: self.LoggedIn=False return [(self.handle,self.sGlobTAN1,self.nGlobKeyPos )] = result self.nGlobKeyPos=int(self.nGlobKeyPos)*1+1 ## Login uri="/hsgui?%s" % (self.encodeurl(0,"cmd=login"),) data=self.receive(uri) if data: #print repr(__import__('re').findall(r'<USR.*\svis="(\d+)".*', data)) try: startPage = int(__import__('re').findall(r'<USR.*\svis="(\d+)".*', data)[0]) if startPage>0: self.LoggedIn=True self.failedLogins=0 self.getPage(str(startPage),self.user.UserName.upper()) return except IndexError: pass self.LoggedIn=False else: raise "Login Error" def encodeurl(self,isCam,url): if isCam==0: self.nGlobTAN2+=1; urlpos=url.find("?")+1 pathurl='' if urlpos>0: pathurl=url[:urlpos] url=url[urlpos:] url+="&hnd="+self.handle; if url.find("cmd=login")==0: key1=__import__('md5').new(self.sGlobKey2+self.sGlobTAN1+str(self.nGlobTAN2)+url).hexdigest() key1=key1.upper() key2=__import__('md5').new(self.sGlobKey1+key1).hexdigest() key2=key2.upper() url+="&code="+key2[self.nGlobKeyPos-1:self.nGlobKeyPos+9] else: if self.LoggedIn: "CNT:"+str(self.nGlobTAN2) url+="&code=XX"+self.sGlobTAN1+str(self.nGlobTAN2); else: self.doLogin() return pathurl+url def timeStamp(self): self.TimeStamp=long(__import__('time').time()*1000) return self.TimeStamp
EDIT: Sorry Makkidas ist natürlich mal wieder völlig OT
Kommentar
-
sorry wenn es wirklich komplett am thema vorbeiging. aber um das thema abschließend zu beantworten:
ich hab mir den experten nochmal genauer angesehen. die archive/listen kann ich ja per z.b. http-abruf abrufen. und für den zeitschaltuhrersatz kann man ja die externen schaltlisten nutzen. ich denke alles andere mit anmeldung uns sonstigen über den homeserver wäre wirklich durchs auge in die brust.
also ist eine externe visu mit nachfolgenden elementen umsetzbar:
- ko-gateway
- archive per z.b. http-abruf
- externe schaltlisten
Kommentar
-
Mit dem Thema HS-Monitor fürs KO-GW hats natürlich herzlich wenig zu tun, aber
Zitat von NilsS Beitrag anzeigenEDIT: Sorry Makkidas ist natürlich mal wieder völlig OT
Jedenfalls, für eine externe Visu (dafür hab ich das ganze u.a. eigentlich geschrieben, auch wenns nichts mitm Thread-Thema zu tun hat):
Die HS-Archive sind ja eh unbrauchbar, zumindest wenn man externe Alternativen hat.
Für eine externe Visu, die auch iKOs des HS darstellen/steuern soll ist das KO-GW ja genau das richtige; das QC oder HTTP(AV/xxAPI) dafür zu Missbrauchen lohnt kaum: Realtime-Statusupdates <1sek und clientvertägliches Verhalten bekommt man AFAIK nur mit dem KO-GW..
Also am besten wäre einer schreibt den parser in effizient(der qHSMon ist zwar 10x schneller als der orginal HS-Monitor aber auch ganz sicher nochmal Faktor 10 vom optimum entfernt - mir stellt sich aktuell nur nicht die Notwendigkeit)
MakkiEIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
-> Bitte KEINE PNs!
Kommentar
-
Ich habe die Windows-exe jetzt mal in die Forum-Downloads, damit die leichte Schnitzeljagd im 5seitigen Thread entfällt.. Scheint ja hinreichend stabil..
Source immernoch hier zu haben, ich checke das aber jetzt auch mal gleich ins interne SVN ein.
Edit: Source ist jetzt erstmal im WG-trac/SVN (nachdem ich am Mi. grosse Teile anderer Entwicklungsarbeit der letzten Monate spontan dank Seagehtodersiegehtnicht verloren habe- besser ist das..)
MakkiEIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
-> Bitte KEINE PNs!
Kommentar
-
Muss noch freigegeben werden..
Edit: die Mods waren schon fleissig, ist jetzt freigegeben
Und damit der Post nicht umsonst ist hänge ich noch die frische gebaute Ubuntu 10.10-Binary an(sollte von Debian 5.0 bis Windows 10.04 auch gehen)
MakkiAngehängte DateienEIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
-> Bitte KEINE PNs!
Kommentar
-
Nebenbei: (weiterführend vom anderen Thread) nochmal, wenn es jemand schafft, sich QT4 und nen gcc(g++) noch aufm Mac zu installieren und ne binary für OSX zu machen, kann man bestimmt Freunde gewinnenWürde bestimmt gerne gesehen..
Ausserdem wäre es ein schöner Showcase, warum QT - wo für jedes OS eine nativ gutaussehende Anwendung mal eben so "rausfällt" - einfach das "richtigere" ist.. Was mich wiederum freuen würde..
Falls es in diesem Fall probleme gibt, würde ich *ausnahmsweise* (!?!) sogar für OSX was fixen(glaube ich aber nicht, ich habe - auch wenn ich keinen blassen Dunst von C++ habe - peinlichst genau darauf geachtet absolut keine plattformspezifische Sonderlocke zu verwenden..)
MakkiEIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
-> Bitte KEINE PNs!
Kommentar
-
Unten in der Statuszeile sagt es eigentlich ggfs. wo es hängt.
- Haken gesetzt? siehe Anhang
- Bilder+Daten+Ansagen übertragen
- richtiger Port/IP
- ggfs. mal den Schlüssel (Secret) rausnehmen, hab ich seit ewig nicht mehr mit getestet.
MakkiAngehängte DateienEIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
-> Bitte KEINE PNs!
Kommentar
-
Hat den qHSMon schonmal jemand mit aktueller FW (2.8/2.10) ausprobiert?
Nur so gefragt, in den Releasenotes steht was von KO-GW, ich bleibe mangels jeglicher notwendiger Features mal weiter auf 2.5
Makki
P.S.: Nur nochmal zur Erinnerung: Aktuelle Windows-EXE hier in den Downloads, Link zum Source dort im Text, läuft auch unter Ubuntu problemlos (Ubuntu-User schaffen das alleine; qmake; make) und theoretisch OSX - wenn sich jemand findet ders dort kompilieren kannEIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
-> Bitte KEINE PNs!
Kommentar
-
Dann ist ja gut, Danke, also nicht alles falsch gemacht
Mich wundert nur das geringe Feedback immer wieder, beim original muss man ohne starke Drogen ja Lähmungserscheinungen bekommen, wenn man mehr als 10 GA's hat.. Aber vielleicht funktionierts einfach auch nur zu gut
Wer kompiliert das Ding jetzt mal endlich unter OSX, um das eigentliche Killerfeature davon (Qt) darzustellen?
MakkiEIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
-> Bitte KEINE PNs!
Kommentar
Kommentar