We'd like to propose these new IPP operation extensions for registration. -------------------------------------------------------------------------- Type of registration: operation Proposed name of this operation: Set-Job-Attributes (or Modify-Job) Object Target (Job, Printer, etc. that operation is upon): Job Specification of this attribute (sic)(follow the style of IPP Model Section 3): This operation allows the client to modify attributes of previously submitted jobs. For example, if a large job aborts in the middle, "page-ranges" or "copies" could be modified and the job restarted. Printers that support Restart-Job should allow Job attributes to be set (changed) when the Job is in the Job Retention phase. (Job Retention: When a job enters one of the three terminal job states: 'completed', 'canceled', or 'aborted', the IPP Printer object MAY "retain" the job in a restartable condition for an implementation-defined time period. ) Job accounting must take into account any changed attributes when a retained Job is restarted. Set-Job-Attributes Request: Group 1: Operation Attributes Natural Language and Character Set: The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1. Target: Either (1) the "printer-uri" (uri) plus "job-id" (integer(1:MAX)) or (2) the "job-uri" (uri) operation attribute(s) which define the target for this operation as described in section 3.1.5. Requesting User Name: The "requesting-user-name" (name(MAX)) attribute SHOULD be supplied by the client as described in section 8.3. Attribute Fidelity: The "attribute-fidelity" operation attribute is used to specify whether or not the sets are atomic or not. If false, or not present, Printer sets what it can and returns the unset attribute/value pairs in Unsupported Atts group. If true, either all sets succeed or operation is rejected. Group 2: Job Attributes This is the group of attributes to be set and their requested new values. The following tables show which Job attributes can be set, which can be reset, and which are read-only. "Set?" Legend: S = Settable: attribute value can be set or modified any time the object is in appropriate state. P = Specifiable: attribute value can be specified when object is created, but not subsequently. N = Non-settable: Read-only. IPP Job Description Attributes +----------------------------+------+ | IPP Job Attribute | Set? | +----------------------------+------+ | job-uri | N | +----------------------------+------+ | job-id | N | +----------------------------+------+ | job-printer-uri | N | +----------------------------+------+ | job-more-info | N | +----------------------------+------+ | job-name | S | +----------------------------+------+ | job-originating-user-name | P | +----------------------------+------+ | job-state | N | +----------------------------+------+ | job-state-reasons | N | +----------------------------+------+ | job-state-message | N | +----------------------------+------+ | number-of-documents | N | +----------------------------+------+ | output-device-assigned | N | +----------------------------+------+ | time-at-creation | N | +----------------------------+------+ | time-at-processing | N | +----------------------------+------+ | time-at-completed | N | +----------------------------+------+ | job-printer-up-time | N | +----------------------------+------+ | number-of-intervening-jobs | N | +----------------------------+------+ | job-message-from-operator | S | +----------------------------+------+ | job-k-octets | N | +----------------------------+------+ | job-impressions | S | +----------------------------+------+ | job-media-sheets | S | +----------------------------+------+ | job-k-octets-processed | N | +----------------------------+------+ | job-impressions-completed | N | +----------------------------+------+ | job-media-sheets-completed | N | +----------------------------+------+ | attributes-charset | P | +----------------------------+------+ | attributes-natural-language| P | +----------------------------+------+ IPP Job Template Attributes +============================+===+ | IPP Job Attribute |Set| | | ? | +============================+===+ | job-priority | S | +----------------------------+---+ | job-hold-until | S | +----------------------------+---+ | job-sheets | S | +----------------------------+---+ |multiple-document-handling | S | +----------------------------+---+ | copies | S | +----------------------------+---+ | finishings | S | +----------------------------+---+ | page-ranges | S | +----------------------------+---+ | sides | S | +----------------------------+---+ | number-up | S | +----------------------------+---+ | orientation-requested | S | +----------------------------+---+ | media | S | +----------------------------+---+ | printer-resolution | S | +----------------------------+---+ | print-quality | S | +----------------------------+---+ Set-Job-Attributes Response: Printer should validate new attribute set and return 'successful-ok-conflicting-attributes', or 'client-error-conflicting-attributes' depending on "attribute-fidelity". Group 1: Operation Attributes Status Message: In addition to the REQUIRED status code returned in every response, the response OPTIONALLY includes a "status-message" (text) operation attribute. Natural Language and Character Set: The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2. Group 2: Unsupported Attributes See section 3.1.7 for details on returning Unsupported Attributes. Status codes: 'successful-ok' 'client-error-not-possible' 'successful-ok-ignored-or-substituted-attributes', 'successful-ok-conflicting-attributes', 'client-error-attributes-or-values-not-supported' 'client-error-conflicting-attributes' 'client-error-attribute-read-only' . -------------------------------------------------------------------------- Type of registration: operation Proposed name of this operation: Set-Printer-Attributes (or Modify-Printer) Object Target: Printer Specification of this attribute: This operation allows the client to modify attributes of a Printer. Set-Printer-Attributes Request: Group 1: Operation Attributes: Natural Language and Character Set: The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1. Target: The "printer-uri" (uri) operation attribute which is the target for this operation as described in section 3.1.5. Requesting User Name: The "requesting-user-name" (name(MAX)) attribute SHOULD be supplied by the client as described in section 8.3. "document-format" (mimeMediaType) : The client OPTIONALLY supplies this attribute. This is used to select the interpreter to which these attributes should be applied. Attribute Fidelity: The "attribute-fidelity" operation attribute is used to specify whether or not the sets are atomic or not. If false, or not present, Printer sets what it can and returns the unset attribute/value pairs in Unsupported Atts group. If true, either all sets succeed or operation is rejected. Group 2: Printer Attributes: This is the set of attributes to be set and their requested new values. Not all attributes are settable. The following tables show which Printer attributes can be set, which can be reset, and which are read-only. IPP Printer Job Template Attributes +======================+===+ |Printer: Default Value|Set| | Attribute | ? | +======================+===+ | job-priority-default | S | +----------------------+---+ | job-hold-until- | S | | default | | +----------------------+---+ | job-sheets-default | S | +----------------------+---+ |multiple-document- | S | | handling-default | | +----------------------+---+ | copies-default | S | +----------------------+---+ | finishings-default | S | +----------------------+---+ | sides-default | S | +----------------------+---+ | number-up-default | S | +----------------------+---+ |orientation-requested-| S | | default | | +----------------------+---+ | media-default | S | +----------------------+---+ | printer-resolution- | S | | default | | +----------------------+---+ | print-quality-default| S | +----------------------+---+ +======================+===+ | Printer: Supported |Set| | Values Attribute | ? | +======================+===+ |job-priority-supported| N | +----------------------+---+ |job-hold-until- | S | | supported | | +----------------------+---+ |job-sheets-supported | S | | | | +----------------------+---+ |multiple-document- | S | |handling-supported | | +----------------------+---+ | copies-supported | S | +----------------------+---+ | finishings-supported | S | | | | +----------------------+---+ | page-ranges- | S | | supported | | +----------------------+---+ | sides-supported | S | +----------------------+---+ | number-up-supported | S | +----------------------+---+ |orientation-requested-| S | | supported | | +----------------------+---+ | media-supported | S | +----------------------+---+ | media-ready |S|N| +----------------------+---+ | printer-resolution- | S | | supported | | +----------------------+---+ | print-quality- | S | | supported | | +----------------------+---+ IPP Printer Description Attributes +----------------------------+---+ | IPP Printer Attribute |Set| | | ? | +============================+---+ | printer-uri-supported | S | +----------------------------+---+ | uri-security-supported | S | +----------------------------+---+ |uri-authentication-supported| S | +----------------------------+---+ | printer-name | N | +----------------------------+---+ | printer-location | S | +----------------------------+---+ | printer-info | S | +----------------------------+---+ | printer-more-info | S | +----------------------------+---+ | printer-driver-installer | S | +----------------------------+---+ | printer-make-and-model | S | +----------------------------+---+ | printer-more-info- | S | | manufacturer | | +----------------------------+---+ | printer-state | N | +----------------------------+---+ | printer-state-reasons | N | +----------------------------+---+ | printer-state-message | S | +----------------------------+---+ | ipp-versions-supported | N | +----------------------------+---+ | operations-supported | S | +----------------------------+---+ | ipp-multiple-document-jobs-| N | | supported | | +----------------------------+---+ | charset-configured | S | +----------------------------+---+ | charset-supported | N | +----------------------------+---+ | natural-language-configured| N | +----------------------------+---+ | generated-natural-language-| N | | supported | | +----------------------------+---+ | document-format-default | S | +----------------------------+---+ | document-format-supported | S | +----------------------------+---+ | printer-is-accepting-jobs | N | +----------------------------+---+ | queued-job-count | N | +----------------------------+---+ | printer-message-from- | S | | operator | | +----------------------------+---+ | color-supported | S | +----------------------------+---+ | reference-uri-schemes- | S | | supported | | +----------------------------+---+ | pdl-override-supported | N | +----------------------------+---+ | printer-up-time | N | +----------------------------+---+ | printer-current-time | N | +----------------------------+---+ | multiple-operation-time-out| S | +----------------------------+---+ | compression-supported | S | +----------------------------+---+ | job-k-octets-supported | S | +----------------------------+---+ | job-impressions-supported | S | +----------------------------+---+ | job-media-sheets-supported | S | +----------------------------+---+ | pages-per-minute | N | +----------------------------+---+ | pages-per-minute-color | N | +----------------------------+---+ Set-Printer-Attributes Response: Group 1: Operation Attributes: Status Message: In addition to the REQUIRED status code returned in every response, the response OPTIONALLY includes a "status-message" (text) operation attribute. Natural Language and Character Set: The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2. Group 2: Unsupported Attributes: See section 3.1.7 for details on returning Unsupported Attributes. Status codes: 'successful-ok' 'client-error-not-possible' 'successful-ok-ignored-or-substituted-attributes', 'successful-ok-conflicting-attributes', 'client-error-attributes-or-values-not-supported' 'client-error-conflicting-attributes'. 'client-error-attribute-read-only' . -------------------------------------------------------------------------- Type of registration: operation Proposed name of this operation: Cancel-Current-Job Object Target: Printer Specification of this attribute: This operation allows a client to cancel the currently printing job without having to specify the job-id or job-uri. Cancel-Current-Job Request: Group 1: Operation Attributes Natural Language and Character Set: The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1. Target: The "printer-uri" (uri) operation attribute which is the target for this operation as described in section 3.1.5. Requesting User Name: The "requesting-user-name" (name(MAX)) attribute SHOULD be supplied by the client as described in section 8.3. Cancel-Current-Job Response: Group 1: Operation Attributes Status Message: In addition to the REQUIRED status code returned in every response, the response OPTIONALLY includes a "status-message" (text) operation attribute as described in sections 13 and 3.1.6. Natural Language and Character Set: The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2. Group 2: Unsupported Attributes See section 3.1.7 for details on returning Unsupported Attributes. Status codes: 'successful-ok' 'client-error-not-possible' -------------------------------------------------------------------------- Type of registration: operation Proposed name of this operation: Shutdown Object Target: Printer Specification of this attribute: Shutdown applies only to Printer, not to Job. This operation allows a client to shut down a Printer. Specifically, this operation: - Terminates all communication with the Printer - Disables the Printer (prevents a Printer from accepting new Jobs). Shutdown Request: Group 1: Operation Attributes Natural Language and Character Set: The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1. Target: The "printer-uri" (uri) operation attribute which is the target for this operation as described in section 3.1.5. Requesting User Name: The "requesting-user-name" (name(MAX)) attribute SHOULD be supplied by the client as described in section 8.3. When: (Keyword) "when" indicates when to shutdown the printer. Standard values: 'now': cancel any currently printing jobs and shut down the Printer. 'after-current': continue to accept requests other than print requests until the currently printing Jobs finish printing. 'after-all': continue to accept all requests except print requests until all scheduled jobs finish printing. Shutdown Response: Group 1: Operation Attributes Status Message: In addition to the REQUIRED status code returned in every response, the response OPTIONALLY includes a "status-message" (text) operation attribute as described in sections 13 and 3.1.6. Natural Language and Character Set: The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2. Group 2: Unsupported Attributes See section 3.1.7 for details on returning Unsupported Attributes. Status codes: 'successful-ok' 'client-error-not-possible' -------------------------------------------------------------------------- Type of registration: operation Proposed name of this operation: Backspace-Current-Job Object Target: Printer Specification of this attribute: Backspaces the currently printing job a given number of impressions. For example, if you specify that the job is to be backspaced 10 impressions and the 14th impression was the last buffered impression to be printed, the job starts printing with the fifth impression. Backspace is typically desired in a continuous forms environment for synchronizing the web after forms run out or media change. Backspace-Current-Job Request: Group 1: Operation Attributes Natural Language and Character Set: The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1. Target: The "printer-uri" (uri) operation attribute which is the target for this operation as described in section 3.1.5. Requesting User Name: The "requesting-user-name" (name(MAX)) attribute SHOULD be supplied by the client as described in section 8.3. Job Impressions: "job-impressions": the number of impressions to backspace before continuing to print. Backspace-Current-Job Response: Group 1: Operation Attributes Status Message: In addition to the REQUIRED status code returned in every response, the response OPTIONALLY includes a "status-message" (text) operation attribute as described in sections 13 and 3.1.6. Natural Language and Character Set: The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2. Group 2: Unsupported Attributes See section 3.1.7 for details on returning Unsupported Attributes. Status codes: 'successful-ok' 'client-error-not-possible' -------------------------------------------------------------------------- Type of registration: operation Proposed name of this operation: Enable Object Target: Printer Specification of this attribute: Enable applies only to Printer, not to Job. This operation allows a Printer to accept Jobs. Note: Use the Disable operation to prevent a Printer from accepting Jobs. Note: Use Enable and Disable to allow or prevent input to a Printer. Use Pause-Printer and Resume-Printer to prevent or allow output from the Printer. Enable Request: Group 1: Operation Attributes Natural Language and Character Set: The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1. Target: The "printer-uri" (uri) operation attribute which is the target for this operation as described in section 3.1.5. Requesting User Name: The "requesting-user-name" (name(MAX)) attribute SHOULD be supplied by the client as described in section 8.3. Enable Response: Group 1: Operation Attributes Status Message: In addition to the REQUIRED status code returned in every response, the response OPTIONALLY includes a "status-message" (text) operation attribute as described in sections 13 and 3.1.6. Natural Language and Character Set: The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2. Group 2: Unsupported Attributes See section 3.1.7 for details on returning Unsupported Attributes. Status codes: 'successful-ok' 'client-error-not-possible' -------------------------------------------------------------------------- Type of registration: operation Proposed name of this operation: Disable Object Target: Printer Specification of this attribute: Disable applies only to Printer, not to Job. This operation stops a Printer from accepting Jobs. The Printer still accepts other Operations. All previously submitted Jobs and currently processing Jobs continue unaffected. Note: Use the Enable operation to enable a Printer to accept Jobs again. Note: Use Enable and Disable to allow or prevent input to a Printer. Use Pause-Printer and Resume-Printer to prevent or allow output from the Printer. Disable Request: Group 1: Operation Attributes Natural Language and Character Set: The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1. Target: The "printer-uri" (uri) operation attribute which is the target for this operation as described in section 3.1.5. Requesting User Name: The "requesting-user-name" (name(MAX)) attribute SHOULD be supplied by the client as described in section 8.3. Disable Response: Group 1: Operation Attributes Status Message: In addition to the REQUIRED status code returned in every response, the response OPTIONALLY includes a "status-message" (text) operation attribute as described in sections 13 and 3.1.6. Natural Language and Character Set: The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2. Group 2: Unsupported Attributes See section 3.1.7 for details on returning Unsupported Attributes. Status codes: 'successful-ok' 'client-error-not-possible'