WO2020131014A1 - Monitoring point of sale peripheral devices - Google Patents

Monitoring point of sale peripheral devices Download PDF

Info

Publication number
WO2020131014A1
WO2020131014A1 PCT/US2018/066023 US2018066023W WO2020131014A1 WO 2020131014 A1 WO2020131014 A1 WO 2020131014A1 US 2018066023 W US2018066023 W US 2018066023W WO 2020131014 A1 WO2020131014 A1 WO 2020131014A1
Authority
WO
WIPO (PCT)
Prior art keywords
point
sale
peripheral device
management data
access
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/US2018/066023
Other languages
French (fr)
Inventor
Binh Truong
Pun Yi LEE
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Priority to PCT/US2018/066023 priority Critical patent/WO2020131014A1/en
Priority to US17/414,418 priority patent/US20220092948A1/en
Publication of WO2020131014A1 publication Critical patent/WO2020131014A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07GREGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
    • G07G1/00Cash registers
    • G07G1/0009Details of the software in the checkout register, electronic cash register [ECR] or point of sale terminal [POS]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/14Payment architectures specially adapted for billing systems
    • G06Q20/145Payments according to the detected use or quantity
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • G06Q20/202Interconnection or interaction of plural electronic cash registers [ECR] or to host computer, e.g. network details, transfer of information from host to ECR or from ECR to ECR
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07GREGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
    • G07G1/00Cash registers
    • G07G1/0018Constructional details, e.g. of drawer, printing means, input means
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07GREGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
    • G07G1/00Cash registers
    • G07G1/12Cash registers electronically operated
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07GREGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
    • G07G1/00Cash registers
    • G07G1/12Cash registers electronically operated
    • G07G1/14Systems including one or more distant stations co-operating with a central processing unit

Definitions

  • Unified Point of Service is an architectural specification for the application interfaces of point-of-service devices used in retail environments.
  • the standard is operating system independent and language neutral.
  • the standard defines an architecture for interfacing applications to retail devices and defines a set of retail device behaviors sufficient to support a range of POS solutions.
  • Figures 1 A-1 B are block diagrams illustrating one example of a processing system for managing a point of sale peripheral device.
  • Figure 2 is a block diagram illustrating one example of a point of sale architecture.
  • Figures 3A-3C are block diagrams illustrating one example of a processing system for managing a cash drawer device.
  • Figures 4A-4B are flow diagrams illustrating one example of a method for managing a point of sale peripheral device.
  • the systems and methods disclosed herein utilize the control layer of the UnifiedPOS specification to filter and convert data for manageability purposes.
  • Figures 1 A-1 B are block diagrams illustrating one example of a processing system 100 for managing a point of sale peripheral device.
  • system 100 may be part of monitor 216, which will be further described below with reference to Figure 2.
  • System 100 includes a processor 102 and a machine-readable storage medium 106.
  • Processor 102 is
  • machine-readable storage medium 106 communicatively coupled to machine-readable storage medium 106 through a communication path 104.
  • the following description refers to a single processor and a single machine-readable storage medium, the description may also apply to a system with multiple processors and multiple machine-readable storage mediums.
  • the instructions may be distributed (e.g., stored) across multiple machine-readable storage mediums and the instructions may be distributed (e.g., executed by) across multiple processors.
  • Processor 102 includes one (i.e., a single) central processing unit (CPU) or microprocessor or more than one (i.e., multiple) CPU or microprocessor, and/or other suitable hardware devices for retrieval and execution of instructions stored in machine-readable storage medium 106.
  • Processor 102 may fetch, decode, and execute instructions 108-1 14 to manage a point of sale peripheral device.
  • Processor 102 may fetch, decode, and execute instructions 108 to monitor software calls between a point of sale application and a sharable point of sale peripheral device, wherein each software call defines a type of access to the sharable point of sale peripheral device.
  • the sharable point of sale peripheral device may include a cash drawer device, a gate device, a hard total device, a keylock device, a motion sensor device, a point of sale power device, or a tone indicator device.
  • Processor 102 may fetch, decode, and execute instructions 1 10 to collect management data for the sharable point of sale peripheral device based on the monitored software calls.
  • the management data may include a count of the number of software calls for each type of access to the sharable point of sale peripheral device. In another example, the management data may include the day and time of each software call and the type of access to the sharable point of sale peripheral device.
  • Processor 102 may fetch, decode, and execute instructions 1 12 to store the collected management data to create a record of the usage of the sharable point of sale peripheral device.
  • processor 102 may fetch, decode, and execute further instructions 1 14 to generate an alert notification in response to a software call between the point of sale application and the sharable point of sale peripheral device occurring during a predefined period.
  • processor 102 may include one (i.e., a single) electronic circuit or more than one (i.e., multiple) electronic circuit comprising a number of electronic components for performing the functionality of one of the instructions or more than one of the instructions in machine-readable storage medium 106.
  • executable instruction representations e.g., boxes
  • executable instructions and/or electronic circuits included within one box may, in alternate examples, be included in a different box illustrated in the figures or in a different box not shown.
  • Machine-readable storage medium 106 is a non-transitory storage medium and may be any suitable electronic, magnetic, optical, or other physical storage device that stores executable instructions.
  • machine-readable storage medium 106 may be, for example, random access memory (RAM), an electrically-erasable programmable read-only memory (EEPROM), a storage drive, an optical disc, and the like.
  • Machine-readable storage medium 106 may be disposed within system 100, as illustrated in Figures 1 A-1 B. In this case, the executable instructions may be installed on system 100.
  • machine- readable storage medium 106 may be a portable, external, or remote storage medium that allows system 100 to download the instructions from the
  • the executable instructions may be part of an installation package.
  • FIG. 2 is a block diagram illustrating one example of a point of sale architecture 200.
  • Point of sale (or point of service) architecture 200 includes an application layer 202, a control layer 206, a service layer 210, a point of sale (POS) device 214, a monitor 216, and a database 220.
  • Application layer 202 is communicatively coupled to control layer 206 through a communication path 204.
  • Control layer 206 is communicatively coupled to service layer 210 through a communication path 208 and to monitor 216 through a communication path 218.
  • Service layer 210 is communicatively coupled to POS device 214 through a communication path 212.
  • Monitor 216 is communicatively coupled to database 220 through a communication path 222. Monitor 216 may output alert notifications through a communication path 224.
  • Application layer 202 provides an application that interacts with one or multiple POS devices.
  • Application layer 202 may manipulate physical devices (e.g., a hardware unit or peripheral device) by calling platform specific application program interfaces (APIs) that conform to the UnifiedPOS standard.
  • Some physical devices may support more than one device category. For example, some POS printers may include a cash drawer kickout, and some bar code scanners may include an integrated scale.
  • APIs platform specific application program interfaces
  • Some physical devices may support more than one device category. For example, some POS printers may include a cash drawer kickout, and some bar code scanners may include an integrated scale.
  • Flowever, with UnifiedPOS an application treats each of these device categories as if it were an independent physical device.
  • Control layer 206 provides an interface between the application layer 202 and the service layer 210 and provides controls for device categories. Control layer 206 does not contain graphical components and is therefore invisible at runtime. Control layer 206 may be designed so that all implementations of a device category’s control will be compatible. Therefore, control layer 206 may be developed independently of the service layer 210 for the same device category.
  • Service layer 210 provides an interface between the control layer 206 and the POS device 214.
  • Service layer 210 is used by the control layer 206 to implement UnifiedPOS-prescribed functionality for POS device 214.
  • Service layer 210 may also call special event methods provided by the control layer 206 to deliver events to the application layer 202.
  • a set of service classes may be implemented to support physical devices with multiple device categories.
  • POS device 214 may include a cash drawer device, a gate device, a hard total device, a keylock device, a motion sensor device, a point of sale power device, a tone indicator device, or another suitable retail sharable device.
  • a cash drawer device supports a command to“open” the cash drawer.
  • a cash drawer device may support drawer status reporting of such a nature that the service layer 210 can determine whether a particular drawer is open or closed.
  • a gate device may include, for example, a kiosk front door that may be opened by an application for servicing, a self-checkout door that may be opened by an application for servicing, or an exit gate in a kiosk or a self-checkout environment where a customer scans a barcode printed on a receipt to open the gate.
  • a gate control device supports a command to“open” the gate.
  • a gate control device may support status reporting of such a nature that the service layer 210 can determine whether the gate is opened or closed.
  • a hard total device supports at least one totals file with the name (the empty string) in an area of totals memory. Each totals file is read and written as if it were a sequence of byte data. A hard total device creates each totals file with a fixed size and may be deleted, initialized, and claimed for exclusive use.
  • a hard total device may support additional named totals files. They share some characteristics of a file system with only a root directory level. In addition, each totals file may also be renamed. A hard total device may support transactions, with begin and commit operations, plus rollback. A hard total device may also support advanced error detection. This detection may be implemented through hardware or software.
  • a keylock device may support at least three keylock positions and reporting of keylock position changes, either by hardware or software detection.
  • a keylock device may also support an electronic keylock.
  • a motion sensor device may support the detection of a person present at a POS device and reporting of motion detection changes, either by hardware or software detection.
  • a point of sale power device may support a command to“shut down” the system, a command to restart the system, a command to“suspend” the system, and a command to have the system go to standby.
  • a point of sale power device may also support accessing a power handling mechanism of the underlying operating system and hardware.
  • a point of sale power device may inform the application if a power fail situation has occurred, inform the application about battery level, inform the application if an uninterruptable power supply (UPS) charge state has changed, inform the application about high CPU temperature, inform the application about stopped CPU fan, and inform the application if an operating system dependent enforced shutdown mechanism is processed.
  • a point of sale power device may allow the application, after saving application data locally or transferring application data to a server, to shut down the POS terminal and inform the application about an initiated shutdown.
  • a tone indicator device sounds a system speaker or another hardware device.
  • a tone indicator device may sound a two-tone indicator or multiple tone “melodies”, providing simple pitch and volume control.
  • a tone indicator device may provide a synchronous one-shot indicator, similar to an operating system’s beep function.
  • Monitor 216 monitors software calls between the application layer 202 and the POS device 214 at the control layer 206. Monitor 216 may intercept commands, reports, events, data, etc., as described above between application layer 202 and POS device 214. Monitor 216 may, for example, monitor day to day activities of retail sharable device classes, determine the time and day when a software call is made to access a device, determine the time and day when a user physically accesses a device, and obtain device statistical data. The device statistical data may include, for example, determining the power hour count when a cash drawer device is being used or determining a total open count, a software driven open count, a key or manual access open count, etc., for a cash drawer device.
  • Monitor 216 may generate an alert notification in response to a count exceeding a predetermined count threshold or in response to suspicious activity. For example, an alert notification may be generated when a cash drawer device has an open status between certain hours or when a cash drawer device has an open status still remaining after a certain period. Monitor 216 may also prevent access or lock down devices between predefined times.
  • Monitor 216 may store the collected data to database 220.
  • the data stored in database 220 may create a record of the usage of a POS device 214.
  • the data stored in database 220 may be used for a variety of purposes, such as generating alert notifications, accounting, monitoring users, determining maintenance schedules for POS devices, estimating end of life of POS devices, identifying security risks, etc.
  • database 220 may be at a remote location from monitor 216 and communication path 222 may include a local area network (LAN), a wide area network (WAN), the Internet, and/or another suitable communication path.
  • LAN local area network
  • WAN wide area network
  • the Internet and/or another suitable communication path.
  • Figures 3A-3C are block diagrams illustrating one example of a
  • System 300 for managing a cash drawer device.
  • system 300 may be part of monitor 216 previously described and illustrated with reference to Figure 2.
  • System 300 includes a processor 302 and a machine- readable storage medium 306.
  • Processor 302 is communicatively coupled to machine-readable storage medium 306 through a communication path 304.
  • the following description refers to a single processor and a single machine-readable storage medium, the description may also apply to a system with multiple processors and multiple machine-readable storage mediums.
  • the instructions may be distributed (e.g., stored) across multiple machine-readable storage mediums and the instructions may be distributed (e.g., executed by) across multiple processors.
  • Processor 302 includes one (i.e., a single) central processing unit (CPU) or microprocessor or more than one (i.e., multiple) CPU or microprocessor, and/or other suitable hardware devices for retrieval and execution of instructions stored in machine-readable storage medium 306.
  • Processor 302 may fetch, decode, and execute instructions 308-316 to manage a cash drawer device.
  • Processor 302 may fetch, decode, and execute instructions 308 to monitor software calls between a point of sale application and a cash drawer device, wherein each software call defines a type of access to the cash drawer device.
  • Processor 302 may fetch, decode, and execute instructions 310 to collect management data for the cash drawer device based on the monitored software calls.
  • the management data may include a count of the number of open drawer type of accesses to the cash drawer device.
  • the management data may include the day and time of each software call and the type of access to the cash drawer device.
  • Processor 302 may fetch, decode, and execute instructions 312 to store the collected management data to create a record of the usage of the cash drawer device.
  • processor 302 may fetch, decode, and execute further instructions 314 to generate an alert notification in response to an open drawer type of access to the cash drawer device during a predefined period.
  • processor 302 may fetch, decode, and execute further instructions 316 to lock access to the cash drawer device during a predefined period.
  • processor 302 may include one (i.e., a single) electronic circuit or more than one (i.e., multiple) electronic circuit comprising a number of electronic components for performing the functionality of one of the instructions or more than one of the instructions in machine-readable storage medium 306.
  • executable instruction representations e.g., boxes
  • executable instructions and/or electronic circuits included within one box may, in alternate examples, be included in a different box illustrated in the figures or in a different box not shown.
  • Machine-readable storage medium 306 is a non-transitory storage medium and may be any suitable electronic, magnetic, optical, or other physical storage device that stores executable instructions.
  • machine-readable storage medium 306 may be, for example, RAM, EEPROM, a storage drive, an optical disc, and the like.
  • Machine-readable storage medium 306 may be disposed within system 300, as illustrated in Figures 3A-3C. In this case, the executable instructions may be installed on system 300.
  • machine- readable storage medium 306 may be a portable, external, or remote storage medium that allows system 300 to download the instructions from the
  • the executable instructions may be part of an installation package.
  • Figures 4A-4B are flow diagrams illustrating one example of a method 400 for managing a point of sale peripheral device.
  • method 400 may be implemented by monitor 216 previously described and illustrated with reference to Figure 2.
  • method 400 includes monitoring, at a control layer of a point of sale system, software calls between a point of sale application layer of the point of sale system and a point of sale peripheral device service layer of the point of sale system, wherein each software call defines a type of access to the point of sale peripheral device.
  • the point of sale peripheral device may include a sharable point of sale peripheral device.
  • method 400 includes collecting management data for the point of sale peripheral device based on the monitored software calls.
  • collecting the management data may include counting the number of software calls for each type of access to the point of sale peripheral device. In another example, collecting the management data may include determining the day and time of each software call and the type of access to the point of sale peripheral device.
  • method 400 includes storing the collected management data to a database to create a record of the usage of the point of sale peripheral device. As illustrated in Figure 4B at 408, method 400 may further include generating an alert notification in response to a software call occurring during a predefined period.

Landscapes

  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Engineering & Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Cash Registers Or Receiving Machines (AREA)

Abstract

A system includes a machine readable storage medium storing instructions and a processor to execute the instructions. The processor executes the instructions to monitor software calls between a point of sale application and a sharable point of sale peripheral device, wherein each software call defines a type of access to the sharable point of sale peripheral device. The processor executes the instructions to collect management data for the sharable point of sale peripheral device based on the monitored software calls. The processor executes the instructions to store the collected management data to create a record of the usage of the sharable point of sale peripheral device.

Description

MONITORING POINT OF SALE PERIPHERAL DEVICES
Background
[0001] The Unified Point of Service (UnifiedPOS) standard is an architectural specification for the application interfaces of point-of-service devices used in retail environments. The standard is operating system independent and language neutral. The standard defines an architecture for interfacing applications to retail devices and defines a set of retail device behaviors sufficient to support a range of POS solutions.
Brief Description of the Drawings
[0002] Figures 1 A-1 B are block diagrams illustrating one example of a processing system for managing a point of sale peripheral device.
[0003] Figure 2 is a block diagram illustrating one example of a point of sale architecture.
[0004] Figures 3A-3C are block diagrams illustrating one example of a processing system for managing a cash drawer device.
[0005] Figures 4A-4B are flow diagrams illustrating one example of a method for managing a point of sale peripheral device.
Detailed Description
[0006] In the following detailed description, reference is made to the
accompanying drawings which form a part hereof, and in which is shown by way of illustration specific examples in which the disclosure may be practiced. It is to be understood that other examples may be utilized and structural or logical changes may be made without departing from the scope of the present disclosure. The following detailed description, therefore, is not to be taken in a limiting sense, and the scope of the present disclosure is defined by the appended claims. It is to be understood that features of the various examples described herein may be combined, in part or whole, with each other, unless specifically noted otherwise.
[0007] Usage data and/or manageability data have been lacking for retail sharable device classes, such as cash drawer devices, gate devices, hard total devices, keylock devices, motion sensor devices, point of sale power devices, and tone indicator devices, since in a retail environment these devices may operate mechanically and may not include any firmware to store statistical data. For retail sharable device classes that may include firmware, the firmware may not support manageability data, such as the capability to monitor events, generate alert notifications, store usage data, etc.
[0008] Accordingly, disclosed herein are systems and methods to manage retail sharable device classes so that devices that do not have firmware, or do not have firmware supporting manageability data, have the capability to support manageability data. The systems and methods disclosed herein utilize the control layer of the UnifiedPOS specification to filter and convert data for manageability purposes.
[0009] Figures 1 A-1 B are block diagrams illustrating one example of a processing system 100 for managing a point of sale peripheral device. In one example, system 100 may be part of monitor 216, which will be further described below with reference to Figure 2. System 100 includes a processor 102 and a machine-readable storage medium 106. Processor 102 is
communicatively coupled to machine-readable storage medium 106 through a communication path 104. Although the following description refers to a single processor and a single machine-readable storage medium, the description may also apply to a system with multiple processors and multiple machine-readable storage mediums. In such examples, the instructions may be distributed (e.g., stored) across multiple machine-readable storage mediums and the instructions may be distributed (e.g., executed by) across multiple processors.
[0010] Processor 102 includes one (i.e., a single) central processing unit (CPU) or microprocessor or more than one (i.e., multiple) CPU or microprocessor, and/or other suitable hardware devices for retrieval and execution of instructions stored in machine-readable storage medium 106. Processor 102 may fetch, decode, and execute instructions 108-1 14 to manage a point of sale peripheral device.
[0011] Processor 102 may fetch, decode, and execute instructions 108 to monitor software calls between a point of sale application and a sharable point of sale peripheral device, wherein each software call defines a type of access to the sharable point of sale peripheral device. In one example, the sharable point of sale peripheral device may include a cash drawer device, a gate device, a hard total device, a keylock device, a motion sensor device, a point of sale power device, or a tone indicator device. Processor 102 may fetch, decode, and execute instructions 1 10 to collect management data for the sharable point of sale peripheral device based on the monitored software calls. In one example, the management data may include a count of the number of software calls for each type of access to the sharable point of sale peripheral device. In another example, the management data may include the day and time of each software call and the type of access to the sharable point of sale peripheral device. Processor 102 may fetch, decode, and execute instructions 1 12 to store the collected management data to create a record of the usage of the sharable point of sale peripheral device.
[0012] As illustrated in Figure 1 B, processor 102 may fetch, decode, and execute further instructions 1 14 to generate an alert notification in response to a software call between the point of sale application and the sharable point of sale peripheral device occurring during a predefined period.
[0013] As an alternative or in addition to retrieving and executing instructions, processor 102 may include one (i.e., a single) electronic circuit or more than one (i.e., multiple) electronic circuit comprising a number of electronic components for performing the functionality of one of the instructions or more than one of the instructions in machine-readable storage medium 106. With respect to the executable instruction representations (e.g., boxes) described and illustrated herein, it should be understood that part or all of the executable instructions and/or electronic circuits included within one box may, in alternate examples, be included in a different box illustrated in the figures or in a different box not shown.
[0014] Machine-readable storage medium 106 is a non-transitory storage medium and may be any suitable electronic, magnetic, optical, or other physical storage device that stores executable instructions. Thus, machine-readable storage medium 106 may be, for example, random access memory (RAM), an electrically-erasable programmable read-only memory (EEPROM), a storage drive, an optical disc, and the like. Machine-readable storage medium 106 may be disposed within system 100, as illustrated in Figures 1 A-1 B. In this case, the executable instructions may be installed on system 100. Alternatively, machine- readable storage medium 106 may be a portable, external, or remote storage medium that allows system 100 to download the instructions from the
portable/external/remote storage medium. In this case, the executable instructions may be part of an installation package.
[0015] Figure 2 is a block diagram illustrating one example of a point of sale architecture 200. Point of sale (or point of service) architecture 200 includes an application layer 202, a control layer 206, a service layer 210, a point of sale (POS) device 214, a monitor 216, and a database 220. Application layer 202 is communicatively coupled to control layer 206 through a communication path 204. Control layer 206 is communicatively coupled to service layer 210 through a communication path 208 and to monitor 216 through a communication path 218. Service layer 210 is communicatively coupled to POS device 214 through a communication path 212. Monitor 216 is communicatively coupled to database 220 through a communication path 222. Monitor 216 may output alert notifications through a communication path 224.
[0016] Application layer 202 provides an application that interacts with one or multiple POS devices. Application layer 202 may manipulate physical devices (e.g., a hardware unit or peripheral device) by calling platform specific application program interfaces (APIs) that conform to the UnifiedPOS standard. Some physical devices may support more than one device category. For example, some POS printers may include a cash drawer kickout, and some bar code scanners may include an integrated scale. Flowever, with UnifiedPOS, an application treats each of these device categories as if it were an independent physical device.
[0017] Control layer 206 provides an interface between the application layer 202 and the service layer 210 and provides controls for device categories. Control layer 206 does not contain graphical components and is therefore invisible at runtime. Control layer 206 may be designed so that all implementations of a device category’s control will be compatible. Therefore, control layer 206 may be developed independently of the service layer 210 for the same device category.
[0018] Service layer 210 provides an interface between the control layer 206 and the POS device 214. Service layer 210 is used by the control layer 206 to implement UnifiedPOS-prescribed functionality for POS device 214. Service layer 210 may also call special event methods provided by the control layer 206 to deliver events to the application layer 202. A set of service classes may be implemented to support physical devices with multiple device categories.
[0019] POS device 214 may include a cash drawer device, a gate device, a hard total device, a keylock device, a motion sensor device, a point of sale power device, a tone indicator device, or another suitable retail sharable device. A cash drawer device supports a command to“open” the cash drawer. In addition, a cash drawer device may support drawer status reporting of such a nature that the service layer 210 can determine whether a particular drawer is open or closed.
[0020] A gate device may include, for example, a kiosk front door that may be opened by an application for servicing, a self-checkout door that may be opened by an application for servicing, or an exit gate in a kiosk or a self-checkout environment where a customer scans a barcode printed on a receipt to open the gate. A gate control device supports a command to“open” the gate. In addition, a gate control device may support status reporting of such a nature that the service layer 210 can determine whether the gate is opened or closed.
[0021] A hard total device supports at least one totals file with the name (the empty string) in an area of totals memory. Each totals file is read and written as if it were a sequence of byte data. A hard total device creates each totals file with a fixed size and may be deleted, initialized, and claimed for exclusive use.
A hard total device may support additional named totals files. They share some characteristics of a file system with only a root directory level. In addition, each totals file may also be renamed. A hard total device may support transactions, with begin and commit operations, plus rollback. A hard total device may also support advanced error detection. This detection may be implemented through hardware or software.
[0022] A keylock device may support at least three keylock positions and reporting of keylock position changes, either by hardware or software detection. A keylock device may also support an electronic keylock. A motion sensor device may support the detection of a person present at a POS device and reporting of motion detection changes, either by hardware or software detection.
[0023] A point of sale power device may support a command to“shut down” the system, a command to restart the system, a command to“suspend” the system, and a command to have the system go to standby. A point of sale power device may also support accessing a power handling mechanism of the underlying operating system and hardware. A point of sale power device may inform the application if a power fail situation has occurred, inform the application about battery level, inform the application if an uninterruptable power supply (UPS) charge state has changed, inform the application about high CPU temperature, inform the application about stopped CPU fan, and inform the application if an operating system dependent enforced shutdown mechanism is processed. In addition, a point of sale power device may allow the application, after saving application data locally or transferring application data to a server, to shut down the POS terminal and inform the application about an initiated shutdown.
[0024] A tone indicator device sounds a system speaker or another hardware device. A tone indicator device may sound a two-tone indicator or multiple tone “melodies”, providing simple pitch and volume control. In addition, a tone indicator device may provide a synchronous one-shot indicator, similar to an operating system’s beep function.
[0025] Monitor 216 monitors software calls between the application layer 202 and the POS device 214 at the control layer 206. Monitor 216 may intercept commands, reports, events, data, etc., as described above between application layer 202 and POS device 214. Monitor 216 may, for example, monitor day to day activities of retail sharable device classes, determine the time and day when a software call is made to access a device, determine the time and day when a user physically accesses a device, and obtain device statistical data. The device statistical data may include, for example, determining the power hour count when a cash drawer device is being used or determining a total open count, a software driven open count, a key or manual access open count, etc., for a cash drawer device.
[0026] Monitor 216 may generate an alert notification in response to a count exceeding a predetermined count threshold or in response to suspicious activity. For example, an alert notification may be generated when a cash drawer device has an open status between certain hours or when a cash drawer device has an open status still remaining after a certain period. Monitor 216 may also prevent access or lock down devices between predefined times.
[0027] Monitor 216 may store the collected data to database 220. The data stored in database 220 may create a record of the usage of a POS device 214. The data stored in database 220 may be used for a variety of purposes, such as generating alert notifications, accounting, monitoring users, determining maintenance schedules for POS devices, estimating end of life of POS devices, identifying security risks, etc. In one example, database 220 may be at a remote location from monitor 216 and communication path 222 may include a local area network (LAN), a wide area network (WAN), the Internet, and/or another suitable communication path.
[0028] Figures 3A-3C are block diagrams illustrating one example of a
processing system 300 for managing a cash drawer device. In one example, system 300 may be part of monitor 216 previously described and illustrated with reference to Figure 2. System 300 includes a processor 302 and a machine- readable storage medium 306. Processor 302 is communicatively coupled to machine-readable storage medium 306 through a communication path 304. Although the following description refers to a single processor and a single machine-readable storage medium, the description may also apply to a system with multiple processors and multiple machine-readable storage mediums. In such examples, the instructions may be distributed (e.g., stored) across multiple machine-readable storage mediums and the instructions may be distributed (e.g., executed by) across multiple processors.
[0029] Processor 302 includes one (i.e., a single) central processing unit (CPU) or microprocessor or more than one (i.e., multiple) CPU or microprocessor, and/or other suitable hardware devices for retrieval and execution of instructions stored in machine-readable storage medium 306. Processor 302 may fetch, decode, and execute instructions 308-316 to manage a cash drawer device.
[0030] Processor 302 may fetch, decode, and execute instructions 308 to monitor software calls between a point of sale application and a cash drawer device, wherein each software call defines a type of access to the cash drawer device. Processor 302 may fetch, decode, and execute instructions 310 to collect management data for the cash drawer device based on the monitored software calls. In one example, the management data may include a count of the number of open drawer type of accesses to the cash drawer device. In another example, the management data may include the day and time of each software call and the type of access to the cash drawer device. Processor 302 may fetch, decode, and execute instructions 312 to store the collected management data to create a record of the usage of the cash drawer device.
[0031] As illustrated in Figure 3B, processor 302 may fetch, decode, and execute further instructions 314 to generate an alert notification in response to an open drawer type of access to the cash drawer device during a predefined period. As illustrated in Figure 3C, processor 302 may fetch, decode, and execute further instructions 316 to lock access to the cash drawer device during a predefined period.
[0032] As an alternative or in addition to retrieving and executing instructions, processor 302 may include one (i.e., a single) electronic circuit or more than one (i.e., multiple) electronic circuit comprising a number of electronic components for performing the functionality of one of the instructions or more than one of the instructions in machine-readable storage medium 306. With respect to the executable instruction representations (e.g., boxes) described and illustrated herein, it should be understood that part or all of the executable instructions and/or electronic circuits included within one box may, in alternate examples, be included in a different box illustrated in the figures or in a different box not shown.
[0033] Machine-readable storage medium 306 is a non-transitory storage medium and may be any suitable electronic, magnetic, optical, or other physical storage device that stores executable instructions. Thus, machine-readable storage medium 306 may be, for example, RAM, EEPROM, a storage drive, an optical disc, and the like. Machine-readable storage medium 306 may be disposed within system 300, as illustrated in Figures 3A-3C. In this case, the executable instructions may be installed on system 300. Alternatively, machine- readable storage medium 306 may be a portable, external, or remote storage medium that allows system 300 to download the instructions from the
portable/external/remote storage medium. In this case, the executable instructions may be part of an installation package.
[0034] Figures 4A-4B are flow diagrams illustrating one example of a method 400 for managing a point of sale peripheral device. In one example, method 400 may be implemented by monitor 216 previously described and illustrated with reference to Figure 2. As illustrated in Figure 4A at 402, method 400 includes monitoring, at a control layer of a point of sale system, software calls between a point of sale application layer of the point of sale system and a point of sale peripheral device service layer of the point of sale system, wherein each software call defines a type of access to the point of sale peripheral device. In one example, the point of sale peripheral device may include a sharable point of sale peripheral device. At 404, method 400 includes collecting management data for the point of sale peripheral device based on the monitored software calls. In one example, collecting the management data may include counting the number of software calls for each type of access to the point of sale peripheral device. In another example, collecting the management data may include determining the day and time of each software call and the type of access to the point of sale peripheral device. At 406, method 400 includes storing the collected management data to a database to create a record of the usage of the point of sale peripheral device. As illustrated in Figure 4B at 408, method 400 may further include generating an alert notification in response to a software call occurring during a predefined period.
[0035] Although specific examples have been illustrated and described herein, a variety of alternate and/or equivalent implementations may be substituted for the specific examples shown and described without departing from the scope of the present disclosure. This application is intended to cover any adaptations or variations of the specific examples discussed herein. Therefore, it is intended that this disclosure be limited only by the claims and the equivalents thereof.

Claims

1. A system comprising:
a machine readable storage medium storing instructions; and
a processor to execute the instructions to:
monitor software calls between a point of sale application and a sharable point of sale peripheral device, wherein each software call defines a type of access to the sharable point of sale peripheral device; collect management data for the sharable point of sale peripheral device based on the monitored software calls; and
store the collected management data to create a record of the usage of the sharable point of sale peripheral device.
2. The system of claim 1 , wherein the processor is to execute the instructions to further:
generate an alert notification in response to a software call between the point of sale application and the sharable point of sale peripheral device occurring during a predefined period.
3. The system of claim 1 , wherein the management data comprises a count of the number of software calls for each type of access to the sharable point of sale peripheral device.
4. The system of claim 1 , wherein the management data comprises the day and time of each software call and the type of access to the sharable point of sale peripheral device.
5. The system of claim 1 , wherein the sharable point of sale peripheral device comprises a cash drawer device, a gate device, a hard total device, a keylock device, a motion sensor device, a point of sale power device, or a tone indicator device.
6. A system comprising:
a machine readable storage medium storing instructions; and
a processor to execute the instructions to:
monitor software calls between a point of sale application and a cash drawer device, wherein each software call defines a type of access to the cash drawer device;
collect management data for the cash drawer device based on the monitored software calls; and
store the collected management data to create a record of the usage of the cash drawer device.
7. The system of claim 6, wherein the processor is to execute the
instructions to further:
generate an alert notification in response to an open drawer type of access to the cash drawer device during a predefined period.
8. The system of claim 6, wherein the management data comprises a count of the number of open drawer type of accesses to the cash drawer device.
9. The system of claim 6, wherein the management data comprises the day and time of each software call and the type of access to the cash drawer device.
10. The system of claim 6, wherein the processor is to execute the
instructions to further:
lock access to the cash drawer device during a predefined period.
1 1. A method for managing a point of sale peripheral device, the method comprising:
monitoring, at a control layer of a point of sale system, software calls between a point of sale application layer of the point of sale system and a point of sale peripheral device service layer of the point of sale system, wherein each software call defines a type of access to the point of sale peripheral device; collecting management data for the point of sale peripheral device based on the monitored software calls; and
storing the collected management data to a database to create a record of the usage of the point of sale peripheral device.
12. The method of claim 11 , further comprising:
generating an alert notification in response to a software call occurring during a predefined period.
13. The method of claim 11 , wherein collecting the management data comprises counting the number of software calls for each type of access to the point of sale peripheral device.
14. The method of claim 11 , wherein collecting the management data comprises determining the day and time of each software call and the type of access to the point of sale peripheral device.
15. The method of claim 11 , wherein the point of sale peripheral device comprises a sharable point of sale peripheral device.
PCT/US2018/066023 2018-12-17 2018-12-17 Monitoring point of sale peripheral devices Ceased WO2020131014A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/US2018/066023 WO2020131014A1 (en) 2018-12-17 2018-12-17 Monitoring point of sale peripheral devices
US17/414,418 US20220092948A1 (en) 2018-12-17 2018-12-17 Monitoring point of sale peripheral devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2018/066023 WO2020131014A1 (en) 2018-12-17 2018-12-17 Monitoring point of sale peripheral devices

Publications (1)

Publication Number Publication Date
WO2020131014A1 true WO2020131014A1 (en) 2020-06-25

Family

ID=71101574

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2018/066023 Ceased WO2020131014A1 (en) 2018-12-17 2018-12-17 Monitoring point of sale peripheral devices

Country Status (2)

Country Link
US (1) US20220092948A1 (en)
WO (1) WO2020131014A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140088760A1 (en) * 2012-09-25 2014-03-27 Hewlett-Packard Development Company, L.P. Computer connected cash drawer status and control
US20170364887A1 (en) * 2014-09-11 2017-12-21 Wincor Nixdorf International Gmbh Method and device for controlling a cash register system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TR201615343A1 (en) * 2016-10-27 2018-05-21 Safak Oektem MANAGEMENT OF PRE-ACCOUNTING, ACCOUNTING AND E-COMMERCE SYSTEMS ON ONE SCREEN
US20210365897A1 (en) * 2020-01-22 2021-11-25 Hewlett-Packard Development Company, L.P. Interchanging point of sale peripherals
US11416423B2 (en) * 2020-06-16 2022-08-16 Ncr Corporation Tracking movements of enrolled peripheral devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140088760A1 (en) * 2012-09-25 2014-03-27 Hewlett-Packard Development Company, L.P. Computer connected cash drawer status and control
US20170364887A1 (en) * 2014-09-11 2017-12-21 Wincor Nixdorf International Gmbh Method and device for controlling a cash register system

Also Published As

Publication number Publication date
US20220092948A1 (en) 2022-03-24

Similar Documents

Publication Publication Date Title
US12073688B2 (en) Unified digital wallet
US11418389B2 (en) Application deployment and management in a cloud computing environment
CN110716832B (en) Service operation monitoring and alarming method, system, electronic equipment and storage medium
US7216132B1 (en) System and method for automated process control
CN103718154B (en) Systems and methods for performing device control
US20070179823A1 (en) Observation modeling
CN109582109A (en) Data center's control method and system
CN102541634A (en) Probe insertion via background virtual machine
JP2006302256A (en) A rule-based intelligent alarm management system for digital surveillance systems
CN112445583B (en) Task management method, task management system, electronic device, storage medium
US7069184B1 (en) Centralized monitoring and early warning operations console
US9274847B2 (en) Resource management platform
CN120560848A (en) Method, device, electronic device and storage medium for dynamically adjusting thread pool threads
Cejka et al. Java embedded storage for time series and meta data in Smart Grids
US12032462B2 (en) Preserving hardware status points in operating system environment for use in preboot diagnostics
CN112612592A (en) Configurable timed task processing method, device, equipment and storage medium
US20220092948A1 (en) Monitoring point of sale peripheral devices
Simili et al. A hybrid system for monitoring and automated recovery at the Glasgow Tier-2 cluster
US12095819B2 (en) Security broker for edge computing environment
WO2000058829A1 (en) Object-oriented property linking
US11394624B2 (en) Systems and methods for unifying service assurance with service fulfillment
Böhm et al. The demaq system: declarative development of distributed applications
US7865574B1 (en) System for processing data retrieved from an information service layer
US7349952B1 (en) Information service layer
JP2011048458A (en) Server device and security management system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18943980

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18943980

Country of ref document: EP

Kind code of ref document: A1