-
Notifications
You must be signed in to change notification settings - Fork 0
/
getwindspeed.py
50 lines (45 loc) · 2.35 KB
/
getwindspeed.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import cgi
from google.appengine.ext import ndb
import webapp2
import datetime
from pytz.gae import pytz
class PortableAnemometer(ndb.Model):
date = ndb.DateTimeProperty('d',auto_now_add=True)
vitesse = ndb.IntegerProperty('v')
updateday = ndb.StringProperty('a')
updateheure = ndb.StringProperty('b')
updateminute = ndb.StringProperty('c')
voltage = ndb.IntegerProperty('u')
temperature = ndb.IntegerProperty('t')
class GetWindSpeed(webapp2.RequestHandler):
def post(self):
SelectedDevice = cgi.escape(self.request.get('device'))
SelectedTime = cgi.escape(self.request.get('time'))
SelectedSignal = cgi.escape(self.request.get('Signal'))
SelectedData = cgi.escape(self.request.get('data'))
SelectedWS = [cgi.escape(self.request.get('slot_ws0')),
cgi.escape(self.request.get('slot_ws1')),
cgi.escape(self.request.get('slot_ws2')),
cgi.escape(self.request.get('slot_ws3')),
cgi.escape(self.request.get('slot_ws4')),
cgi.escape(self.request.get('slot_ws5')),
cgi.escape(self.request.get('slot_ws6')),
cgi.escape(self.request.get('slot_ws7')),
cgi.escape(self.request.get('slot_ws8')),
cgi.escape(self.request.get('slot_ws9'))]
SelectedVolt = cgi.escape(self.request.get('slot_volt'))
SelectedTemp = cgi.escape(self.request.get('slot_temp'))
voltage = int(SelectedVolt)*16
temperature = int(SelectedTemp)*4-300
dtnow = datetime.datetime.now()
utc=pytz.utc
paris=pytz.timezone('Europe/Paris')
for i in range(10):
utc_dt = utc.localize(datetime.datetime.fromtimestamp(int(SelectedTime)))-datetime.timedelta(minutes=9-i)
local_dt=utc_dt.astimezone(paris)
updateday = local_dt.strftime("%Y-%m-%d")
updateheure = local_dt.strftime("%H")
updateminute = local_dt.strftime("%M")
newentity = PortableAnemometer(date=dtnow, vitesse=int(SelectedWS[i]), updateday=updateday, updateheure=updateheure, updateminute=updateminute, voltage=voltage, temperature=temperature)
newentity.put()
app = webapp2.WSGIApplication([('/getwindspeed',GetWindSpeed)], debug=True)