diff --git a/djangoldp_notification/models.py b/djangoldp_notification/models.py
index 2c5a3d4431e78fca3fffa826f02ade936c303528..980dbfbc75303b76f0582619fdfed292bebe0458 100644
--- a/djangoldp_notification/models.py
+++ b/djangoldp_notification/models.py
@@ -79,32 +79,42 @@ def send_request(target, object_iri):
 @receiver(post_save, sender=Notification)
 def send_email_on_notification(sender, instance, created, **kwargs):
     if created and instance.summary and settings.JABBER_DEFAULT_HOST and instance.user.email:
-        try: 
-            who = requests.get(instance.author).json()['name'] or 'Unknown Person' # I've no idea how to handle dead links.
-            where = requests.get(instance.object).json()['name'] or 'some unknown place' # So let's get to the unknown :)
-            if(instance.author == instance.object):
-                where = "has sent you a private message"
+        try:
+            if instance.author.startswith(settings.SITE_URL):
+                who = str(Model.resolve_id(instance.author.replace(settings.SITE_URL,'')))
+            else:
+                who = requests.get(instance.author).json()['name']
+        except:
+            who = "Unknown Person"
+
+        try:
+            if instance.object.startswith(settings.SITE_URL):
+                where = str(Model.resolve_id(instance.object.replace(settings.SITE_URL,'')))
             else:
-                where = "mention you on " + where
-            html_message = loader.render_to_string(
-                'email.html',
-                {
-                    'on': settings.JABBER_DEFAULT_HOST,
-                    'instance': instance,
-                    'author': who,
-                    'object': where
-                }
-            )
-            send_mail(
-                'Notification on ' + settings.JABBER_DEFAULT_HOST,
-                instance.summary,
-                settings.EMAIL_HOST_USER or "noreply@" + settings.JABBER_DEFAULT_HOST,
-                [instance.user.email],
-                fail_silently=True,
-                html_message=html_message
-            )
+                where = requests.get(instance.object).json()['name']
         except:
-            logging.error('Djangoldp_notifications: Can\'t mail the user')
-    else:
-        if created:
-            raise Exception('Djangoldp_notifications: Misconfiguration, missing JABBER_DEFAULT_HOST or no mail for user found')
+            where = "Unknown place"
+
+        if(who == where):
+            where = "has sent you a private message"
+        else:
+            where = "mention you on " + where
+
+        html_message = loader.render_to_string(
+            'email.html',
+            {
+                'on': settings.JABBER_DEFAULT_HOST,
+                'instance': instance,
+                'author': who,
+                'object': where
+            }
+        )
+
+        send_mail(
+            'Notification on ' + settings.JABBER_DEFAULT_HOST,
+            instance.summary,
+            settings.EMAIL_HOST_USER or "noreply@" + settings.JABBER_DEFAULT_HOST,
+            [instance.user.email],
+            fail_silently=True,
+            html_message=html_message
+        )