chenjunkai 6 年之前
父节点
当前提交
371735fbc5
共有 4 个文件被更改,包括 38 次插入75 次删除
  1. 0 71
      Ansjer/file/apns-dev.pem
  2. 1 1
      Controller/AccessLog.py
  3. 36 2
      Controller/Test.py
  4. 1 1
      Service/TemplateService.py

+ 0 - 71
Ansjer/file/apns-dev.pem

@@ -1,71 +0,0 @@
-Bag Attributes
-    friendlyName: Apple Development IOS Push Services: com.ansjer.zsavcloud
-    localKeyID: EE FA 88 7C 98 58 FD 7D 8C 91 F5 33 67 4F 73 49 BB AA E4 EE 
-subject=/UID=com.ansjer.zsavcloud/CN=Apple Development IOS Push Services: com.ansjer.zsavcloud/OU=772N5HXAR2/C=CN
-issuer=/C=US/O=Apple Inc./OU=Apple Worldwide Developer Relations/CN=Apple Worldwide Developer Relations Certification Authority
------BEGIN CERTIFICATE-----
-MIIFjTCCBHWgAwIBAgIIS9oJMHjnoMgwDQYJKoZIhvcNAQEFBQAwgZYxCzAJBgNV
-BAYTAlVTMRMwEQYDVQQKDApBcHBsZSBJbmMuMSwwKgYDVQQLDCNBcHBsZSBXb3Js
-ZHdpZGUgRGV2ZWxvcGVyIFJlbGF0aW9uczFEMEIGA1UEAww7QXBwbGUgV29ybGR3
-aWRlIERldmVsb3BlciBSZWxhdGlvbnMgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkw
-HhcNMTkwMTE0MDcyNzE3WhcNMjAwMTE0MDcyNzE3WjCBjDEkMCIGCgmSJomT8ixk
-AQEMFGNvbS5hbnNqZXIuenNhdmNsb3VkMUIwQAYDVQQDDDlBcHBsZSBEZXZlbG9w
-bWVudCBJT1MgUHVzaCBTZXJ2aWNlczogY29tLmFuc2plci56c2F2Y2xvdWQxEzAR
-BgNVBAsMCjc3Mk41SFhBUjIxCzAJBgNVBAYTAkNOMIIBIjANBgkqhkiG9w0BAQEF
-AAOCAQ8AMIIBCgKCAQEAxVcdPjJE7jqqFezK6Ws/hIgTb3npC62l7QTyOWFoi7pt
-Kz4QQaarV1oy7+vaTY1wi8BdSL5zi9puINXuBU50efj2b7Ev2elMSKFma2v96k8s
-t/fEX7x1bANjUjqZFY9A2rcoYpnTzsbBvw3UT2ljDw7W0KqvoYecmqhvzs2qcaxk
-54uCQOzY/4eKSwnWzDh/UmsQYKTm+PJfOXwV2T1ZiOzkntMkrW/olZpHbkWUY5WF
-LM7teMc+ubTxPLwqs7oe0gVGi2qaVPApnTkPyMys+wxK03o7bUXF2y/ZizO19Ww+
-TXV4zGhhDmYymkSs7VhgqgSbrg+f6vZRQ9y+0HVUKwIDAQABo4IB5TCCAeEwCQYD
-VR0TBAIwADAfBgNVHSMEGDAWgBSIJxcJqbYYYIvs67r2R1nFUlSjtzCCAQ8GA1Ud
-IASCAQYwggECMIH/BgkqhkiG92NkBQEwgfEwgcMGCCsGAQUFBwICMIG2DIGzUmVs
-aWFuY2Ugb24gdGhpcyBjZXJ0aWZpY2F0ZSBieSBhbnkgcGFydHkgYXNzdW1lcyBh
-Y2NlcHRhbmNlIG9mIHRoZSB0aGVuIGFwcGxpY2FibGUgc3RhbmRhcmQgdGVybXMg
-YW5kIGNvbmRpdGlvbnMgb2YgdXNlLCBjZXJ0aWZpY2F0ZSBwb2xpY3kgYW5kIGNl
-cnRpZmljYXRpb24gcHJhY3RpY2Ugc3RhdGVtZW50cy4wKQYIKwYBBQUHAgEWHWh0
-dHA6Ly93d3cuYXBwbGUuY29tL2FwcGxlY2EvMBMGA1UdJQQMMAoGCCsGAQUFBwMC
-ME0GA1UdHwRGMEQwQqBAoD6GPGh0dHA6Ly9kZXZlbG9wZXIuYXBwbGUuY29tL2Nl
-cnRpZmljYXRpb25hdXRob3JpdHkvd3dkcmNhLmNybDAdBgNVHQ4EFgQU7vqIfJhY
-/X2MkfUzZ09zSbuq5O4wCwYDVR0PBAQDAgeAMBAGCiqGSIb3Y2QGAwEEAgUAMA0G
-CSqGSIb3DQEBBQUAA4IBAQBhSQLhTOPAIubqCWQo/PE6Ibo8SIp7nJs3scn9SyxZ
-xJCZKWHJIsHQc8mlSshgNweWzMLXwHtOuV2P7Gu+4hVC6viUj35HlWuc42WEMD83
-Q9ztnbhHFEO27By0Ogv5j0MslxwkMZ1lQ5B/jdJ7I/IMa0pzmIZ75gcQC79Yur0Y
-EBrjSJhWESpwnP1165GdnfAMsoDRIICFPjH/RwVtcfoFqcujcmGlkDb/fRYI7sUN
-TQWayJWpTpl2kk6fToRWedwVsO+Wo6jesF93HziyoiMGv/ZsBqU97o5tc9yYb283
-FfyCQCIf/myb9lkxhYkwAEFcJiA1EvEIns1YogRlavsL
------END CERTIFICATE-----
-Bag Attributes
-    friendlyName: testAPN
-    localKeyID: EE FA 88 7C 98 58 FD 7D 8C 91 F5 33 67 4F 73 49 BB AA E4 EE 
-Key Attributes: <No Attributes>
------BEGIN ENCRYPTED PRIVATE KEY-----
-MIIFDjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIP1sglTmNa+QCAggA
-MBQGCCqGSIb3DQMHBAiHnz0S7++cqgSCBMj6aT2tgl720pDqknYzMRi7vIFXd6FU
-QSy6j2EjiEq9JPFaSzGLMihGtNyMeJ6zDclzEJoP4+PC8tYBd5Ij2dVU0k0EEksv
-gEix8deokPB9npaksC/OP61vz9G40deMJ8URqKB9cpo6+zTpdO7ful0yAB++fLez
-y7qzAnd6T1MgJiMs7yBmQNq33UghOG9KYT+NTMT6hQ1CJ2l4iB6HJhW0X/sjo0qJ
-l9c+ccZqBwjG9DsXTi+Vx+hRDB6xD+E8aD8kwcrOuV5u+geRLQSnBFSc97CWi3aX
-OY+wClWEPwYwrx5g5tTXN3Ee07ydMzLA8CY6BjnsfCECtDNA5B//aGx6+BB1Zbd+
-YFg7xW7FC0VK1uq/gpsGsfRX6y+d1xkNw0UMaPRaxeRiqXuaK7iHHYWz6LHybw1m
-46ypsOEnLK+tHSv1XZgAGgM3zIE8YH1Ls6Hmtbzsnp1gSTzBmwBqx3WaCUi7sqYN
-oSUrQhBDoxXzwwCQ78KHqdme8V6uec9NRtv236y65jt1ycRSNVkZDrwUcqf8PpXG
-U7D0E6OmRLRTd91VTvTJOjLvCwYKhqt5VkF0kicSf2fE35Meejz2WW2KUKDCTyER
-Pd0Xi+u94JxXREdhDH0GVQSbfbJ5ieA5u0G7pYcDX8qOzIunECoxtzM03NVAhuAE
-s3axsDsBSQuSI3zMwxa4JusFdkL318GBeya9aQnojVfyu5oUCADZx69+/dn3Zru0
-0SLFEhYdSNJ+cqlrkNgyQk+dxO927hoZjjye59lWNcVzySdO0Qz7R6HmO+30DbG2
-5PIFdMzhNGfYMGOrIJWTpLM0XtBSCmTpOWfhf2CdpFhz9xLtq1lXOVMlGswUnoG1
-s3WENfQdiMESLmO1a07GYTT+b357TUqNUQzvC+kbbTYtk0GDP14a9obMsRvWhkNx
-+uB04AYcFrnbzjn1d8wRnUmVbOjLFZ1T3FS0XgvHv3MsLRbFegBtHklGYwZJyG0i
-kDn3fixTMDQClRx7r+dh3Vj+bgent4n+h6Rs0XYpbufdqOUGoIKgG9PsgHtJESbc
-ii3TPMAtRGwRuya2G9Yka11k56PLg6oimJUZrh6CmYkRhBzbYnPFZBo03xgmM8lT
-8mkKmPCxCfDTq6ar844z7mv73dMcfshvkcurlsuf5SEIu8iFFD0D1FajP0fWbHQW
-weLz5LZBknMEfx1M0OqYLBIQGCjUlXuuXZ/U+Y0/lE0SV/ctciaM2IbWX7ZMVFzU
-Pd8ebPpKdoyhKw1RZjFTJNuPL6g8NBUcWZvfDIUuHTtuLy6Pz1P+jVPmQAtZicqi
-hu/MWSfjJS28MQyr8IhiHpx5WSGcCQMWZ4i9eHDwt88VYgwphB/15954LCOefHzK
-h2HpR+q6frB3sZ241a6sIFXLFSFeq6HzRxVWPi8UfPkwhXFC/XXhBDX0Om9lllXr
-GTGbFcKmZHM32V3Xznec2yUVSvf8TX3GrEjLXRHAG7U7URxzsnk7cqXURftHmMpZ
-O/xl9EXT4B1hfPGggcxY03hxrnCNbVn/K1CKEfx3zh2dZHYDZtZo0BosWl/RTaCY
-S9bPNneMaJz551uzHcA1vGPWqbQeJvykVP2hO1G/c6YTSCQIpw9YgGrXSL/k3vjI
-LIc=
------END ENCRYPTED PRIVATE KEY-----

+ 1 - 1
Controller/AccessLog.py

@@ -116,7 +116,7 @@ class AccessLog(View):
         data_list = redisObj.lrange(logKey, 0, -1)
         redisObj.del_data(key=logKey)
         ModelService.add_batch_log(data_list)
-        qs = Access_Log.objects.all().order_by(order)
+        # qs = Access_Log.objects.all().order_by(order)
         if not page or not line:
             return response.json(444, 'page,line')
         check_perm = ModelService.check_perm(userID=userID, permID=20)

+ 36 - 2
Controller/Test.py

@@ -12,7 +12,7 @@
 @Contact: chanjunkai@163.com
 """
 from django.views.generic.base import View
-
+import os
 '''
 http://192.168.136.40:8077/Test
 '''
@@ -21,15 +21,49 @@ from Ansjer.config import BASE_DIR
 import json
 from alipay import AliPay
 import time
+import apns2
 
 
 # 测试接口sdk
 class Test(View):
 
     def get(self, request, *args, **kwargs):
-        return self.do_get_putOss_url(request.GET)
+        request_dict = request.GET
+        return self.do_apns(request_dict)
+        # return self.do_get_putOss_url(request.GET)
         # return self.do_gcm_push(request)
 
+    def do_apns(self,request_dict):
+        token_val = request_dict.get('token_val',None)
+        pem_path = os.path.join(BASE_DIR,'Ansjer/file/apns_pem/apns-dev.pem')
+        print(pem_path)
+        response = ResponseObject()
+        # apns_config = {
+        #     'appbundleId': {'pem_path': 'xxxx', 'topic': 'topic', 'password': 'password'}
+        # }
+        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')
+            cli = apns2.APNSClient(mode="dev", client_cert=pem_path, password='1234')
+            now_time = int(time.time())
+            push_data = {"alert": "Motion ", "event_time": now_time, "event_type": '51', "msg": "",
+                         "received_at": now_time, "sound": "sound.aif", "uid": "XFDJUHUIOKJHYTGSFFDR"}
+            alert = apns2.PayloadAlert(body=push_data, title="title!")
+            payload = apns2.Payload(alert=alert)
+            n = apns2.Notification(payload=payload, priority=apns2.PRIORITY_LOW)
+            res = cli.push(n=n, device_token=token_val, topic=pem_path)
+            # 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_get_putOss_url(self, request_dict):
         import oss2
         obj_name = request_dict.get('obj_name','')

+ 1 - 1
Service/TemplateService.py

@@ -28,7 +28,6 @@ class TemplateService:
             'account/delUser',
             'account/setUserValid',
             'account/unsharedUserEquipment',
-            # 'equipment/queryUserEquipment',
             'equipment/addNewUserEquipment',
             'equipment/delUserEquipment',
             'equipment/modifyUserEquipment',
@@ -61,6 +60,7 @@ class TemplateService:
             'deviceShare/deleteUser',
             'equipment/delete',
             'equipment/add',
+            'equipment/query'
         ]
         return apiList