Difference between revisions of "Energy Wars Display"
Jump to navigation
Jump to search
(→Specifics) |
(→Specifics) |
||
Line 32: | Line 32: | ||
* each of these are a different .bash script | * each of these are a different .bash script | ||
* an overview of what each script does: | * an overview of what each script does: | ||
+ | * it does this for buildings, national road, and college avenue | ||
** generates appropriate file names | ** generates appropriate file names | ||
** executes a dynamic SQL statement that's based on arguments | ** executes a dynamic SQL statement that's based on arguments | ||
Line 38: | Line 39: | ||
** stores the reformatted data in ~energy/contest/daily/tmp_data/ | ** stores the reformatted data in ~energy/contest/daily/tmp_data/ | ||
** copies the reformatted data to the destination | ** copies the reformatted data to the destination | ||
− | |||
==JavaScript== | ==JavaScript== |
Revision as of 13:12, 3 March 2014
RPNL
Currently, this is how we're getting data from RPNL.
- RPNL sends an email containing CSV to testcs128@cs.earlham.edu
- testcs128 forwards it to ghcrows13@cs.earlham.edu in its .forward file
- ghcrows13@cs.earlham.edu executes mail.py (in home directory) from its .forward file
- mail.py scrapes off CSV attachments
- mail.py pipes text into parse.py
- parse.py scrapes off data, copies tmp.csv to ghcrows13@proto.cs.earlham.edu:/home/users/energy/contest/daily/tmp.csv
- uses RSA keys to bypass passwords
- user names must be the same for RSA keys to work
- parse.py executes a sql command that pipes this csv file into /home/users/energy/contest/daily/parse_houses.py
- parse_houses.py strips off csv data (again!) and derives the energy change
- parse_houses.py then copies the data into the electrical_energy_rpnl database
Display
The display is written using google charts.
Data
Overview
- Data is generated by ~energy/contest/daily/execute.bash
- executed daily by energy's crontab
- Temporary csv files are stored in ~energy/contest/daily/tmp_data/
- useful for desktop testing
- final data is stored in ~energy/public_html/development/EnergyWars/
- start and end dates for 1) the baseline and 2) the contest are both set in execute.bash
- the target database and prefix (name) can be changed if necessary
- don't change the street -- that's the string that RPNL uses to represent that street
Specifics
- execute.bash generates the daily, baseline, cumulative, and cumulative baseline
- each of these are a different .bash script
- an overview of what each script does:
- it does this for buildings, national road, and college avenue
- generates appropriate file names
- executes a dynamic SQL statement that's based on arguments
- stores the SQL response in a file
- reformats the data using ~energy/contest/daily/reformat.py
- stores the reformatted data in ~energy/contest/daily/tmp_data/
- copies the reformatted data to the destination