| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 | 
							- #!/usr/bin/env python3  
 
- # -*- coding: utf-8 -*-  
 
- """
 
- @Copyright (C) ansjer cop Video Technology Co.,Ltd.All rights reserved.
 
- @AUTHOR: ASJRD018
 
- @NAME: AnsjerFormal
 
- @software: PyCharm
 
- @DATE: 2019/1/14 15:57
 
- @Version: python3.6
 
- @MODIFY DECORD:ansjer dev
 
- @file: DetectController.py
 
- @Contact: chanjunkai@163.com
 
- """
 
- from django.utils.decorators import method_decorator
 
- from django.views.decorators.csrf import csrf_exempt
 
- from django.views.generic.base import View
 
- import time
 
- import apns2
 
- from Object.ResponseObject import ResponseObject
 
- import os
 
- from Ansjer.config import BASE_DIR
 
- class DetectControllerView(View):
 
-     @method_decorator(csrf_exempt)
 
-     def dispatch(self, *args, **kwargs):
 
-         return super(DetectControllerView, self).dispatch(*args, **kwargs)
 
-     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')
 
-         if operation == 'push':
 
-             return self.do_push(request_dict, response)
 
-     def do_push(self, request_dict, response):
 
-         device_token = request_dict.get('device_token')
 
-         try:
 
-             daytime = time.strftime("%Y%m%d%H%M", time.localtime(1547256103))
 
-             print(daytime)
 
-             pem_path = os.path.join(BASE_DIR, 'Ansjer/file/apns-dev.pem')
 
-             cli = apns2.APNSClient(mode="dev", client_cert=pem_path, password='111111')
 
-             alert = apns2.PayloadAlert(body="body!", title="title!")
 
-             payload = apns2.Payload(alert=alert)
 
-             n = apns2.Notification(payload=payload, priority=apns2.PRIORITY_LOW)
 
-             res = cli.push(n=n, device_token=device_token, topic='com.ansjer.zsavcloud')
 
-             # assert res.status_code == 200, res.reason
 
-             # assert res.apns_id
 
-             if res.status_code == 200:
 
-                 return response.json(0)
 
-             else:
 
-                 return response.json(404, res.reason)
 
-         except Exception as e:
 
-             return response.json(10, repr(e))
 
-     # def do_
 
 
  |