diff --git a/flashcards/models.py b/flashcards/models.py index f6d11fc..5dd70b0 100644 --- a/flashcards/models.py +++ b/flashcards/models.py @@ -2,7 +2,7 @@ from math import log1p from math import exp from datetime import timedelta -from gcm import GCM +from gcm import GCM, gcm from django.contrib.auth.models import AbstractUser, UserManager from django.contrib.auth.tokens import default_token_generator from django.core.cache import cache @@ -100,10 +100,13 @@ class User(AbstractUser, SimpleEmailConfirmationUserMixin): def notify(self): gcm = GCM(GCM_API_KEY) - gcm.plaintext_request( - registration_id=self.registration_id, - data={'poop': 'data'} - ) + try: + gcm.plaintext_request( + registration_id=self.registration_id, + data={'poop': 'data'} + ) + except (gcm.GCMInvalidRegistrationException, gcm.GCMMissingRegistrationException): + self.registration_id = None self.last_notified = now() self.save()