Tasks
Read more about:
First, download the lab's archive from here and unzip it somewhere in your projects directory.
This time, you have a Makefile that automatically creates the virtualenv and installs dependencies from requirements.txt
make # note: you still need to manually activate the virtualenv if you wish to source .venv/bin/activate # to start the web server: make run
First, make sure to explore the lab code and see where's what and everything.
You need to implement a RESTful interface that will allow you to send sensor data from a (imaginary) IoT device. Also check out the TODOs:
/api/iot
should display the current data in JSON format;/api/iot
should accept a JSON dictionary containing the temperature / humidity (check the model for the keys / format); it should accept partial data (e.g., if sending just { “rain”: 1 }
it should keep the old values for all other sensors!);
Also implement the get/set functions inside the sensors
model.
To test, either use a browser extension like RESTer (Firefox) or Talend (Chrome) or something else (beware of / check for reviews to avoid installing spyware! POSTMan has gone commercial BTW, ain't open anymore). As an alternative for purists, you can alwayys use ''curl'' from the command line!
Make the sensors data persistent across server restarts.
Use json as format and simply store / load the values from a file.