Uživatelské nástroje

Nástroje pro tento web


openfvelog:start

Toto je starší verze dokumentu!


OpenFVELog

OpenFVELog/GET

OpenFVELog/GET je protokol využívající jednoduchý HTTP dotaz pro zaslání měřených dat z FVE.

Příklad HTTP dotazu na server:

http://log.mypower.cz/?unix=1320171659&u_in=0.04&i_in=0&u_bat=25.72&u_tgt=0&p_bat=0&e_dly=3120
  • unix - unixtimestamp - čas měření
  • u_in, u_bat, u_tgt, p_bat, e_dly - měřené veličiny FVE systému - mohou být odlišné pro různé FVE.

OpenFVELog/XML

OpenFVELog/XML je jednoduchý protokol využívající HTTP pro přenos měřených dat z FVE ve formátu XML. XML data jsou serializována pomocí PHP funkce serialize, komprimována pomocí gzcompress, výsledná binární data jsou kódována pomocí base64_encode a odeslána metodou POST na server jako formulářové pole HTML formuláře s názvem „data“. V zaslaných datech se může vyskytovat i pole „src“, které obsahuje dohodnutý název FVE z důvodů odlišení jednotlivých FVE, jejichž měření přichází ze stejné IP adresy.

$data=base64_encode(gzcompress(serialize($xmldata)))

Ze serveru se vrátí krátká zpráva obsahující výsledek HTTP dotazu. Na tomto jednoduchém komunikačním protokolu je realizováno například měření FVE Maršov na úvodní straně webu MyPower.CZ. Data jsou na serveru archivována v MySQL databázi pro generování různých statistických výstupů a monitoringu FVE.

Odeslání dat na server

  • Method: POST
  • Form variable name: data - data z měření
  • Form variable name: src - dohodnutý název FVE

Pokud chcete zasílat data z vaší FVE na server MyPower.CZ, ozvěte se prosím na fóru, dohodneme detaily, měřené veličiny, zabezpečení přenosu dat, atd.

Příklad zasílaných dat ($xmldata)

<!--  File Name: fve_solar.xml --> 
<data> 
<time> 
<unix>1315685222</unix> 
<formated>2011-09-10 22:07:02</formated> 
</time> 
<values> 
<u_in>0.00</u_in> 
<i_in>0.00</i_in> 
<u_bat>11.90</u_bat> 
<i_bat>-3.65</i_bat> 
<almf>14</almf> 
<bat_temp>16</bat_temp> 
<fv_temp>12.6</fv_temp> 
<solar>0.0</solar> 
<twilight_switch>1</twilight_switch> 
</values> 
</data> 

Data zasílaná mezi tagy <values> a </values> se mohou lišit podle způsobu měření dané FVE a měřených veličin.

Jiný příklad:

<!--  File Name: fve_solar.xml --> 
<data> 
<time> 
<unix>1315685222</unix> 
<formated>2011-09-10 22:07:02</formated> 
</time> 
<values> 
<fv1>0.00</fv1> 
<fv2>0.00</fv2> 
<bat1>12.663</bat1> 
<bat2>12.275</bat2> 
</values> 
</data> 
  • OK - ok
  • 901 Bad server - patrně odesláno jinam než na log.mypower.cz, například x.log.mypower.cz
  • 902 Bad IP - neregistrovaná IP - data byly zaslány z jiné než povolené IP
  • 903 Data form field not found - nenalezena proměnná v POST datech s názvem „data“
  • 904 Unknown data - data se nepodařilo dekodovat
  • 905 XML parse error - chyba pri parsovani XML - problem s formatem XML dat
  • 906 Cannot get FVE name - nelze zjistit nazev FVE dle IP
  • 907 Values not found - nenalezeno pole „values“
  • 908 Cannot get time from XML - round($xmldata[„time“][„unix“]) == 0
  • 909 SQL error - Chyba při zápisu do databáze
  • 910 FVE name not known - neznámý název FVE (u systémů které posílají i název FVE)

Changelog

v.0.1 - vytvoreno a vyuzito pro prenos dat z FVE Maršov
v.0.2 - 3.11.2011 - pridan parametr src a protokol rozdelen na /GET a /XML variantu.

openfvelog/start.1320277596.txt.gz · Poslední úprava: 2011/11/03 05:46 (upraveno mimo DokuWiki)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki