Re: What value do IPP Printers provide for "printer-name"?

Michael Sweet via ipp <[email protected]>
Newsgroups gmane.ietf.ipp
Message-ID <[email protected]>
Smith,

> On Jun 20, 2024, at 10:07 PM, Kennedy, Smith (Wireless & IPP Standards) <[email protected]> wrote:
> 
> Greetings all, 
> 
> Sorry I was unable to be present for the discussion! (I'm on "vacation" helping my elderly father pack his apartment.) 
> 
> I think we have a bit of a "chicken and egg" issue here. It may be that many clients have backed away from using "printer-name" because of the variability of the values printers provide. We can either deprecate that attribute / discourage its use, or we can try to push it towards some consistency.

The consensus was actually to recommend default values and values that can be configured via Set-Printer-Attributes, console, and/or EWS.  In the near term we'll come up with recommendations for Printers that will go in IPP Everywhere v2.0, while the Client side will eventually have something useful to say in a future update of the IIG.

> These others are much more specifically prescriptive but not always pertinent:
> 
> - printer-make-and-model
> - printer-dns-sd-name
> - printer-device-id

"printer-device-id" isn't something that we are pushing hard for anymore since it is there for drivers.

Also, "printer-info", "printer-location", and "printer-geo-location" provide useful information as well.

> The scenarios a client might use these and "printer-name" include constructing the "default name" it might give a persistent "old-school" print queue (e.g., Linux, macOS, Windows). I personally have a habit of setting the DNS-SD Instance Name to something like "_Smitty ChickenLips_" and then I also set its .local domain name to a downsampled version of that: "smitty-chickenlips" so that I can identify it across client platforms regardless of how the queue gets set up.

That's the intended usage, BTW.  "printer-name" would contain "Smitty Chickenlips" while "printer-dns-sd-name" would contain whatever the conflict-resolved DNS-SD service instance name is (might be the same as "printer-name", might have a serial number tacked on the end, etc.)

> The queue might be set up using a discovery protocol (DNS-SD etc.), or via a URI / hostname / raw IPv4 address / raw IPv6 address. One thing I'm concerned about is that, if the queue / printer is set up using one of the latter non-DNS-SD methods, how would the user know that that is the device's name? For instance, if I set up the queue with "192.168.1.37", and the user read that off a config page or the printer's control panel, they have acquired the IPv4 address but may never have seen "_Smitty ChickenLips_" or "smitty-chickenlips" or "smitty-chickenlips.local" before. So how will they connect the name to the device? 

Probably with the label that somebody stuck to the front of the printer. :)  Seriously, that is something we can talk about WRT recommended IPP Everywhere printer behaviors - having the console show the printer name would be a useful UX.  We obviously can't require such behaviors but at least they'd be an option for everyone to use.

> (I'd like to find a pathway to allow us to begin discouraging the use of raw IPv4 addresses, because DHCP leases can cause IPv4 address rotation, causing "printer offline" issues / stale queues, but in many semi-managed SMBs their networks' DNS infrastructure and multicast propagation is just not reliable enough so they fall back to IPv4 addresses with fixed leases, I guess.

I used to have a customer that would call me once a month to have me walk him through updating the IP address associated with the print queue for his DesignJet.  I was unable to get him to use a fixed IP...

> So what I might suggest for IPP Implementor's Guide v2.1:
> 
> - For printers set up using DNS-SD, the default queue name ought to be "<DNS-SD Instance Name / printer-dns-sd-name>"

Ideally it should be the value of "printer-name", assuming it isn't one of the current "less optimal" names that doesn't mean anything to the user.

> - For printers set up by the user providing a hostname, the default queue name ought to be "<hostname>"

Ugh, let's not.  HPxxxxxxxxxxxx.local is not user-friendly.  Even "smitty-chickenlips.local" is not user friendly...

> - For printers set up by the user providing a raw IP address, the default queue name ought to be "<IP address>" (gross for IPv6, I know...but that's what the user provided...)

Same here.  And since most addresses are dynamically assigned, that IP address (v4 or v6) might change and *then* what do you do?

> - Regardless of how the printer / print queue is set up, it seems like a model name should be presented as well. How this gets presented to the user is a UX issue that is out of scope.

Out of scope for conformance, but I have 0 problems including a "best practices" appendix with basic client UX recommendations - information (printer-info/location/geo-location/make-and-model/serial-number/etc.), supply levels, web page, identify-printer button, print test page button, etc.

> - All printers ought to present their DNS-SD Instance Name and their hostname and/or their current IPv4 address on their control panel if they have one.

I'm used to printing a "network configuration page" :), but yes having a way to present that information in different places is important.

________________________
Michael Sweet

_______________________________________________
ipp mailing list
[email protected]
https://www.pwg.org/mailman/listinfo/ipp
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.