mellisphera / mellisphera-web

Rich user interface for beekeepers
Apache License 2.0
5 stars 1 forks source link

Management of hives by position and no longer by sensor #179

Closed savioarthu closed 3 years ago

savioarthu commented 4 years ago

Following the slack conversation with theo (channel support-mellisphera June 3), several interesting points were made.

83635931-586dd000-a5a5-11ea-9356-af3a0277cab3

Screenshot 2020-09-08 to 13 54 00

Consequences on the BDD: -Collections containing sensorRef (Record, DailyRecords, etc.) will have to have a new additional field idPosition. -In the Sensor collection, the field 'idPosition' will have to be added.

Consequences on the stackengine: -We will always request by deviceId and sensorRef for ImportSensorData (differentiate between T_HR/T2/W). -For the Daily, you will no longer have to look by sensorRef but by idPosition.

Consequences on the WEB: -All queries will have to be done by hiveId then idPosition. The list of sensors will no longer be displayed below (or on) the graphs but only the positions found for each hive. -It will also be possible to place the sensors on the photo of the apiary by hovering position (which can be retrieved with idPosition). -On hovering, I think that you will still have to add 'SensorRef: 43:XX:XX - Position: XXXXXX' for all the graphs.

Undesirable consequences: -The user won't be able to see the data sensor by sensor anymore but position by position. But he will still be able to view the data on MbM. -The user will have to assimilate new information --> the position in the hive is important and should not be neglected.

Remains to be done at today's time:

Mellisphera side - stackengine --> replace position by idPosition with the id of the position and not the name of the position (there is no hurry, we can always keep this system for the moment

Mellisphera Side - web ---> integrate the API to retrieve the positions in the hive ---> insert in the java a new field in the Sensor collection: 'idPosition' and fill it with the apis. This idPosition corresponds to the id of the position in the hive associated with the sensor at the current time. (Maybe even create an array field to trace the history). ---> modify app queries in several places : 1) all the calendars reporting data from the sensor (on the left in Explorer and in My Apiary) 2) brood graph (Explore) 3) Add to the hover 'SensorRef: 43:XX:XX - Position: XXXXXX' for all graphs and replace the sensor names with the positions at the bottom of the calendars. ---> Management of the hives on the picture (in My Apiary) 1) Place the sensors on the photo of the apiary by position (on hovering) 2) Add a position tab?

BroodMinder side - APIs Is it possible to have positions sorted and with a coherent and simple id? 1/2/3/4/etc. (@lzpons had made in his notebook a schema with @savioarthu, to put here).

lzpons commented 3 years ago

See support from hickory89 on 28/11/2020 The legend below the tile should display the brood from the broodbox device nor the super

"I am actually referring to the My Apiary selection, then choose the “BROOD” button. In this picture the defaulted box selected is not the brood box for this hive as it is the top box."

lzpons commented 3 years ago

A new user feedback pointing that the first display for brood should be for the body and seccond for the supper.

In Mellisphera app in the first tab, In My Apiari you can see that the overview is based on the data of the honey box instead of the broodbox. (US Dadant use 1 brood box). So the alert does not gave the correct signal.

Capture d’écran 2021-04-14 à 00 17 47

Capture d’écran 2021-04-14 à 00 17 53

At the same time, the device stack should be ordered accordingly too (scale bttm, 1st box, 2nd box and up)

Capture d’écran 2021-04-14 à 00 24 28

lzpons commented 3 years ago

Fait !