Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No datavisualisation for certain weather sensors. #14

Closed
xztraz opened this issue Feb 19, 2018 · 30 comments
Closed

No datavisualisation for certain weather sensors. #14

xztraz opened this issue Feb 19, 2018 · 30 comments

Comments

@xztraz
Copy link
Contributor

xztraz commented Feb 19, 2018

Wind chill and temp/hum from composite weather sensor(accurite 5in1 via RfLink) don't show any graphs.

image

image

also rain and windspeed (from same sensor) don't seem to show any graph
image

@flatsiedatsie
Copy link
Owner

As the manual states, not all items currently have dataviz. Feel free to add this though. Look at the dataviz.js code. At the top you will see all the commands. Try adding one for yours, and then share the code with us?

@xztraz
Copy link
Contributor Author

xztraz commented Feb 22, 2018

I will! i saw that after i filed this. :)

@xztraz
Copy link
Contributor Author

xztraz commented Feb 22, 2018

I can't find a specific item for rain sensor or my temp/hum-combined sensor in html. wind is there but i can't get it to visualize. tried "ws", "any" as data source but nothing.

temp/hum combined sensor
image

Rain sensor(also from combined)
image

Temp/hum sensor that works with dataviz (with item temp)
image

or am i doing it completely wrong :)

@xztraz
Copy link
Contributor Author

xztraz commented Feb 22, 2018

listed stuff through json api instead. i guess the item-types should be from there but with small caps?

@flatsiedatsie
Copy link
Owner

flatsiedatsie commented Feb 23, 2018

// listed stuff through json api instead. i guess the item-types should be from there but with small caps?

Spot on! I did it like this:

  1. Open the normal dataviz page for your sensor
  2. Look in the console to find the three JSON requests it usually makes (day, month year).
  3. Check out the day json response by opening that url in a new window. That will show you what data the normal dataviz uses. That will give a big hint as to which code it needs here too.

@flatsiedatsie
Copy link
Owner

flatsiedatsie commented Feb 23, 2018

I've added some code that will give items with the icecube icon an 'ice' class, and items with a rain icon a 'rain' class. That may help you target your sensors.

@xztraz
Copy link
Contributor Author

xztraz commented Feb 23, 2018

sweet i'll have another try :)

@xztraz
Copy link
Contributor Author

xztraz commented Feb 23, 2018

2 different temp sensors one with only temp/hum and one frome a weather station with multiple sensors. but temp/hum is one of them. if looking at json request for graph is the same but i can se in html output for the different sensors there is differences on the bstatus row

Working temp sensor (gives bg viz)
/json.htm?type=graph&sensor=temp&idx=98&range=day
html:
image

weather station temp sensor (no bg viz)
/json.htm?type=graph&sensor=temp&idx=108&range=day
html:
image

hasdataviz is added by aurora. but the temp item. is that what aurora uses to find what to put temp graphs on or is that added from aurora too?

@flatsiedatsie
Copy link
Owner

flatsiedatsie commented Feb 24, 2018

The aurora theme looks at the image that the element had, and uses that to give the element a CSS class. So a temperature icon -> "temp" class. Icecube icon -> "ice" class.

The URL you posted tells us something important:
/json.htm?type=graph&sensor=temp&idx=98&range=day

Namely, that dDomoticz can show the dataviz in the same what that it does for temperature sensors.

So that has to go here:
generateDataviz($(this),"temp", "ba");

Now for the last part of that call. Open this link in a new browser window:
[your domoticz base url here]/json.htm?type=graph&sensor=temp&idx=98&range=day

So for example:
192.168.1.10:8080/json.htm?type=graph&sensor=temp&idx=98&range=day

There you will see the raw data that Domoticz usually sends to its dataviz function. There you will be able to find the last piece of the puzzle.

You will see something like "te" or "v" or "any" as the name for the data that is not the timestamp data. take that as the second part of the call.

So put that here:
generateDataviz($(this),"temp", "here");

So now that I think about it, all that CSS classname stuff is not relevant :-D

@xztraz
Copy link
Contributor Author

xztraz commented Feb 24, 2018

Ah that last piece was what i got stuck on. Since there is allready a temp post i tought that should be enough and started looking for other clues. I'll try tonight.

@xztraz
Copy link
Contributor Author

xztraz commented Feb 24, 2018

Non viz sensor (idx108)
image

viz sensor(98)
image

both uses "te" wich is already in the js viz file. hmmm..?

@xztraz
Copy link
Contributor Author

xztraz commented Feb 24, 2018

Ah! Think i fond whats wrong! Negtive values don't give you a viz!

@xztraz
Copy link
Contributor Author

xztraz commented Feb 24, 2018

have another temp/hum sensor outside(same model that gives viz) but this one is in negative temp range and viola no viz!
Creating new issue for negative values #24

@xztraz
Copy link
Contributor Author

xztraz commented Feb 24, 2018

Rain sensor

image

This should work then

            $(this).find('.item.rain:not(.bandmember):not(:has(.dataviz))').each(function () {
                $(this).addClass('hasdataviz');
                generateDataviz($(this),"rain", "mm");
            });	

after cache cleanup a viz graph!
image

awesome!

Just the issue with negative values to fix.
i'll add as many sensors as i can

@xztraz
Copy link
Contributor Author

xztraz commented Feb 24, 2018

having some trouble with a visibility sensor:
in html
image

tested this:

                $(this).find('.item.visibility:not(.bandmember):not(:has(.dataviz))').each(function () {
                    $(this).addClass('hasdataviz');
                    generateDataviz($(this),"counter", "v");
                });

json
image

not sure if item.visibility is right? you say it looks at icon. should i look somwhere else?

json more info
image

@xztraz xztraz changed the title No datavisualisation for certain weather sensors No datavisualisation for certain weather sensors, and negative values don't viz Feb 24, 2018
@xztraz
Copy link
Contributor Author

xztraz commented Feb 24, 2018

added wind and rain atleast in pull request.

@xztraz
Copy link
Contributor Author

xztraz commented Feb 24, 2018

more mockups values and imgtype taken from dummy sensors. i get no graph for dummy sensors so not sure this works.

                $(this).find('.item.air:not(.bandmember):not(:has(.dataviz))').each(function () {
                    $(this).addClass('hasdataviz');
                    generateDataviz($(this),"counter", "co2");
                }); 
                $(this).find('.item.speaker:not(.bandmember):not(:has(.dataviz))').each(function () {
                    $(this).addClass('hasdataviz');
                    generateDataviz($(this),"counter", "v");
                });
                $(this).find('.item.moisture:not(.bandmember):not(:has(.dataviz))').each(function () {
                    $(this).addClass('hasdataviz');
                    generateDataviz($(this),"counter", "v");
                });
		$(this).find('.item.leaf:not(.bandmember):not(:has(.dataviz))').each(function () {
                    $(this).addClass('hasdataviz');
                    generateDataviz($(this),"temp", "hu");
                });

@xztraz
Copy link
Contributor Author

xztraz commented Feb 24, 2018

Could the ice icon mess with neg values viz?

@flatsiedatsie
Copy link
Owner

I've added air, speaker, moisture and leaf classes. (See line 1358 in custom.js)

@xztraz
Copy link
Contributor Author

xztraz commented Feb 25, 2018

thanks. added some more in custom.js. gas and leaf moisture i can't get to work. leaf wetness don't seem to have a graph. gas i have no idea. should work. uncommentet those
edit. leaf wetness have graph but not reachable by the leaf icon. maybe no correlation

@xztraz xztraz changed the title No datavisualisation for certain weather sensors, and negative values don't viz No datavisualisation for certain weather sensors. Feb 25, 2018
@xztraz
Copy link
Contributor Author

xztraz commented Feb 25, 2018

visibility, speaker, moist don't show month on viz. something missing for those

@xztraz
Copy link
Contributor Author

xztraz commented Feb 25, 2018

ah different data values for month it seems. how do i solve this. "any" maybe?
image

@xztraz
Copy link
Contributor Author

xztraz commented Feb 25, 2018

no "any" does not work it takes every value. min,max,avg so you get a sawtooth pattern. hm. some other solution is needed

Kind of stuck on this. creating new issue for month display on averaging sensors Issue: #27

@xztraz
Copy link
Contributor Author

xztraz commented Feb 26, 2018

I think this should be the last sensors. so close after pull and verify

@flatsiedatsie
Copy link
Owner

Thank you so much for your great work, I really appreciate it!

@flatsiedatsie
Copy link
Owner

flatsiedatsie commented Feb 26, 2018

I see you added a call to make dataviz on items with a "Waterflow" class. But that class is not yet added to the html.

If two sensortypes types use the same image, but require different dataviz calls (percent vs counter, for example), then the theme cannot currently handle that. Adding the classes based on the image is a bit of a hack after all.

So I suspect in these cases we have to make a choice which of the two sensor types is the one that gets the dataviz.

Waterflow vs ....?

(Also, I try to keep classes all lowercase).

@xztraz
Copy link
Contributor Author

xztraz commented Feb 26, 2018

Waterflow i found in the item class already for that item. used that to separate items seem to work. get graph on both items. i commented that ugly sollution at least :D

@xztraz
Copy link
Contributor Author

xztraz commented Feb 26, 2018

water flow
image
image

soil moisture
image
image

@xztraz
Copy link
Contributor Author

xztraz commented Feb 26, 2018

could use SoilMoisture instead of generated moisture to really separate them

@xztraz
Copy link
Contributor Author

xztraz commented Feb 28, 2018

This seem to work so i think we can close this? month bug in other issue

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants