Changes between Version 45 and Version 46 of Notifications
- Timestamp:
- Dec 10, 2009, 7:38:00 PM (15 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Notifications
v45 v46 2 2 3 3 = BOINC Notification System = 4 5 4 As the number of projects increase it becomes increasingly difficult for volunteers to keep track of any relevant news a project publishes. Volunteers may only check project websites once in a blue moon. A system is needed to keep the volunteers engaged with a project. 6 5 … … 30 29 31 30 == Feeds == 32 33 31 When a volunteer attaches to a project, one or more notification feeds become available to them. These feeds are published using the [http://www.rssboard.org/rss-2-0 RSS 2.00 specification]. 34 32 35 33 Example feeds a project may wish to expose are: 36 * Project news ({{{http://<project_url>/rss_main.php}}}) 37 * Project personalization feed (welcome message, useful links, milestones) 38 * Scientist blogs 34 * Project Notifications ({{{http://<project_url>/notify_rss.php}}}) 35 * Scientist blogs 39 36 * Administrator blogs 40 * Private Messages41 * Forum threads that a volunteer is monitoring42 * A whole forum to answer questions or to deal with problems as they arise.43 37 44 38 === Request === 45 46 Example: 47 {{{ 48 http://www.example.com/rss_main.php 49 http://www.example.com/forum_pm_rss.php?auth=4ebd3e5fd8a88f48ed708f04f81fefb7 50 http://www.example.com/forum_pm_rss.php?auth=4ebd3e5fd8a88f48ed708f04f81fefb7&guid=blah&action=read 39 Example: 40 {{{ 41 http://www.example.com/notify_rss.php 42 http://www.example.com/notify_rss.php?auth=4ebd3e5fd8a88f48ed708f04f81fefb7 51 43 }}} 52 44 … … 55 47 || auth || <null> || Authenticator of the volunteer requesting the feed data. NOTE: For private feeds no information should be provided without the full authenticator. Weak authenticators should be treated as though no authenticator has been provided.|| 56 48 || last_guid || <null> || The last guid received by the client.|| 57 || guid || <null> || The GUID in which an action should be preformed on. ||58 || action || <null> || Which action should be recorded. (Read, Deleted) ||59 49 60 50 === Response === 61 62 51 Example: 63 52 {{{ … … 72 61 <pubDate>Sun, 29 Sep 2002 19:59:01 GMT</pubDate> 73 62 <guid>http://www.example.com/2</guid> 74 < param_1>64</param_1>63 <boinc_param_1>64</boinc_param_1> 75 64 </item> 76 65 </channel> … … 82 71 || pubDate || <scheduler reply time> || RFC 822 representation of the scheduler reply time || 83 72 || guid || <null> || Unique message ID prefixed with the master URL of the project || 84 || param_1 || <null> || Optional parameter for the item description || 85 || param_2 || <null> || Optional parameter for the item description || 86 || param_3 || <null> || Optional parameter for the item description || 87 || param_4 || <null> || Optional parameter for the item description || 88 || param_5 || <null> || Optional parameter for the item description || 73 || boinc_param_1 … boinc_param_x || <null> || Optional parameter(s) for the item description || 89 74 90 75 '''NOTE''': While on face value the inclusion of the GUID to the client software might seem overkill, it serves two important purposes. … … 93 78 94 79 == Feed List == 95 96 80 The feed list is published to the client software as part of the client parse-able project preferences. 97 81 … … 102 86 <notification_feeds> 103 87 <feed> 104 <url>http://www.example.com/ rss_main.php</url>105 <name>Project N ews</name>88 <url>http://www.example.com/notify_rss.php</url> 89 <name>Project Notifications</name> 106 90 <update>86400</update> 107 91 </feed> 108 92 <feed> 109 <url>http://www.example.com/ forum_pm_rss.php</url>110 <name> Private Messages</name>93 <url>http://www.example.com/science_blog_rss.php</url> 94 <name>Science Blog</name> 111 95 <update>86400</update> 112 <private />113 96 </feed> 114 97 </notification_feeds> … … 121 104 || update || 86400 || Number of seconds in between updates || 122 105 || last_update || 0 || The epoch time of the last successful update || 123 || private || false || Should the authenticator be provided to the feed ||124 106 || application_only || false || Feed is used by an application and should not be shown in BOINC Manager or the BOINC Screen saver. || 125 107 … … 188 170 189 171 === Feed List === 190 191 172 Feeds will be added and removed from the feed list at the end of a scheduler operation. 192 173 … … 196 177 197 178 === Feeds === 198 199 179 Periodically the client will loop through the feed list and download a feed update. The feed update will be stored in a temporary file and any new items will be added to and old items will be deleted from the existing feed list. 200 180 … … 206 186 207 187 === Feed Storage === 208 209 188 All data related to the notification system will be stored in a directory off of the main data directory. 210 189