|
@@ -9,6 +9,7 @@ from Model.models import UID_App
|
|
|
from Service.CommonService import CommonService
|
|
|
from Service.ModelService import ModelService
|
|
|
import traceback
|
|
|
+
|
|
|
'''
|
|
|
# 管理员获取信息
|
|
|
http://192.168.136.39:8000/uidApp/adminQuery?token=local&page=1&line=10
|
|
@@ -59,7 +60,6 @@ class UidappView(View):
|
|
|
else:
|
|
|
return response.json(444, 'error path')
|
|
|
|
|
|
-
|
|
|
# 管理员删除
|
|
|
def do_admin_delete(self, request_dict, userID, response):
|
|
|
own_perm = ModelService.check_perm(userID, 20)
|
|
@@ -77,6 +77,7 @@ class UidappView(View):
|
|
|
return response.json(424, repr(e))
|
|
|
else:
|
|
|
return response.json(404)
|
|
|
+
|
|
|
# 管理员查询接口
|
|
|
def do_admin_query(self, request_dict, userID, response):
|
|
|
own_perm = ModelService.check_perm(userID, 20)
|
|
@@ -89,13 +90,14 @@ class UidappView(View):
|
|
|
if not omqs.exists():
|
|
|
return response.json(0, [])
|
|
|
count = omqs.count()
|
|
|
- order_ql = omqs[(page - 1) * line:page * line].\
|
|
|
- values("id","uid","app_type","token_val","addTime","updTime","app__id","app__appName")
|
|
|
+ order_ql = omqs[(page - 1) * line:page * line]. \
|
|
|
+ values("id", "uid", "app_type", "token_val", "addTime", "updTime", "app__id", "app__appName")
|
|
|
order_list = list(order_ql)
|
|
|
return response.json(0, {'data': order_list, 'count': count})
|
|
|
|
|
|
else:
|
|
|
return response.json(404)
|
|
|
+
|
|
|
# 管理员的添加
|
|
|
def do_admin_add(self, request_dict, userID, response):
|
|
|
own_perm = ModelService.check_perm(userID=userID, permID=40)
|
|
@@ -147,3 +149,93 @@ class UidappView(View):
|
|
|
errorInfo = traceback.format_exc()
|
|
|
print(errorInfo)
|
|
|
return response.json(500, {'details': errorInfo})
|
|
|
+
|
|
|
+
|
|
|
+class NotificationView(View):
|
|
|
+
|
|
|
+ def get(self, request, *args, **kwargs):
|
|
|
+ request.encoding = 'utf-8'
|
|
|
+ operation = kwargs.get('operation')
|
|
|
+ return self.validation(request.GET, request, operation)
|
|
|
+
|
|
|
+ def post(self, request, *args, **kwargs):
|
|
|
+ request.encoding = 'utf-8'
|
|
|
+ operation = kwargs.get('operation')
|
|
|
+ return self.validation(request.POST, request, operation)
|
|
|
+
|
|
|
+ def validation(self, request_dict, request, operation):
|
|
|
+ response = ResponseObject()
|
|
|
+ if operation is None:
|
|
|
+ return response.json(444, 'error path')
|
|
|
+ token = request_dict.get('token', None)
|
|
|
+ time = request_dict.get('time',None)
|
|
|
+
|
|
|
+ # 设备主键uid
|
|
|
+ tko = TokenObject(token)
|
|
|
+ response.lang = tko.lang
|
|
|
+ if tko.code != 0:
|
|
|
+ if operation == 'jpush':
|
|
|
+ return
|
|
|
+ elif operation == 'gcm':
|
|
|
+ return
|
|
|
+ elif operation == 'apns':
|
|
|
+ return
|
|
|
+ else:
|
|
|
+ return response.json(414)
|
|
|
+ else:
|
|
|
+ return response.json(tko.code)
|
|
|
+
|
|
|
+ def do_jpush(self):
|
|
|
+ response = ResponseObject()
|
|
|
+ devToken = ''
|
|
|
+ app_key = ''
|
|
|
+ master_secret = ''
|
|
|
+ import jpush as jpush
|
|
|
+
|
|
|
+ # 此处换成各自的app_key和master_secret
|
|
|
+ _jpush = jpush.JPush(app_key, master_secret)
|
|
|
+ push = _jpush.create_push()
|
|
|
+ # if you set the logging level to "DEBUG",it will show the debug logging.
|
|
|
+ _jpush.set_logging("DEBUG")
|
|
|
+ # push.audience = jpush.all_
|
|
|
+ push.audience = jpush.registration_id(devToken)
|
|
|
+
|
|
|
+ push.notification = jpush.notification(alert="hello python jpush api")
|
|
|
+ push.platform = jpush.all_
|
|
|
+ try:
|
|
|
+ res = push.send()
|
|
|
+ except Exception as e:
|
|
|
+ print("Exception")
|
|
|
+ return response.json(10, repr(e))
|
|
|
+ return response.json(0)
|
|
|
+
|
|
|
+ def do_gmc(self):
|
|
|
+ import json
|
|
|
+ import requests
|
|
|
+
|
|
|
+ data = {
|
|
|
+ "key1": "abc",
|
|
|
+ "key2": "def"
|
|
|
+ }
|
|
|
+
|
|
|
+ json_data = {
|
|
|
+ "collapse_key": "WhatYouWant",
|
|
|
+ "data": data,
|
|
|
+ "delay_while_idle": False,
|
|
|
+ "time_to_live": 3600,
|
|
|
+ "registration_ids": [
|
|
|
+ 'eSooD4fAARg:APA91bEPenBPnSn5aXIQk56QdLOQ1Mu3hevHsekP_0eDpg458y2ZMBP6By2rVsGYIoxZrXxvkkptPKUE9CmUygBxaZXABddUWB9FyLlznRFerC7RG9X5PsEOH58xK9_aTUdkT7p6Ocld']
|
|
|
+ }
|
|
|
+
|
|
|
+ url = 'https://android.googleapis.com/gcm/send'
|
|
|
+ serverKey = "AAAAb9YP3rk:APA91bHu8u-CTpcd0g6lKPo0WNVqCi8jZub1cPPbSAY9AucT1HxlF65ZDUko9iG8q2ch17bwu9YWHpK1xI1gHSRXCslLvZlXEmHZC0AG3JKg15XuUvlFKACIajUFV-pOeGRT8tM6-31I"
|
|
|
+
|
|
|
+ data = json.dumps(json_data).encode('utf-8')
|
|
|
+ headers = {'Content-Type': 'application/json', 'Authorization': 'key=%s' % serverKey}
|
|
|
+ req = requests.post(url, data, headers=headers)
|
|
|
+ response = ResponseObject()
|
|
|
+
|
|
|
+ return response.json(0)
|
|
|
+
|
|
|
+ def do_apns(self):
|
|
|
+ return
|