Benutzer-Werkzeuge

Webseiten-Werkzeuge


development:api:start

Dies ist eine alte Version des Dokuments!


API

Zur Zeit entwickeln wir zusammen mit den Machern von http://www.flukso.net ein gemeinsames API.

Das API besteht aus 2 Teilen:

reference

Anforderungen

Das API sollte:

  • die komplette Kommunikation mit dem Backend übernehmen (Logging, Auswertung & Verwaltung)
  • je nach Möglichkeit Messwerte puffern und diese immer in Paketen an den Backend-Server schicken, um die Netzwerkverbindung zu entlasten und dadurch Strom zu sparen
  • Verbindungsprobleme zum Backend-Server abfangen können
  • nicht nur Pulse übertragen können, sondern auch Messwerte anderer Sensoren (Temperatur, Wind, Luftdruck etc.).
  • eine eindeutige Version beinhalten
  • jeden Kanal eindeutig referenzieren (UCID - 'u'nique 'c'hannel 'i'd)
  • Fehlfunktionen der Sensoren/Controller übermitteln können

Umsetzung

Als Protokoll hat sich HTTP bereits durchgesetzt:

  • wird nur selten in Netzwerken gefiltert
  • kann getunnelt oder durch Proxies benutzt werden
  • ermöglicht einfache Auswertung über einen Webserver mit PHP
  • ist durch vorhande Bibliotheken gut nutzbar und weit verbreitet

Für die Übertragung der Daten sehe ich folgende Möglichkeiten:

Bei genauerem Hinsehen sollten wir diese REST Grundsätze (siehe Wikipedia Artikel) für das ganze Backend nutzen. Dies halte ich auch für die beste Variante: Steffenvogel 14:15, 31. Mai 2010 (UTC)

Zukunftsmusik

  • Direktzugriff auf den Controller für Echtzeitdarstellung & Steuerung des Controllers (Ethersex besitzt bereits einen HTTPD)
    • Matthias von mysmartgrid hat das bereits für den Flukso Controller implementiert
  • Erkennung und Übertragung der Sensortypen, Auflösungen etc..
development/api/start.1279870266.txt.gz · Zuletzt geändert: 2011/05/29 13:09 (Externe Bearbeitung)