Add api set_time

Brightcells 8 年 前
コミット
de03d8e88a
共有2 個のファイルを変更した16 個の追加1 個の削除を含む
  1. 11 1
      main.py
  2. 5 0
      utils/servertime.py

+ 11 - 1
main.py

@@ -15,7 +15,7 @@ from tornado.web import Application, RequestHandler, StaticFileHandler
15 15
 
16 16
 from utils.boxinfo import get_box_status, get_mac_address
17 17
 from utils.logit import log_request_arguments, logit
18
-from utils.servertime import local_string
18
+from utils.servertime import local_string, set_time
19 19
 from utils.sqlite import (CREATE_INDEX1, CREATE_INDEX2, CREATE_TABLE_STMT, DELETE_RECORD_STMT, INSERT_RECORD_STMT,
20 20
                           SELECT_MAX_PHOTO_ID_STMT, SELECT_ORIGIN_PATH_STMT)
21 21
 from utils.tv import get_last_photo_path
@@ -297,6 +297,15 @@ class BoxTimeHandler(RequestHandler):
297 297
         })
298 298
 
299 299
 
300
+class SetTimeHandler(RequestHandler):
301
+    def post(self):
302
+        timestr = self.get_argument('time', '')
303
+        set_time(timestr)
304
+        self.write({
305
+            'status': 200,
306
+        })
307
+
308
+
300 309
 class LastPhotoHandler(RequestHandler):
301 310
     def post(self):
302 311
         self.write({
@@ -316,6 +325,7 @@ handlers = [
316 325
     (r'/delete_photo', DeletePhotoHandler),
317 326
     (r'/box_info', BoxInfoHandler),
318 327
     (r'/box_time', BoxTimeHandler),
328
+    (r'/set_time', SetTimeHandler),
319 329
     (r'/static/(.*)', StaticFileHandler, {'path': ROOT_PATH}),
320 330
     # TV APP
321 331
     (r'/last_photo', LastPhotoHandler),

+ 5 - 0
utils/servertime.py

@@ -6,3 +6,8 @@ import time
6 6
 
7 7
 def local_string():
8 8
     return time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())
9
+
10
+
11
+def set_time(timestr):
12
+    with open('/ramfs/current_time', 'w') as f:
13
+        f.write('date -s "{}"'.format(timestr))