Inhaltsverzeichnis

VZClient

vzclient ist ein einfaches programm (python-script) um Funktionen der middleware-api aufzurufen, ohne selbst die URLs zusammenzustellen und mit curl, wget o.ae. aufzurufen.

Voraussetzungen

Python mitsamt Modul „argparse“; in Debian und Ubuntu zu installieren per

sudo apt-get install python3 python3-argh python3-pip

Allgemein (und für alle anderen Distros, sofern pip installiert ist) lässt sich das Modul wie folgt installieren:

pip install argparse

Download

vzclient liegt zusammen mit der middleware im git-repository, unter bin.

man kann das script auch direkt ueber das web-interface von github einstehen/herunterladen:

https://github.com/volkszaehler/volkszaehler.org/blob/master/bin/vzclient

https://raw.github.com/volkszaehler/volkszaehler.org/master/bin/vzclient

Installation

Das Programm igrendwo in den Pfad kopieren, z.B unter /usr/local/bin/

Konfiguration

Die Url zu middleware.php am besten in der Konfigurationsdatei /etc/vzclient.conf oder ~/.vzclient.conf ablegen:

[default]
url:http://example.org/dir/volkszaehler.org/middleware.php

Benutzung (Beispiele)

Jetzt kann man mit:

vzclient get channel

alle öffentlichen Channels ansehen. Die Ausgabe erfolgt in JSON.

vzclient -u ccd52140-9999-11e1-8e36-e556c9177879 get data

Gibt alle Daten des Zaehlers mit der UUID: ccd52140-9999-11e1-8e36-e556c9177879 zurück.

vzclient add channel type=heat public=1 title="Beispiel Wärmemengenzähler" resolution=1000

Erstellt einen Channel.

Um 27 Impulse zum aktuellen Zeitpunkt zu senden:

vzclient -u 18bdae40-18cf-11e1-97b1-c9ebec812cd6 add data value=27

Mit dem Befehl:

vzclient -u 18bdae40-18cf-11e1-97b1-c9ebec812cd6 delete channel

löscht den Channel wieder.

Um einen Wert („23“) für die UUID einzutragen:

vzclient -u 18bdae40-18cf-11e1-97b1-c9ebec812cd6 add data ts=`date +%s000` value=23

Alle Optionen bekommt man mit:

vzclient --help 

Die Parameter die man übergeben kann erfährt man auf der reference Seite