IPP WG,
We agreed in the last IPP phone conference to generate documents "with
pictures" describing the different scenarios where notification services may
play a role in IPP. I'm attaching the document in .pdf format with my take
on it.
Greetings,
-Hugo
Hugo had sent me a copy of this paper last Friday.
In the updated Notification Spec that I posted yesterday, I have attempted
to show two different scenarios where a notification services may play a
role in IPP. One is transparent to the client and the other is transparent
to the IPP Printer. Both are able to be covered with our current IPP
Notification specification. I checked with Hugo and he confirmed that the
two figures captures his intent in his paper for the use of notification
services by an IPP Printer.
Also in Hugo's paper is a proposal to specify a Notification Delivery
Service protocol between the IPP Printer and third party notification
services that an IPP Printer could support. This protocol would be
completely complimentary to our IPP Notification spec; an IPP Printer could
use the Notification Delivery Service Protocol or not. Having notification
services that support such a protocol would reduce the effort of supporting
IPP notification in IPP Printers. We need to discuss how to standardize
such a protocol. Maybe as a PWG standard that is published through the
ISTO?
Here is the extract from the IPP Notification spec that shows these two
scenarios that use third party notification services:
2.3 Relationship between the Printer object and the Notification Delivery
Service
The IPP Notification model does not mandate that the IPP Printer object
implement the full semantics of subscription, report generation, and
multiple delivery methods itself. This section describes two methods of
using third party notification services. The first is transparent to the
client and the second is transparent to the IPP Printer.
2.3.1 Use of a Notification Service transparently to clients
An implementation may be configured to use some other notification service
to either (1) delivery the Notifications to the Notification Recipient(s)
specified in the IPP Subscription or (2) keep the Subscriptions, accept
events, possibly format the notification in the natural language of the
Notification Recipient when a Human Consumable text format is used, and
deliver the Notifications to the Notification Recipient(s) indicated in the
IPP Subscription. Figure 4 shows this partitioning.
output device or server
desktop or server +---------------+
+--------+ | ########### |
| client |---IPP subscription--------># Printer # |
+--------+ | # Object # |
| #####|##### |
+-------|-------+
| Subscriptions
*******| OR Events
+------------+ * |
|Notification| * +------v--------+
|Recipient |<--IPP Notifications-----| Notification |
+------------+ * | Service |
* +---------------+
*
*** = Implementation configuration opaque boundary
Figure 4 - Opaque Use of a Notification Service Transparent to the Client
In any case, the interface between the IPP Printer and the other
notification service is outside the scope of this document and is intended
to be transparent to the client and this specification.
2.3.2 Use of Notification Service transparently to the IPP Printer
Another way that a Notification Service can be used is if the Notification
Recipient indicated in the IPP Subscription is a notification service
(transparent to the IPP Printer), which in turn forwards the Notification to
the Ultimate Notification Recipient using additional parameters in the IPP
Subscription (URI parameters or subscriber user data). In such cases, the
Ultimate Notification Recipient has also subscribed directly with the other
notification service (by means outside this document). As far as the IPP
Printer is concerned, the IPP Subscription indicated that the IPP Printer is
to delivery Notifications to the Notification Recipient (Notification
Service) using the specified notification delivery method. The method that
the Notification Recipient uses for delivering the notification to the
Ultimate Notification Recipient is beyond the scope of this document and is
transparent to the IPP Printer. However, the client does have to know how
to pass additional information to the Notification Recipient in the IPP
Subscription using either extra parameters in the URI or subscriber user
data. Examples of this latter approach are paging, immediate messaging
services, and NOS vendors infrastructure. Figure 5 shows this approach.
desktop or server server or printing device
+---------------+
+--------+ | ########### |
| client |----------IPP Subscriptions---------># Printer # |
+--------+ | # Object # |
| #####|##### |
+------------+ +------------+ +-------|-------+
|Ultimate | |Notification|<---IPP Notifications-----+
|Notification|<----|Recipient |
|Recipient | +------------+
+------------+ (Notification Service)
Figure 5 - Use of a Notification Service transparent to the IPP Printer