diff options
author | Sawyer Bergeron <sbergeron@iol.unh.edu> | 2017-12-15 14:35:40 -0500 |
---|---|---|
committer | Sawyer Bergeron <sbergeron@iol.unh.edu> | 2018-01-02 22:29:22 +0000 |
commit | eb7cb88c62feae0b412f4ecc9a5e62c3f7bdc138 (patch) | |
tree | 18dcaf0f8e2fe6204a506ae51607c46219f4dcb6 /src/notification/tasks.py | |
parent | ee1caa30008635717943bfdfecc692cde052a461 (diff) |
Implement Notification Framework with Initial Email Support
JIRA: None
Notification/notifier objects are now created with title,
content, sender, associated resource, and recipient and there is
now support for emails at the very least to be sent as notifications.
Change-Id: I456cf0e901d9a1e2a1e7d187dcc03d28fca003fb
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Diffstat (limited to 'src/notification/tasks.py')
-rw-r--r-- | src/notification/tasks.py | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/src/notification/tasks.py b/src/notification/tasks.py deleted file mode 100644 index 7f73762..0000000 --- a/src/notification/tasks.py +++ /dev/null @@ -1,49 +0,0 @@ -############################################################################## -# Copyright (c) 2016 Max Breitenfeldt and others. -# -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -############################################################################## - - -import os -import sys -from datetime import timedelta - -from celery import shared_task -from django.conf import settings -from django.utils import timezone - -from notification.models import BookingNotification - -# this adds the top level directory to the python path, this is needed so that we can access the -# notification library -sys.path.append(os.path.join(os.path.dirname(__file__), '..', '..')) - -from dashboard_notification.notification import Notification, Message - - -@shared_task -def send_booking_notifications(): - with Notification(dashboard_url=settings.RABBITMQ_URL, user=settings.RABBITMQ_USER, password=settings.RABBITMQ_PASSWORD) as messaging: - now = timezone.now() - notifications = BookingNotification.objects.filter(submitted=False, - submit_time__gt=now - timedelta(minutes=1), - submit_time__lt=now + timedelta(minutes=5)) - for notification in notifications: - message = Message(type=notification.type, topic=notification.booking.resource.name, - content=notification.get_content()) - messaging.send(message) - notification.submitted = True - notification.save() - -@shared_task -def notification_debug(): - with Notification(dashboard_url=settings.RABBITMQ_URL) as messaging: - notifications = BookingNotification.objects.all() - for notification in notifications: - message = Message(type=notification.type, topic=notification.booking.resource.name, - content=notification.get_content()) - messaging.send(message) |