SUBSCRIBE and NOTIFY (rfc 3265)
- ability to receive asynchronous notification of events, on subscription
- general concept is that the entities in the network can SUBSCRIBE (which needs to be refreshed periodically) to resource or call state, and be notified when the state changes
- SUBSCRIBE requests create a dialog
- terms and definitions
- Event Package, set of state info to be reported by a notifier to a SUBSCRIBEr
- Event Template Package, special kind of event package which defines a set of event packages with a set od states which may be applied to all possible event packages
- Notification, act of sending a NOTIFY message to the SUBSCRIBER, informaing the state of resource
- Notifier, UA which generates the NOTIFY request, and typically accepts SUBSCRIBE request to create subscriptions
- State Agent, notifier which publishes the state on behalf of a resource, they may need to gather such info from multiple sources
- SUBSCRIBER, UA which receives a NOTIFY request, typically generate SUBSCRIBE request
- subscription is a set of application state associated with a dialog, containing a pointer to the associate dialog, the even package name, and an identifiction token
- Subscription Migration, act of moving a subscription from one notifier to another
- "Expires" Header
- SUBSCRIBE requests should contain an "Expires" header, indicating the duration of subscription
- if no "Expires" header is present then the implied default defined in the even package is used
- 200 class response to a SUBSCRIBE request must contain an "Expires" header, the period can be shorter(but not longer) than specified in the request
- SUBSCRIBE with an "Expires" of 0 means
- the request is for unSUBSCRIBE from an event
- can also cause a fetch of state
- successful unsubscription will also trigger a final NOTIFY message