[IPP] RFC: printer-finisher attribute

[IPP] RFC: printer-finisher attribute

Ira McDonald blueroofmusic at gmail.com
Fri Jun 20 18:59:50 UTC 2014


Hi Mike,

I like this "printer-finisher" proposal for exposing the Finisher MIB info.

A few comments:

(1) TYPO - Section 6.15.3 in title and second example says
"printer-input-tray"

(2) TECHNICAL - Section 16.5 should also reference finDeviceAttributeTable
and later sections should reference a (flattened) "finisher-detail" member
that
is a simple key/value mapping for all defined finisher-specific attributes,
e.g.,

- general: deviceModel, finReferenceEdge, numberOfPositions, etc.
- subunit types: stitching (staple,stitch,saddle,dual), folding, binding,
etc.
- subunit details for stitching and punching

WDYT?

Cheers,
- Ira





Ira McDonald (Musician / Software Architect)
Co-Chair - TCG Trusted Mobility Solutions WG
Chair - Linux Foundation Open Printing WG
Secretary - IEEE-ISTO Printer Working Group
Co-Chair - IEEE-ISTO PWG Internet Printing Protocol WG
IETF Designated Expert - IPP & Printer MIB
Blue Roof Music / High North Inc
http://sites.google.com/site/blueroofmusic
http://sites.google.com/site/highnorthinc
mailto: blueroofmusic at gmail.com
Winter  579 Park Place  Saline, MI  48176  734-944-0094
Summer  PO Box 221  Grand Marais, MI 49839  906-494-2434



On Fri, Jun 20, 2014 at 2:25 PM, Michael Sweet <msweet at apple.com> wrote:

> All,
>
> One of the common issues we've run into are finisher limits - maximum
> capacity in particular.
>
> Currently the only want to get this information is via the Finishing MIB.
>  The following is a proposal for inclusion in the Finishings 2.0
> specification to add a "printer-finisher" Printer Description attribute
> that exposes the Finishing MIB, much as we already do for the various
> Printer MIB properties.
>
> If there are no objections, I will issue one more prototype draft of the
> Finishings 2.0 spec so we can review this and the finishings-col-database
> addition in the next WG concall.
>
> ...
>
> 6.15 printer-finisher (1setOf octetString(MAX))
>
> The REQUIRED "printer-finisher" Printer attribute provides current
> finisher details mapped from the SNMP finDeviceTable defined in IETF
> Finishing MIB [RFC3806].
>
> This attribute MUST be supported if the "printer-finisher-description"
> (section 6.16) Printer attribute is supported. If supported, this attribute
> MUST have the same cardinality (contain the same number of values) as the
> "printer-finisher-description" attribute. The ith value in the
> "printer-finisher" attribute corresponds to the ith value in the
> "printer-finisher-description" attribute.
>
> 6.15.1 Keywords for printer-finisher
>
> Table 2 defines the IPP datatypes and keywords for encoding
> "printer-finisher" from all of the machine-readable (non-localized)
> columnar objects in finDeviceTable [RFC3806].
>
> 6.15.2 Encoding of printer-finisher
>
> Values of "printer-finisher" MUST be encoded using a visible subset of the
> [US-ASCII] charset. Control codes (0x00 to 0x1F and 0x7F) MUST NOT be used.
> The ABNF [STD68] in Figure 2 defines the standard encoding in
> "printer-finisher" for all the machine-readable (non-localized) columnar
> objects in finDeviceTable [RFC3806].
>
> 6.15.3 Examples of printer-input-tray
>
> The following example shows two rows of the machine-readable
> (non-localized) columnar objects from finDeviceTable encoded into
> corresponding values of "printer-finisher".
>
> Note: Line breaks are shown below for readability of this example. Line
> breaks MUST NOT be encoded into actual values of "printer-finisher".
>
> printer-finisher[1] =
>     type=stitcher;unit=sheets;maxcapacity=500;capacity=100;
> printer-input-tray[2] =
>     type=puncher;unit=sheets;maxcapacity=100;capacity=20;
>
> Table 2 - Keywords for "printer-finisher"
>
> Finishing MIB Object    IPP Data-type  IPP Keyword    PWG SM Keyword
>  Conformance
> ----------------------  -------------  -------------  ----------------
>  -----------
> finDevice...
> Index (note 1)          Integer        index          Id
>  OPTIONAL
> Type                    String         type           FinisherType
>  REQUIRED
> CapacityUnit            String         unit           FinisherCapacity
>  REQUIRED
>                                                       Unit
> MaxCapacity             Integer        maxcapacity    FinisherMax
> REQUIRED
>                                                       Capacity
> CurrentCapacity         Integer        capacity       FinisherCurrent
> REQUIRED
>                                                       Capacity
> PresentOnOff            String         presentonoff   FinisherPresent
> OPTIONAL
>                                                       OnOff
> AssociatedMediaPaths    ---            ---            FinisherAssociated
> ---
>                                                       MediaPaths
> AssociatedOutputs       ---            ---            FinisherAssociated
> ---
>                                                       Outputs
> Status                  Integer        status         SubunitStates
> OPTIONAL
>
> Notes:
> 1.    finDeviceIndex is OPTIONAL in "printer-finisher", because
> correlation with the original MIB order is considered unimportant.
>
>
> Figure 2 - ABNF for "printer-finisher" Values
>
> printer-finisher = *finisher-required *[finisher-optional]
>     ; set of finisher elements encoded into one value
>
> finisher-required = finisher-req ";"
> finisher-req = finisher-type / finisher-unit /
>                  finisher-max-capacity /
>                  finisher-capacity
> finisher-optional = finisher-opt ";"
> finisher-opt = finisher-index / finisher-presentonoff /
>                  finisher-status / finisher-ext
>
> finisher-type = "type" "=" 1*ALPHA
>     ; enumerated value as an alpha string (e.g.,
>     ; 'stitcher') of finDeviceType in [RFC3806] mapped
>     ; indirectly from the *label* in FinDeviceTypeTC
>
> finisher-unit = "unit" "=" 1*ALPHA
>     ; enumerated value as an alpha string (e.g., 'other') of
>     ; finDeviceCapacityUnit in [RFC3806] mapped indirectly from
>     ; the *label* in PrtCapacityUnitTC in [RFC3805]
>
> finisher-max-capacity = "maxcapacity" "=" 1*[DIGIT / "-"]
>     ; integer value as a numeric string mapped directly from
>     ; finDeviceMaxCapacity in [RFC3806]
>
> finisher-capacity = "capacity" "=" 1*[DIGIT / "-"]
>     ; integer value as a numeric string mapped directly from
>     ; finDeviceCurrentCapacity in [RFC3806]
>
> finisher-index = "index" "=" 1*DIGIT
>     ; integer value as a numeric string mapped directly from
>     ; finDeviceIndex in [RFC3806]
>
> finisher-presentonoff = "presentonoff" "=" 1*ALPHA
>     ; string value as an alpha string mapped directly from
>     ; PresentOnOff in [RFC3805]
>
> finisher-status = "status" "=" 1*DIGIT
>     ; integer value as a numeric string mapped directly from
>     ; finDeviceStatus in [RFC3806]
>
> finisher-ext   = 1*ALPHA "=" 1*ALPHA
>     ; extension point for other MIB values not mapped
>
> 6.16 printer-finisher-description (1setOf text(MAX))
>
> The REQUIRED "printer-finisher-description" READ-ONLY Printer attribute
> provides current supply descriptions mapped from the SNMP
> finDeviceDescription object in the finDeviceTable defined in IETF Finishing
> MIB [RFC3806].
>
> This attribute MUST be supported if the "printer-finisher" (section 6.15)
> Printer attribute is supported. If supported, this attribute MUST have the
> same cardinality (contain the same number of values) as the
> "printer-finisher" attribute. The ith value in the
> "printer-finisher-description" attribute corresponds to the ith value in
> the "printer-finisher" attribute.
>
> 6.16.1 Encoding of printer-finisher-description
>
> Values of the "printer-finisher-description" attribute MUST be mapped from
> the corresponding human-readable (localized) values of
> finDeviceDescription, exactly as follows:
>
> 1.    Each value of finDeviceDescription MUST be converted from the
> character set [RFC3808] specified by prtGeneralCurrentLocalization and
> prtLocalizationCharacterSet into the charset specified by
> "charset-configured" and then copied into a text value of
> "printer-finisher-description"; and
> 2.    Each value of "printer-finisher-description" MUST be tagged with the
> natural language [RFC5646] specified by prtGeneralCurrentLocalization,
> prtLocalizationLanguage, and prtLocalizationCountry.
>
> 6.16.2 Example of printer-finisher-description
>
> The following example shows two instances of the human-readable
> (localized) columnar object finDeviceDescription in the finDeviceTable
> encoded into corresponding values of "printer-finisher-description":
>
> printer-finisher-description[1] = "Stapler S/N:EXAMPLE-12345"
> printer-finisher-description[2] = "Hole Punch S/N:EXAMPLE-67890"
>
> _________________________________________________________
> Michael Sweet, Senior Printing System Engineer, PWG Chair
>
>
> _______________________________________________
> ipp mailing list
> ipp at pwg.org
> https://www.pwg.org/mailman/listinfo/ipp
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.pwg.org/pipermail/ipp/attachments/20140620/c368680d/attachment.html>


More information about the ipp mailing list