Changes between Version 3 and Version 4 of S3/Notifications


Ignore:
Timestamp:
09/05/13 10:17:50 (11 years ago)
Author:
Dominic König
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • S3/Notifications

    v3 v4  
    3333=== Process ===
    3434
     35The notification process has 4 phases:
     36
    3537[[Image(notification_process.png)]]
    3638
    37 1) A background task "check_subscriptions" (installed in zzz_1st_run.py) is run every 5 minutes to check for updates of resources which have subscriptions. The "check_subscriptions" task schedules a separate, asynchronous "notify_notify" task for each resource/subscription pair which has updates.
     391) A background task "check_subscriptions" (installed in zzz_1st_run.py) is run every 5 minutes to check for updates of resources which have subscriptions. This task schedules a separate, asynchronous "notify_notify" task for each resource/subscription pair which has updates.
    38402) Each "notify_notify" task generates a local HTTP POST request to the subscribed controller (request format "msg"), applying the subscription filters.
    39 3) This request is handled by the S3Notifications.send() method, impersonating the subscriber. The send() method extracts the new/updated records, and renders and sends the notification message(s) to the subscriber.
    40 4) Sending of the messages uses current.msg.send_by_pe_id(), which in turn uses the contact information of the subscriber stored in pr_contact.
     413) This request is handled by the S3Notifications.send() method, impersonating the subscriber. The send() method extracts the new/updated records, and renders and sends the notification message(s) to the subscriber. Sending of the messages uses current.msg.send_by_pe_id(), which in turn uses the contact information of the subscriber stored in pr_contact.
     424) Messages are send asynchronously by the msg_process_outbox task.
    4143
    4244=== Framework ===