Ver código fonte

捕获调用推送sdk异常

lang 3 anos atrás
pai
commit
59d7a2eb34
2 arquivos alterados com 36 adições e 27 exclusões
  1. 22 17
      Controller/DetectController.py
  2. 14 10
      Controller/DetectControllerV2.py

+ 22 - 17
Controller/DetectController.py

@@ -220,23 +220,28 @@ class NotificationView(View):
             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)})
+
+                try:
+                    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)})
+                except Exception as e:
+                    logger.info("errLine={errLine}, errMsg={errMsg}".format(errLine=e.__traceback__.tb_lineno,errMsg=repr(e)))
+                    continue
             if detect_med_type == 1:
                 do_apns_code = '只存库不推送'
                 do_fcm_code = '只存库不推送'

+ 14 - 10
Controller/DetectControllerV2.py

@@ -181,16 +181,20 @@ class NotificationView(View):
                 kwag_args['msg_text'] = msg_text
                 logger.info('推送要的数据: {}'.format(kwag_args))
 
-                # 推送消息
-                if not have_dkey:
-                    if push_type == 0:  # ios apns
-                        do_apns_code = self.do_apns(**kwag_args)
-                        logger.info('进入do_apns,uid={}'.format(uid))
-                        logger.info('do_apns_code===={}'.format(do_apns_code))
-                    elif push_type == 1:  # android gcm
-                        do_fcm_code = self.do_fcm(**kwag_args)
-                    elif push_type == 2:  # android jpush
-                        do_jpush_code = self.do_jpush(**kwag_args)
+                try:
+                    # 推送消息
+                    if not have_dkey:
+                        if push_type == 0:  # ios apns
+                            do_apns_code = self.do_apns(**kwag_args)
+                            logger.info('进入do_apns,uid={}'.format(uid))
+                            logger.info('do_apns_code===={}'.format(do_apns_code))
+                        elif push_type == 1:  # android gcm
+                            do_fcm_code = self.do_fcm(**kwag_args)
+                        elif push_type == 2:  # android jpush
+                            do_jpush_code = self.do_jpush(**kwag_args)
+                except Exception as e:
+                    logger.info("errLine={errLine}, errMsg={errMsg}".format(errLine=e.__traceback__.tb_lineno,errMsg=repr(e)))
+                    continue
 
                 # 以下是存库
                 userID_id = up["userID_id"]