Changes between Version 76 and Version 77 of BluePrint/Messaging
- Timestamp:
- 06/17/10 19:11:57 (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
BluePrint/Messaging
v76 v77 4 4 5 5 == Core Architecture == 6 === Inbound Messages === 6 7 * When a message is picked up by the handler, it decides whether it's an XForm or not. 7 8 * If it is, then it is routed direct to the relevant resource. 8 9 * If not then it is added to the Master Message Log ({{{msg_log}}}) 9 10 * When new messages arrive in the Master Message Log, then the Parser looks for keywords & tries to Route automatically - either to a resource or to a {{{pe_pentity}}} (NB 'routing' to a resource is actually just 'tagging'). 11 === Routing within Eden === 10 12 * Users can view the Master Message Log via the 'Ticketing Module' UI & do manual Routing - either to a resource or a {{{pe_pentity}}}. 11 13 * Users can Subscribe to Resources in order to receive copies of all messages which are routed to a resource. … … 13 15 * Button becomes 'Unsubscribe' if user already subscribed. 14 16 * When a user visits a Resource via it's Web UI, then the [wiki:RESTController] scans the {{{msg_log}}} & provides access to associated messages in the views (display/update views have a list of associated messages in a table below the main record. list views have an extra column showing the number of messages tagged to this resource & number unread by this user ({{{unread(read)}}}) which is hyperlinked to a view which displays these records. 17 === Outbound Messages === 18 * If a pentity has a message sent to them (they subscribed or routed to them automatically or manually) then as well as being tagged for them, a copy is placed in the Outbox with them as recipient. Their list of Contacts is browsed & the appropriate contact method is used, depending on the priority of the message (e..g. a user may want to be sent an SMS for a high priority message, such as a security alert, but just be sent an email if it's just an update to one of their projects). If there are multiple methods available for a priority level then all methods are used at once - each having a separate entry in the outbox. 15 19 * XML exports (such as RSS feeds) include tagged messages as linked resources: 16 20 * S3ResourceController has a hook for a function that retrieves all message URLs for a resource: s3xrc = s3xrc.S3ResourceController(..., messaging=<function>) … … 18 22 * The XML exporter inserts one element <message url="..." unread="True/False"/> per message and resource element as child of the <resource> tag 19 23 * This can be used for any feeds that are produced of the XML exporter 20 * ~~Requires: make RSS feeds aXML export template~~24 * Requires: ~~make RSS feeds an XML export template~~ 21 25 22 26 [[Image(Message Flows.png)]]