HP Retail Manageability - White Paper

4
HP Retail Windows® Management Interface
Provider
The HP Retail WMI Provider extends the concepts of CMI to HP retail peripherals,
enabling access to information about the operational status of those devices. The
WMI provider runs as a service and acts as a mediator between the Common
Information Model (CIM) Object Manager and the managed point of sale
peripherals. It supports the OLE for Retail POS (OPOS) implementation of the
UnifiedPOS (UPOS) specification version 1.13, although most peripheral device
service objects only support the properties and statistics that are most relevant to
HP’s retail customers.
The WMI Provider obtains statistics and property values from peripheral OPOS
drivers and copies them into the CIM repository used by WMI. Please note that the
current version of the UPOS specification allows only one application at a time to
claim a device, so the data from the WMI provider may become stale if the retail
application doesn’t release devices regularly. The WMI provider will attempt to
reclaim devices periodically to refresh its data, and will update the
InformationLastUpdated property at the first opportunity, then release the device.
The timestamp value uses the WMI default UTC date-time format.
The namespace used is root\hp\retail, which can be accessed using all of the
techniques described in the previous section. For example, use the following script
to list when information was last updated for each claimed HP retail peripheral:
Const wbemFlagReturnImmediately = 16
Const wbemFlagForwardOnly = 32
lFlags = wbemFlagReturnImmediately +
wbemFlagForwardOnly
strService =
"winmgmts:{impersonationlevel=impersonate}//"
strComputer = "."
strNamespace = "/root/hp/retail"
strQuery = "select * from Peripheral"
Set objWMIService = GetObject(strService & strComputer
& strNamespace)
Set colItems =
objWMIService.ExecQuery(strQuery,,lFlags)
Counter = 1
For Each objItem In colItems
If (objItem.PhysicalDeviceDescription <> "") Then
WScript.Echo Counter & vbTab &
objItem.InformationLastUpdated & vbTab &
objItem.PhysicalDeviceDescription
Counter = Counter + 1
End If
Next