Themabewertung:
  • 1 Bewertung(en) - 3 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
API
#1
hallo zusammen, gibt es eine Liste mit API Beispielen für 
den gekko ?


Gruß Roland
#2
Schau mal hier im Forum die Posts durch, da gibt es zwei PDF-Dokumente. Einmal die Nutzung der API und einmal im Zusammenhang mit IFTTT.
Ich finde das gerade selbst nicht auf die Schnelle.

Ansonsten melde dich einfach nochmal, wir können die sicherlich nochmal bereitstellen.
#3
Hallo, hätte ich auch schon gesucht nur leider nichts gefunden. 
Währe toll das nochmals bereit zu stellen, zumal ich davon ausgehe 
Das auch noch mehrere daran Interesse hätten wo es jetzt ja die 
Offizielle Firmware gibt.


Gruß Roland
#4
Hier die 2 PDF DATEIEN

Viel Spaß damit

LG AndreasH


Angehängte Dateien
.pdf   QueryAPI_Tutorial_DE.pdf (Größe: 252,89 KB / Downloads: 262)
.pdf   IFTTT_Tutorial_Maker_Channel_DE.pdf (Größe: 535,17 KB / Downloads: 131)
#5
Vielen Dank ich werde versuchen mich da mal reinzudenken.


Gruß Roland
#6
Frag einfach wenn etwas nicht klar ist. Eigentlich ist die API sehr logisch aufgebaut.
Viele Grüße

Francisco Santos

Alle sagten "das geht nicht"... Dann kam einer, der dass nicht wusste und hat es einfach gemacht...
#7
Hallo zusammen,

nun habe ich mich auch mal mit der API auseinander gesetzt um Sprachsteuerung zu nutzen.
Ich habe das ganze mit SIRI verknüpft, da ich das ganze von der Apple Watch steuern möchte
egal wo ich gerade bin. Lampen ist kein Problem, Jalousie geht nur da die bei mir über Enocean angesteuert werden muss ich mich noch nach
anderen Aktoren umsehen. Im Moment benutze ich die von Eltako wobei mir da die Ansteuerung nicht so zusagt. (gerne Vorschläge welche man gut benutzen kann) 
Wo kann man denn erfahren welche API Befehle möglich sind Lights für Licht, blinds für Jalousie weitere kenn ich noch nicht.




Gruß Roland
#8
Hallo,

was hast du denn an den EnOcean Aktoren für die Jalousien auszusetzen? Ich nutze die ebenfalls, einmal die FSB61NP-230V und einmal die TippFunk Variante TF61J-230V. Beide funktionieren einwandfrei. Mach am besten mal ein neuen Thread auf wenn du Probleme hast, dann können wir da weiter machen.

Wenn du folgendes aufrufst, kannst du alle "Befehle" sehen:
http://<ip des gekko>/api/v1/var/?username=benutzer&password=pass

Lights und Blinds hast du ja schon selbst herausgefunden, die anderen arbeiten alle nach dem selben Schema.
#9
Hallo,

die API kann man ja super einfach nutzen, leider bekommt man in der Liste ( http://<<IP>>/api/v1/var/?username=.... ) nicht den aktuellen Status bei "sumstate" angezeigt:

Code:
"lights":    {
        "item0":    {
            "name":    "Arbeitszimmer",
            "sumstate":    {
                "value":    "0;77;45476;0 (On|Off;DimmValue;RGBColor;Locked)",
                "type":    "STRING",
                "permission":    "READ",
                "index":    100000
            },
            "scmd":    {
                "value":    "1|0|D100|T|C44782 (On|Off|Dim%|Toggle|RGB24Bit)",
                "type":    "STRING",
                "permission":    "WRITE",
                "index":    100001
            }
        },

Wenn man direkt fragt ( /api/v1/var/lights/item1/status?username=... ):
Code:
{
    "sumstate":    {
        "value":    "1;;;0;"
    }
}

Fragt man nach allen items in lights ( /api/v1/var/lights/status?username=... ):
Code:
{
    "item0":    {
        "sumstate":    {
            "value":    ""
        }
    },
    "item1":    {
        "sumstate":    {
            "value":    ""
        }
    },
    "item2":    {
        "sumstate":    {
            "value":    ""
        }
    },
    "item6":    {
        "sumstate":    {
            "value":    ""
        }
    },
    "item7":    {
        "sumstate":    {
            "value":    ""
        }
    },
    "item8":    {
        "sumstate":    {
            "value":    ""
        }
    },
    "item9":    {
        "sumstate":    {
            "value":    ""
        }
    },
    "item10":    {
        "sumstate":    {
            "value":    ""
        }
    },
    "item11":    {
        "sumstate":    {
            "value":    ""
        }
    },
    "item12":    {
        "sumstate":    {
            "value":    ""
        }
    },
    "item13":    {
        "sumstate":    {
            "value":    ""
        }
    }
}

Also muss man jeden einzelnen Wert abfragen um seinen Zustand zu erfahren.

Das wäre auf jeden Fall eine Verbesserung immer den aktuellen Zustand zu melden. Kann soviel Rechenleistung nicht sein.

Gruß
Alex
#10
Hallo Alex, nur für zur Befriedigung meiner Neugierde. Was ist der Anwendungsfall bei Dir in dem Du alle Stati benötigst?
Viele Grüße

Francisco Santos

Alle sagten "das geht nicht"... Dann kam einer, der dass nicht wusste und hat es einfach gemacht...
#11
Ich will alles im Gekko monitoren um die Zustände mit anderen Größen, wie Tempertur zusammen zu fügen.
Alles läuft im zentralen Monitoring zusammen und wird dort mit Graphen schön angezeigt. Alles auf Basis von CheckMK ( http://mathias-kettner.de/check_mk.html )

(16.12.2017, 12:14)santos schrieb: Hallo Alex, nur für zur Befriedigung meiner Neugierde. Was ist der Anwendungsfall bei Dir in dem Du alle Stati benötigst?
#12
Hi,
gibt es so was wie eine vollständige Referenz zur API ?
Wenn ich http://<mygekko>/api/v1/var/ aufrufe sehe ich nur die Punkte network, alarm, meteo und profile.
Ich habe aktuell keine Lichter / Rollläden üebr MyGekko laufen, ich würde aber zB meine Lüftungsanlage oder Heizung hier erwarten. Oder sind diese Komponenten nicht über die API erreichbar ?
#13
Hallo Falko,

Lüftung ist drin und die Heizkreise auch. Natürlich musst Du diese auch in den System benannt und aktiviert haben, sonst wirst Du diese nicht in der API sehen.
Lüftung heißen vents, also /api/v1/var/vents
{
"item0": {
"name": "Lüftung",
"sumstate": {
"value": "3;1;0;0;4;55.7;64.0;54.7;22.1;22.8;7.6;9.3;33.3;33.3;0; (Level|Type|Mode|Bypasssstate|MaxLevel|Humidity|CO2|VOC|TempSupplyAir|TempExhaustAir|TempOutsideAir|TempOutgoingAir|LevelIn%|LevelOut%|Locked)",
"type": "STRING",
"permission": "READ",
"index": 300000
},
"scmd": {
"value": "-1|1|2|3|4|T (Off|Level1|Level2|Level3|Level4|Toggle)",
"type": "STRING",
"permission": "WRITE",
"index": 300001
}
}
}

Heizkrreise heißen roomtemps, also also /api/v1/var/vents/roomtemps

{
"item0": {
"name": "Flur UG",
"sumstate": {
"value": "0|1|2 (Off|On Impulse|On Permanent)",
"type": "STRING",
"permission": "READ",
"index": 500000
},
"scmd": {
"value": "M1|M8|M16|M64|M256|K2.4 (Mode_Off|Mode_Auto|Mode_Reduced|Mode_Standby|Mode_Manual|Temp. adjustment[°C])",
"type": "STRING",
"permission": "WRITE",
"index": 500001
}
},
"item1": {
"name": "Gästezimmer UG",
"sumstate": {
"value": "0|1|2 (Off|On Impulse|On Permanent)",
"type": "STRING",
"permission": "READ",
"index": 500100
},
"scmd": {
"value": "M1|M8|M16|M64|M256|K2.4 (Mode_Off|Mode_Auto|Mode_Reduced|Mode_Standby|Mode_Manual|Temp. adjustment[°C])",
"type": "STRING",
"permission": "WRITE",
"index": 500101
}
},

usw.

Nur System die Du auch benutzt tauchen in der API-Auflistung auf, weil diese in den Buttons der Oberfläche benannt werden müssen.
Du kannst auch wenn Du nichts betreibst einfach mal in jedem System einen Button benennen auch wenn nichts dahinter steht.
Dann hast Du die vollständige API Auflistung :-)

Bei mir sind folgende System in der API Auflistung:

globals
alarm
meteo
profile
lights
blinds
vents
loads
roomtemps
energycosts
energymanager
trends
alarmsystem
accessdoors
multiroom
cams
smsemail
actions
alarm_logics

Den Heizkessel und das Elektrofahrzeug habe ich noch nicht eingebunden, da kommst sicher auch was in der API, das sehe ich aber nicht.
Viele Grüße

Francisco Santos

Alle sagten "das geht nicht"... Dann kam einer, der dass nicht wusste und hat es einfach gemacht...
#14
Hi, merkwürdig. Ich habe die Systeme aktiviert und auch benannt, sehe allerdings nichts. Ich greife mit dem User zu, den ich in Mygekko untrt "lokaler Webbenutzer" angelegt habe. Muss ich dem irgendwo noch bestimmte Rechte geben ?

.. wie heissts so schön: Reboot tut gut. Ich habe das Mygekko System eben neu gestartet und jetzt sind eine Menge mehr Einträge sichtbar. Das war der erste manuelle Neustart nach Installation des 4400 Updates
#15
Hast Du denn jetzt alle System in der API Die Du auch aktiv benannt hast?
Viele Grüße

Francisco Santos

Alle sagten "das geht nicht"... Dann kam einer, der dass nicht wusste und hat es einfach gemacht...
#16
ja jetzt ist alles da. Habe testweise auch ein paar neue Einträge konfiguriert, die tauchen auch sofort in der API auf.
Der Gekko wollte einfach mal gebootet werden ...
#17
Hey.  

ich bin den pdf Dateien von oben gefolgt.

https://IP_IHRES_GEKKOS/api/v1/ im Browser eingegeben. Wenn ich über die URL weder Username noch Password mitgebe, dann müsste doch zumindest ein Loginfenster kommen ?

Ich erhalte im Browser „Forbidden“.

Laut PDF: 403: Forbidden = Benutzername/Passwort oder Key falsch

Dann habe ich noch die weiteren Varianten ausprobiert. Mit lokalen Web User - da erhalte ich auch ein Forbidden.

In einem anderen Thread steht man kann die Query API für xx€ buchen - sprich es kann auch lokal gar nicht funktionieren ohne dass ich es gebucht/gekauft habe ?

Gruß
Daniel
#18
Hallo Daniel,

doch lokal geht alles ohne kaufen.

Du musst zuerst an der API legitimieren, danach ist die Session offen und Du kannst arbeiten.

Gib erst in einem Browser folgendes ein:
http://IP-Nummer vom Gekko/api/v1/login

Dann bekommst Du ein Fenster in dem Du User und PW eingeben musst. Anschliessend vergibt der Gekko eine Session ID

Jetzt kannst Du mit der API sprechen wie z.B.
http://IP-Nummer vom Gekko/api/v1/var

Gib Bescheid wenn Du es hinbekommen hast
Viele Grüße

Francisco Santos

Alle sagten "das geht nicht"... Dann kam einer, der dass nicht wusste und hat es einfach gemacht...
#19
Perfekt nun funktioniert es. Danke Dir Smile

Weißt du vielleicht auch wie lange die Session bestehen bleibt?

Ich gehe mal von aus dass die Session nicht ewig dauert

Grus
Daniel

Edit: ziehe die Frage zurück. Da man User + Passwort in der URL mit übergeben kann ist die Dauer der Session eigtl. egal Smile
#20
Hallo Zusammen,

ich bin aktuell auch an der lokalen API dran. Komme auch auf den API Baum, allerdings werden mir weder bei blinds, noch bei den roomtemps irgendwelche Values angezeigt. Auch nach einem Neustart vom Gekko und das wiederholte neu laden des API-Baums bleibt die Zeile mit den Values leer.

Woran könnte dieses Verhalten liegen?

MfG Benni


Gehe zu:


Benutzer, die gerade dieses Thema anschauen:
7 Gast/Gäste