From 5129ffb9039fa4c15a32da47d9396ef803d5976c Mon Sep 17 00:00:00 2001 From: Sergey Afonin Date: Wed, 20 Apr 2022 09:51:36 +0300 Subject: [PATCH] - fix issue with returned reason --- apns2/client.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/apns2/client.py b/apns2/client.py index 3d07968..ca5f1f4 100644 --- a/apns2/client.py +++ b/apns2/client.py @@ -90,12 +90,16 @@ class APNsClient(object): priority: NotificationPriority = NotificationPriority.Immediate, expiration: Optional[int] = None, collapse_id: Optional[str] = None) -> None: stream_id, reason = self.send_notification_async(token_hex, notification, topic, priority, expiration, collapse_id) - result = self.get_notification_result(stream_id, reason.get('reason')) - print(123, result) + result = self.get_notification_result(stream_id, reason) if result != 'Success': + if isinstance(result, str): + result = json.loads(result) if isinstance(result, tuple): reason, info = result raise exception_class_for_reason(reason)(info) + elif isinstance(result, dict): + reason = result.get('reason') + raise exception_class_for_reason(reason) else: raise exception_class_for_reason(result)