Explorar o código

添加自主推送统计

tanghongbin %!s(int64=4) %!d(string=hai) anos
pai
achega
32edc956fc
Modificáronse 2 ficheiros con 16 adicións e 1 borrados
  1. 12 1
      Controller/DetectController.py
  2. 4 0
      Model/models.py

+ 12 - 1
Controller/DetectController.py

@@ -199,18 +199,25 @@ class NotificationView(View):
             kwag_args['token_val'] = token_val
             kwag_args['msg_title'] = msg_title
             kwag_args['msg_text'] = msg_text
+            push_server_status = 0
             #推送
             if detect_med_type == 2 or detect_med_type == 0:
                 if push_type == 0:  # ios apns
                     print('do_apns')
                     # self.do_apns(**kwag_args)
                     do_apns_code = self.do_apns(**kwag_args)
+                    if isinstance(do_apns_code, int):
+                        push_server_status = do_apns_code
+                    else:
+                        push_server_status = 400
                 elif push_type == 1:  # android gcm
                     print('do_fcm')
                     do_fcm_code = self.do_fcm(**kwag_args)
+                    push_server_status = 200
                 elif push_type == 2:  # android jpush
                     print('do_jpush')
                     do_jpush_code = self.do_jpush(**kwag_args)
+                    push_server_status = do_jpush_code
                     # return JsonResponse(status=200, data={'code': 0, '状态:': self.do_jpush(**kwag_args)})
             if detect_med_type == 1:
                 do_apns_code = '只存库不推送'
@@ -230,7 +237,11 @@ class NotificationView(View):
                     alarm='Motion \tChannel:{channel}'.format(channel=channel),
                     is_st=int_is_st,
                     receiveTime=n_time,
-                    addTime=now_time
+                    addTime=now_time,
+                    message_id='',
+                    push_type=push_type,
+                    push_server_status=push_server_status,
+
                 ))
                 if is_sys_msg:
                     sys_msg_text = self.get_msg_text(channel=channel, n_time=n_time, lang=lang, tz=tz,

+ 4 - 0
Model/models.py

@@ -271,6 +271,10 @@ class Equipment_Info(models.Model):
     receiveTime = models.CharField(blank=True, default='', max_length=16, verbose_name=u'接收到报警时间')
     userID = models.ForeignKey(Device_User, null=True, blank=True, to_field='userID', on_delete=models.CASCADE)
     is_st = models.SmallIntegerField(default=0, verbose_name='是否截图')  # 0 否,1 是图,2,视频
+    message_id = models.CharField(max_length=32, default='', verbose_name='第三方推送服务器返回的id')
+    push_type = models.SmallIntegerField(default=0, verbose_name='第三方推送服务器标志。0:APNS推送,1:谷歌推送,2:极光推送')
+    push_server_status = models.IntegerField(default=200, verbose_name='是否成功推送到第三方服务器。200:成功,other:失败')
+    push_device_status = models.SmallIntegerField(default=-1, verbose_name='是否成功推送到目标设备。0:失败,1:成功')
     addTime = models.IntegerField(verbose_name='添加时间', default=0)
 
     def __str__(self):