Giter Site home page Giter Site logo

volkszaehler / volkszaehler.org Goto Github PK

View Code? Open in Web Editor NEW
199.0 40.0 82.0 7.75 MB

Open Source Smart Meter with focus on privacy - you remain the master of your data.

Home Page: https://volkszaehler.org

License: GNU General Public License v3.0

JavaScript 24.12% HTML 2.24% CSS 2.81% PHP 66.02% Shell 1.76% Python 2.77% Dockerfile 0.28%
smarthome smartmeter monitoring volkszaehler privacy logging php

volkszaehler.org's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

volkszaehler.org's Issues

png rendering with jpgraph has broken error handling

at least the following cases lead to empty output with no useful error message
(not even in the webserver error log)

  • php-gd not installed
  • installed version of php-gd lacks imageantialias
    (i don't really understand why this is required anyway, after uncommenting the calls to it, rendering works)
  • truetype-fonts not installed

it seems that the constructor manages to ignore any errors,
and then View\JpGraph::render() ends up with a null- or misconfigured graph object.

it seems that the code ends up calling JpGraph::add() with a jpgraph library exception object,
which the logic in there silently ignores.

extend entity type metadata (more than just name)?

currently the entity (channel) -type definitions store only a single description string.
that is not really enough to differentiate the subtle differences between channel types
and at the same time be useful for frontend display.

i kind of opened this up, when i replaced the historic names:
http://volkszaehler.org/pipermail/volkszaehler-dev/2013-February/002397.html
http://volkszaehler.org/pipermail/volkszaehler-dev/2013-October/003121.html
9486017

that created rather long names, which are not useful for the frontend display,
leading to stuff like:
a8aabef
90eb44a
and more recently:
#205

for a proper fix, we should support more than just a single name string.
useful would be:

  • short display name (for frontend)
  • long/detailed display name (for channel editor)
  • description text ("help" text for clarifiation)

and, to make the conversions that happen more explicit:

  • input data type/unit
  • output data type/unit

Error from mbus.pm on raspberry pi

Hi,

i am connecting to an Mbus Meter and i always get this strange error:

./mbus-cmd --sqlout
Argument "ddebbd" isn't numeric in multiplication (*) at /usr/local/lib/site_perl/mbus.pm line 512.
INSERT INTO zaehler SET pos="0",vif="12",dif="6",value="00003622",unit="kWh",zweck="Heizenergie",serial="39202522",valArt="normaler Wert",count="0";
INSERT INTO zaehler SET pos="1",vif="12",dif="19",value="78.899",unit="m^3",zweck="Volumen",serial="39202522",valArt="normaler Wert",count="0";
INSERT INTO zaehler SET pos="2",vif="59",dif="59",value="0",unit="m^3/h",zweck="Fliessgeschwindigkeit",serial="39202522",valArt="Fehlerwert",count="0";
INSERT INTO zaehler SET pos="3",vif="10",dif="90",value="22.9",unit="C",zweck="Vorlauftemperatur",serial="39202522",valArt="normaler Wert",count="0";
INSERT INTO zaehler SET pos="4",vif="10",dif="94",value="22.9",unit="C",zweck="Ruecklauftemperatur",serial="39202522",valArt="normaler Wert",count="0";
INSERT INTO zaehler SET pos="5",vif="140 16",dif="6",value="00000000",unit="kWh",zweck="Heizenergie",serial="39202522",valArt="normaler Wert",count="0";
INSERT INTO zaehler SET pos="6",vif="10",dif="166 24",value="0000",unit="h",zweck="Betriebszeit",serial="39202522",valArt="normaler Wert",count="0";
INSERT INTO zaehler SET pos="7",vif="129 32",dif="253 26",value="0",unit="",zweck="Fehler (vife=26)",serial="39202522",valArt="normaler Wert",count="0";

OR:

./mbus-cmd --sqlrawout
INSERT INTO rawdata SET serial="39202522",data="\104\57\57\104\8\3\114\34\37\32\57\36\35\47\4\126\112\0\0\12\6\34\54\0\0\12\19\153\136\7\0\59\59\189\235\221\10\90\40\2\10\94\40\2\140\16\6\0\0\0\0\10\166\24\0\0\129\32\253\26\0\115\22";
Argument "ddebbd" isn't numeric in multiplication (*) at /usr/local/lib/site_perl/mbus.pm line 512.

You can see where is the Problem with "ddebbd" ??

Thanks a lot for help.

Cu kami

Power sensor consumption wrong when tuples=1

The following requests deliver different consumption for sensors of type powersensor. Looks like a bug in the middleware:

http://host/middleware.php/data/xxxx?from=today&to=now

{"version":"0.3",
"data":{"uuid":"xxxx","from":1402174578088,"to":1402226773132,
"min":[1402174700045,0],"max":[1402223068854,6.685],
"average":2.182,"consumption":31.63,"rows":256,
"tuples":[[1402174700045,0,1],[1402196412921,0,1],[1402196538348,0,1],[1402196653923,0,1],[1402196778813,0,1],[1402196899142,0,1],[1402197019228,0.024,1],[1402197138041,0.026,1],[1402197253464,0.032,1],[1402197378832,0.036,1],[1402197493399,0.042,1],[1402197618642,0.06,1],[1402197737979,0.071,1],[1402197858487,0.083,1],[1402197974161,0.092,1],[1402198098874,0.1,1],[1402198213633,0.11,1],[1402198339114,0.118,1],[1402198453876,0.119,1],[1402198578252,0.122,1],[1402198698740,0.128,1],[1402198815194,0.128,1],[1402198933245,0.138,1],[1402199053494,0.158,1],[1402199178170,0.169,1],[1402199298420,0.181,1],[1402199419172,0.195,1],[1402199533168,0.202,1],[1402199658802,0.214,1],[1402199778447,0.223,1],[1402199898678,0.23,1],[1402200018906,0.245,1],[1402200133301,0.254,1],[1402200253272,0.271,1],[1402200373895,0.278,1],[1402200498493,0.289,1],[1402200619285,0.303,1],[1402200738614,0.315,1],[1402200858138,0.323,1],[1402200978637,0.332,1],[1402201098584,0.341,1],[1402201218827,0.35,1],[1402201338447,0.359,1],[1402201454771,0.36,1],[1402201574673,0.375,1],[1402201698717,0.382,1],[1402201818716,0.39,1],[1402201938826,0.397,1],[1402202058774,0.414,1],[1402202174673,0.418,1],[1402202293260,0.422,1],[1402202419159,0.434,1],[1402202538528,0.442,1],[1402202653872,0.443,1],[1402202777904,0.453,1],[1402202897618,0.47,1],[1402203018833,0.474,1],[1402203137079,0.484,1],[1402203258294,0.493,1],[1402203378393,0.501,1],[1402203499357,0.509,1],[1402203613954,0.514,1],[1402203738243,0.516,1],[1402203858087,0.523,1],[1402203974057,0.53,1],[1402204093024,0.539,1],[1402204213725,0.545,1],[1402204333578,0.636,1],[1402204453799,0.668,1],[1402204574074,0.703,1],[1402204698579,0.75,1],[1402204813905,0.759,1],[1402204938112,0.722,1],[1402205053280,0.788,1],[1402205178693,0.807,1],[1402205294012,0.823,1],[1402205419213,0.856,1],[1402205538818,0.979,1],[1402205654185,1.014,1],[1402205773715,1.108,1],[1402205898868,1.107,1],[1402206013937,1.15,1],[1402206138475,1.241,1],[1402206258686,1.29,1],[1402206378737,1.362,1],[1402206498338,1.431,1],[1402206615131,1.426,1],[1402206733707,1.472,1],[1402206858330,1.577,1],[1402206979764,1.607,1],[1402207098810,1.658,1],[1402207218814,1.807,1],[1402207338464,1.864,1],[1402207458786,1.919,1],[1402207577484,2.119,1],[1402207698967,2.192,1],[1402207818306,2.254,1],[1402207933578,2.365,1],[1402208053596,2.451,1],[1402208178121,2.515,1],[1402208293705,2.573,1],[1402208414031,2.71,1],[1402208538418,2.781,1],[1402208654741,2.781,1],[1402208778435,2.882,1],[1402208894997,3.029,1],[1402209018566,3.125,1],[1402209138920,3.075,1],[1402209258889,3.109,1],[1402209378741,3.263,1],[1402209493656,3.359,1],[1402209618797,3.429,1],[1402209734211,3.454,1],[1402209858447,3.608,1],[1402209978944,3.669,1],[1402210098021,3.715,1],[1402210218577,3.711,1],[1402210334101,2.977,1],[1402210459894,3.911,1],[1402210573531,4.073,1],[1402210693866,4.103,1],[1402210819143,4.148,1],[1402210933930,4.254,1],[1402211052881,4.278,1],[1402211173640,4.334,1],[1402211298829,4.409,1],[1402211417891,4.429,1],[1402211533566,4.508,1],[1402211653758,4.574,1],[1402211774403,4.67,1],[1402211899112,4.747,1],[1402212019799,4.799,1],[1402212134745,4.818,1],[1402212258453,4.874,1],[1402212373959,4.919,1],[1402212493174,4.929,1],[1402212613968,4.97,1],[1402212738470,5,1],[1402212858689,5.121,1],[1402212986139,5.16,1],[1402213099070,5.192,1],[1402213220442,5.206,1],[1402213338036,5.262,1],[1402213457513,5.296,1],[1402213579091,5.317,1],[1402213693928,5.353,1],[1402213818802,5.394,1],[1402213935052,5.397,1],[1402214053788,5.439,1],[1402214174526,5.475,1],[1402214293234,5.493,1],[1402214418998,5.505,1],[1402214538248,5.584,1],[1402214653776,5.618,1],[1402214777305,5.647,1],[1402214894064,5.666,1],[1402215018814,5.686,1],[1402215134599,5.733,1],[1402215258970,5.759,1],[1402215374246,5.808,1],[1402215493606,5.772,1],[1402215618969,5.881,1],[1402215733830,5.93,1],[1402215858464,5.948,1],[1402215972685,5.98,1],[1402216099082,5.987,1],[1402216218839,6.023,1],[1402216337010,6.038,1],[1402216453856,6.07,1],[1402216578347,6.097,1],[1402216698864,6.136,1],[1402216818930,6.161,1],[1402216933678,6.164,1],[1402217057906,6.182,1],[1402217178949,6.176,1],[1402217298574,6.203,1],[1402217415194,6.215,1],[1402217539074,6.227,1],[1402217654681,6.237,1],[1402217778698,6.251,1],[1402217894371,6.272,1],[1402218014523,6.286,1],[1402218133581,6.319,1],[1402218258918,6.333,1],[1402218379076,6.363,1],[1402218498816,6.396,1],[1402218618802,6.443,1],[1402218738382,6.446,1],[1402218938079,6.444,1],[1402218979865,6.463,1],[1402219098396,6.451,1],[1402219218228,6.526,1],[1402219339822,6.521,1],[1402219459814,6.541,1],[1402219574601,6.539,1],[1402219699219,6.574,1],[1402219819762,6.573,1],[1402219938549,6.594,1],[1402220058089,6.614,1],[1402220179100,6.597,1],[1402220299165,6.647,1],[1402220414266,6.631,1],[1402220543959,6.637,1],[1402220686747,6.647,1],[1402220773555,6.678,1],[1402220893856,6.671,1],[1402221013606,6.573,1],[1402221139713,6.673,1],[1402221258230,6.673,1],[1402221379762,6.674,1],[1402221501142,6.675,1],[1402221640626,6.675,1],[1402221733537,6.676,1],[1402221860276,6.674,1],[1402221979997,6.675,1],[1402222101302,6.676,1],[1402222219039,6.675,1],[1402222333601,6.675,1],[1402222453536,6.675,1],[1402222572875,6.673,1],[1402222698867,6.674,1],[1402222813852,6.674,1],[1402222939765,6.676,1],[1402223068854,6.685,1],[1402223194695,6.674,1],[1402223308987,6.676,1],[1402223431796,6.674,1],[1402223551170,6.668,1],[1402223674346,6.675,1],[1402223793149,6.675,1],[1402223906154,6.676,1],[1402224026653,6.683,1],[1402224139708,6.674,1],[1402224254738,6.676,1],[1402224378675,6.676,1],[1402224498593,6.676,1],[1402224618861,6.675,1],[1402224733569,6.676,1],[1402224858150,6.675,1],[1402224978510,6.676,1],[1402225098635,6.675,1],[1402225219223,6.677,1],[1402225333808,6.676,1],[1402225459043,6.676,1],[1402225579189,6.674,1],[1402225698164,6.674,1],[1402225818425,6.675,1],[1402225938851,6.673,1],[1402226059171,6.677,1],[1402226179177,6.675,1],[1402226299158,6.676,1],[1402226413466,6.669,1],[1402226539154,6.677,1],[1402226658181,6.673,1],[1402226773132,6.675,1]]}}

and:

http://host/middleware.php/data/xxxx?from=today&to=now&tuples=1

{"version":"0.3",
"data":{"uuid":"xxxx","from":1402174578088,"to":1402226773132,
"min":[1402226773132,3.722],"max":[1402226773132,3.722],
"average":3.722,"consumption":53.964,"rows":1,
"tuples":[[1402226773132,3.722,255]]}}

Update most probably this would also affect grouped queries like group=day and also data aggregation.

RFC: Criteria for repo contributions

To keep the repo in a current state I'd suggest the following ruleset for contributions:

  • core repo (i.e. vz.org and vzlogger) must address a broader public (> 1 user)
  • contributions (i.e. anything in the repo) must have at least one maintainer
  • maintainers must subscribe the dev mailing list
  • maintainers should subscribe the github repo
  • maintiners must actively maintain their contributions

Obsoleting contributions:

  • outdated code (i.e. that is not working anymore/ with current vz, os etc) should either be fixed or removed
  • additional to removal move to wiki is optional

Comments welcome.

Various issues with flow (i.e. gas) meter readings [wip]

  1. Gas meter resolution expects impulses per k(m3) similar to kWh for el. energy, that is if the meter has 1000 imp/m3 an actual value of 1.000.000 needs be entered.

  2. initialconsumption is in kWh for el. energy and needs to be in k(m3) for gas. That means 2500m3 must be entered as value 2.5 for initialconsumption.

  3. cost shows the same symptoms as 1) and 2).

  4. Frontends consumption display has a performance feature that requests data grouped by month leading to return 0 if only a single month is present in the aggregated or grouped view. This will at least lead to rounding errors.

    http://localhost/middleware.php/data/a24bc2c0-8ac2-11e4-9d71-75374ffa90e0.json?from=0&tuples=1

    {"version":"0.3","data":{"uuid":"a24bc2c0-8ac2-11e4-9d71-75374ffa90e0","from":1419206400000,"to":1419292800000,"min":[1419292800000,41.667],"max":[1419292800000,41.667],"average":41.667,"consumption":1000,"rows":1,"tuples":[[1419292800000,41.667,1]]}}

    http://localhost/middleware.php/data/a24bc2c0-8ac2-11e4-9d71-75374ffa90e0.json?from=0&tuples=1&group=month

    {"version":"0.3","data":{"uuid":"a24bc2c0-8ac2-11e4-9d71-75374ffa90e0","from":1419292800000,"to":1419292800000,"average":0,"consumption":0,"rows":1}}
  5. Scaling of flow units like l/h should be l or, if >1000, m3 for displaying consumption.

  6. min, max and avg should not scale m3 to km3 either.

Float - Localization - Database

When using volkszaehler with a localization that uses "," (comma) instead of "." (dot) as decimal separator, PHP seems to store the float value differently to the database as reading it out (properties such as "cost" (float) are stored as text in the database).

Switching the localization order ("$config['locale']") in the volkszaehler.conf.php in a way, that "en_US" is in front, fixes the issue, but is not the config's intention.

However, I'm pretty sure, that calling the "middleware.php" causes the problem. When I additionally create a channel, that is not fed by the middleware.php, the value stays correct. I believe (without further investigation), that storing values, reads out the full set of properties for a certain channel and stores it again: My "0.12" went to "0,12" to "0" within a few seconds (calling middleware.php every second second [sic!]).

Cookies not set when creating channel

Steps to reproduce:

  • add channel
  • create new channel
  • check "cookie"
  • complete channel creation -> channel appears in list
  • reload page -> added channel is gone although cookie was checked

missing conversion of special chars

"äöü" entered in the frontend are not converted at saving into database.

Test case:

  • create new channel
  • put "äöü" into comment
  • watch entry with phpmyadmin
    vz-umlautfehler

vz.capabilities ignores multiple middlewares

Since f117a19 multiple middlewares are supported. However, vz.capabilities is only initialized from local middleware. This might lead to issues if remote middlewares offer different functionality, e.g. channel types.

"dbcopy.php create -c <config>" won't create sqlite db

Here's what I did:

  • git clone https://github.com/andig/dbcopy.git
  • dbcopy.json angepasst:
    "source": {
    // source database connection
    "driver": "pdo_mysql",
    "host": "localhost",
    "user": „vz",
    "password": „<sssh!>",
    "dbname": "volkszaehler"
    },
    "target": {
    // target database connection
    "driver": "pdo_sqlite",
    "path": "sqlite.db3", // path is only used if driver = pdo_sqlite
    "host": "localhost",
    "user": "travis",
    "password": ""
    // "dbname": „backup“
    […] remainder: default
  • installed composer ("curl -s http://getcomposer.org/installer | php“, "php composer.phar install")
  • installed sqlite driver: apt-get install sqlite libsqlite0 php5-sqlite
  • generate target db:
    php /opt/dbcopy/dbcopy.php create -c /opt/dbcopy/dbcopy.json
    Creating target schema
    renaming assets for target platform: sqlite
    table: data
    table: entities
    table: entities_in_aggregator
    table: properties
    -> doesn't seem to create a sqlite db
    s. https://demo.volkszaehler.org/pipermail/volkszaehler-users/2014-November/004887.html

enh: new color picker

Please allow all possible colors at dialog of creating/editing a channel. Maybe a color wheel or so.

Fix Visualization for type "electric meter"

What I expect for "Zählerstände" is that the meter value is displayed over time - in a way that there's nothing calculated on. In my case it should be a (almost) horizontal line at 15059 on y-axis.

The columns should read "Min 15059.20 kWh | Max 15059.22 kWh | Avg: Not applicable | Current: 15078.11 [Note: or not applicable, if the actual current value shouldn't be updated every n seconds] | Consumption: 0.02 kWh [i.e. Max-Min] | Cost: 0,00 €"

image

Either this is a bug (or a not-yet-feature) or I' too stupid to chose the right type to get displayed what I want to see...

Falsche Berechnung des Verbrauchs

Hi,

ist es irgendwie möglich nur die positiven Werte auf den Verbrauch zu addieren? Also ich lese die 16.7.0 vom Stromzähler und mich würde es interessieren wie viel ich wirklich aus dem Netz gezogen habe. Aber bei der zusammen Rechnung des Verbrauches scheinen die negativen Werte auch aufaddiert zu werden. Hier mal ein paar Fotos:

http://puu.sh/gsnOC/337f25a1f2.png

Das nächste Bild kommt vom roten Bereich:

http://puu.sh/gsnTX/fd829fd2f1.png

Und mal eins wenn die Anlage Brummt, wobei man sieht das der Verbrauch definitiv im Minus ist, aber ich auch definitiv was aus dem Netz gezogen habe:

http://puu.sh/gso2Z/71fd2995fd.png

Kann mir jemand nen Tipp geben oder ist das nen Bug?

composer install installs 23meg of jpgraph docs that no user needs

root@raspberrypi:~# du -sch /srv/volkszaehler.org/vendor/jpgraph/jpgraph/lib/JpGraph/docs
23M /srv/volkszaehler.org/vendor/jpgraph/jpgraph/lib/JpGraph/docs

that (plus probably the copies in .git) accounts for at last a third of the vz.org installation footprint...
does this really have to be installed from git, given that it's used so rarely?

Axis definitions are forgotten after readd channel

If i create two channels with two different axis, this works fine as far as the channels are shown. The channels have different axis.
After restarting the browser and readding the channels there is only one unified axis.

zoom presets should keep time aligned to "now"

... at least / especially if the "now" button was used before.
this bugs me too, and it's old:

http://volkszaehler.org/pipermail/volkszaehler-dev/2014-May/003592.html

Einen Verbesserungsvorschlag fürs Frontend würde ich auch gerne Vorschlagen:

Beim Zoom auf die Stunde nach Verwendung von "jetzt" fände ich es
angenehm, wenn auf die aktuelle Stunde gezoomt würde und nicht die
mittlere Position der Darstellung
genommen wird, was im Test bei mir gestern regelmässig 12 h früher war.

Wo ist der richtige Ort für solche Change Requests/Bug Reports?

Bug in modify Channel

If you use the new feature modify channel for typ "Temperatur" or "Windgeschwindigkeit", it modifies the database fields for the checkboxes "public" and "active" from "1" to "on". Afterwards this channel is not public anymore because "on" != "1".

Frontend: Permalinks defekt

Im FE erzeugte Permalinks haben (mindestens) 2 Probleme:

  • Beim Aufruf ignoriert der Permalink die from/to Parameter
  • Die UUID wird zu den aktuell per Cookie konfigurierten hinzugefügt wodurch z.B. Entities doppelt angezeigt werden

Beispiel:

http://localhost/vz/htdocs/frontend/?from=1374163673897&to=1378710920894&uuid[]=2a93a9a0-60df-11e2-83cc-2b8029d72006

Error subscribing to HTTP middlewares from HTTPS frontend

Steps to reproduce:

Rolling back to "Merge pull request #204 from andig/fix-cdn-usage" (304f39b) removes the behaviour.

Does not occur with Safari 8.0.2 and Chrome 40.0 on OSX.

Regards, J.

Frontend: h2#title and cursor should honor xaxis.timezone

After I had successfully set up the frontend on my intranet server (using my Raspberry Pi to POST meter reading to it), I noticed that the frontend was using local times -- while my server runs on UTC.

I found a config item $config['timezone'] in volkszaehler.conf.php which I changed to $config['timezone'] = 'UTC'; but still the frontend continues to use local time.

This applies to the frontend code which I downloaded today from GitHub (can't easily find the build?!).

Feature request: Date range selector in Frontend

I would like to see a more advanced way to select the time range shown in the graph.

In my eyes the date range shown as heading could be a little more "interactive".
If you click a date (start date or end date) a date selector div (calendar) shows up to enter the exact date range to be shown.

I've seen something like this in Google Analytics (see attachment) and really liked it.
This would make things easier to select a complete day or month e.g. to get the overall cost of my heat pump.

image

frontend: "unknown middleware response"

altes problem, dringend zu beheben:
wenn das frontend eine middleware-antwort bekommt, mit der es nichts anfangen kann,
zB http-status!=200, wird in der fehlermeldung nur die http statuszeile ausgegeben.
das ist gerade fuer anfaenger (oder deren supporter auf der mailingliste!) wenig hilfreich.

das ist insbesondere deshalb problematisch, weil das frontend selber eine statische
html-datei ist, die in jedem fall "funktioniert", und alle middleware-aufrufe per
ajax erfolgen, so dass eine defekte middleware installation schwer zu erkennen ist.

der request der den fehler erzeugte sollte MINDESTENS mit ausgegeben werden.
ideal waehre, noch den anfang des bodies der antwort (oder einen hinweis dass der leer war) mit ausuzugeben,
und/oder einen hinweis, fuer weitere details in's logfile des webservers zu schauen.

Unhiding hidden group in frontend causes middleware error

Steps to reproduce:

  • create and subscribe to group
  • uncheck group to hide
  • check group to unhide -> middleware error

If the group has at least one non-group child the error doesn't occur. Need to find out if retrieving groups in data context is desired.

provide total consumtion ("zaehlerstand") for channels via API

  • extend the API to return total consumption for channels somewhere
  • extend the interpreters/database to provide this value (trivial for CounterInterpreter, not so for others!)

currently this can be solved for CounterInterpreter channels by accessing the database directly,
and in general probably by requesting data for the total time the channel was logged, which is inefficient.

discussion here: http://lists.volkszaehler.org/pipermail/volkszaehler-dev/2014-March/003496.html

Webinterface negative graph not in view

Hi,

it's me again as you can see in the image:
image the negative Graph is out of the Diagram and it won't come in even if I zoom out and so on.
The Diagram will be every time positive.

Greetings

Middleware updates do not show when using aggregation

Auf der Users ML ist ein Use Case aufgetaucht der bei Verwendung von Aggregation problematisch ist: http://demo.volkszaehler.org/pipermail/volkszaehler-users/2013-December/003336.html

Ursache: wenn in einen Kanal für einen Timestamp Daten geschrieben der bereits in der Aggregationstabelle enthalten ist (d.h. ein Zeitraum > 1 Aggregationsperiode [Tag, Stunde etc] in der Vergangenheit) wird die Aggregationstabelle nicht gelöscht/ als invalide gekennzeichnet.

Vorschlag: Für Updates über die MW ließe sich das noch abfangen, für direkte Datenbankupdates trägt der Anwender die Verantwortung.

Frontend funktioniert nicht ohne Verbindung zum Internet!

Die Darstellung / Aufbereitung der Daten im Frontend funktioniert nicht ohne bestehende Internetverbindung. Kann man die benötigten Dateien lokal vorhalten (Dauerhaft oder Fallback)? So dass zumindest lokal eine Auswertung auch bei gestörter Internetverbindung möglich ist?

vzlogger always daemonizes

Even if I have "daemon": false in vzlogger.conf the program still daemonizes:

[Nov 30 12:59:57][main] daemon=0, local=1
[Nov 30 12:59:57] Daemonize process...

This applies to vzlogger 0.3.9, compiled and run on Raspbian 2014-09-09.

Feature Request

Is it possible to add to the vzclient the option to add many uuid entries? So for example:

vzclient.py -u some_uuid add data value=some_val  -u another_uuid add data value=another_val

So that the vzclient will only request the middleware script one time?

The generaly Idea behind this is to prevent nework overhead from calling the middleware many times for many uuids.

And also a little Question did the middleware opens only a single connection to the database or more than one?

Enhancement: provide realtime updates to frontend/clients

Architecture draft:

  • websockets-based push server
  • Web Application Messaging Protocol (WAMP)
  • clients subscribe per uuid
  • middleware pushes to push server via ws request (simple/fast)
  • push server retrieves db updates and broadcasts to subscribed clients

Update: this is the architecture drawing from our developers meeting:

2015-05-16 23 35 27

Prototype is in development.

cc @mbehr1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.