MelangeNotifications


 * Launchpad Entry: NovaSpec:melange-notifications
 * Created:
 * Contributors: troy-toman

Summary
This spec is derived directly from the Nova Notifications System spec. NotificationSystem

Melange has a need to make notifications available to users in as close to a real-time manner as is feasible. The proposed solution is to simply create the notifications on the message queue, and then Yagi (or some other adapter) can publish them as needed. Clients subscribe to the appropriate notifications to receive updates when their are notifications waiting.

Rationale
We need to be consistent in how we push notifications with the other OpenStack components (notably Glance and Nova.)

User stories
As a Melange administrator, I need to receive notifications in a timely manner so that I can respond to emergencies.

As a Melange administrator, I need to support multiple clients for content easily so that I do not need to use my resources to develop individual interfaces.

As a systems integrator, I want to receive timely updates of usage data and disperse them to various customers (both internal and external) for billing, decision support, and analytic purposes.

General Requirements

 * 1) Services or components that produce notifications MUST make those notifications available in Atom 1.0 format.
 * 2) There MUST be a central configuration setting that defines zero or more hubs to be used for notifications.
 * 3) The  element SHOULD contain structured data in a standard format (technically, this is a requirement on the service producing the notification; however, the notification service should validate that the is valid).

Event API
Following the Nova convention, there will not be an API for events. Events will be available in the queue only.

Hub Development
We are not using hubs in the notification implementation