Complementary action triggering method implemented by an electronic device interacting with a peripheral device.

DE602017087432T2Active Publication Date: 2025-01-22CASHMAG
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
DE602017087432
Authority / Receiving Office
DE · DE
Patent Type
Patents
Current Assignee / Owner
Priority Date
2016-05-26
Filing Date
2017-05-12
Publication Date
2025-01-22
Estimated Expiration
2037-05-12

AI Technical Summary

Technical Problem

Existing cash register software often requires updates to support new peripherals and payment methods, limiting interoperability and increasing development costs, as communication protocols between devices are not standardized.

Method used

A method that allows electronic devices to trigger complementary actions without modifying the application software or installing new driver software, by interpreting user instructions through a human-machine interface and executing additional actions using pre-loaded program instructions, enabling cooperation with new peripherals without updating the software or hardware.

Benefits of technology

Enables electronic devices to operate with a variety of peripherals, including coin acceptors and online payment platforms, without software or hardware evolution, providing scalable and cost-effective integration of new devices without disrupting the application process.

✦ Generated by Eureka AI based on patent content.
Patent Text Reader
Need to check novelty before this filing date? Find Prior Art

Description

[0001] The invention relates to a method for triggering one or more actions complementary to those triggered by an application method implemented by an electronic device, such as, by way of a preferred but non-limiting application, a cash register cooperating with one or more peripherals. According to the aforementioned application example, such peripherals may advantageously consist of a coin acceptor or a remote electronic payment server. The invention thus makes it possible to add functionalities to licensed or third-party software, eliminating the need to request updates from the software publisher, particularly in response to peripheral device developments. According to the preferred application example, such software is a point-of-sale system designed to be installed on an electronic device, similar to a personal computer, to transform it into a cash register.More generally, the ultimate objective of the invention is to provide new functionalities or to replace existing functionalities resulting from the implementation of instructions in a computer program, without having to update said computer program. The invention further relates to a system for implementing such a method.

[0002] In the remainder of this document, we will refer to any hardware and / or electronic entity capable of interacting with an electronic device implementing a method according to the invention as a "peripheral" or "communicating electronic device." By way of non-limiting example, such a peripheral may consist of a second electronic device similar to a device adapted according to the invention, or a remote electronic platform communicating via a communication network, such as the Internet or an intranet.

[0003] Computer software is a set of rules governing the operation of a data processing system. It generally consists of one or more computer programs. A computer program, in turn, is a sequence of instructions that can be interpreted and / or executed by a processing unit of an electronic device. This sequence specifies, step by step, the operations or processes that the processing unit will perform to obtain a result. These instructions are typically interpreted or executed by a processing unit, which generally includes one or more processors or microcontrollers. These instructions are first written into program memory, which is accessible for reading by the processors or microcontrollers.

[0004] An electronic device, whose processing unit executes such instructions, also includes or cooperates with other electronic elements, such as, for example, one or more data memories, and input and output human-machine interfaces. The implementation of a computer program using the hardware resources of such an electronic device is sometimes governed by a set of services provided by an operating system, itself consisting of a computer program whose instructions are stored in one of the device's memories. These services facilitate access to or use of the hardware resources by any application computer program whose instructions are also stored in one of the device's memories.

[0005] There are various operating systems. Some are standardized, such as Android and Linux, while others are specific to a particular electronic device or are considered proprietary, meaning they adhere to a specific set of requirements. The services offered by different operating systems are unique to each one. Therefore, to run a computer program on a given electronic device, the program must be designed to work with the operating system already installed in the device's memory. Consequently, it is common for an update required for an operating system, for example, to enable compatibility with new resources or peripherals, to necessitate a complete or partial rewrite of a computer program designed to run on a previous version of the operating system.Therefore, a new edition of the program is necessary.

[0006] A computer program is therefore limited by its features imposed and developed by its publisher, and by the type of electronic device on which it is intended to be implemented.

[0007] As a preferred but not limiting example of application, the invention will be described through an example of application relating to the management of cash receipts of a takeaway establishment, such as a bakery or a pharmacy.

[0008] Payment, the result of a transaction between a customer and a takeaway establishment, is generally processed using a cash register operated by an employee of the establishment, such as, for example, a cashier. A cash register keeps track of each transaction. It typically includes a user interface such as a physical or digital keyboard, a calculator, a cash drawer, a display, or more generally, a user interface for issuing receipts, and a printer to print receipts for the customer. Technological advancements mean that today, cash register manufacturers produce machines that resemble computers, implementing point-of-sale software with numerous features.As a non-exhaustive example, such point-of-sale software not only tracks all payments, thus ensuring accurate invoicing, but also contributes to managing sales and / or purchase inventory as well as customer orders. Popular point-of-sale software programs work with various payment processing peripherals, such as cash drawers or electronic payment terminals. The integration of such point-of-sale software with the available payment processing peripherals for a cash register is generally planned and incorporated during the software's development through specific program instructions.

[0009] However, point-of-sale systems evolve according to the habits and customs of customers and / or cash register users, as well as with the rise of new payment methods. For example, to increase security in takeaway establishments and reduce the risk of attempted robberies, and also for hygiene reasons, by relieving staff of the direct handling of cash, manufacturers have developed new point-of-sale systems called "coin changers." Such a coin changer allows a cashier in a takeaway establishment to avoid direct contact with cash from customers. During a transaction, the customer inserts their coins or banknotes directly into the coin changer. The changer then dispenses the change to the customer via a suitable receptacle.This eliminates the need for cashiers to handle money. Furthermore, cash management is simplified. In addition, since the coin dispenser is usually a secure automated system, it is much more difficult to vandalize than a simple cash drawer.

[0010] Payment methods are also constantly evolving. For example, we have seen the emergence of online payment platforms in recent years, such as, but not limited to, PayPal. Such non-conventional payment devices are generally not taken into account when developing point-of-sale software, especially if the software predates the advent of the non-conventional payment device. Cash registers resulting from the implementation of such software may therefore be unable to offer a payment method that has become popular, potentially alienating customers. To correct this deficiency, the point-of-sale software must be modified. Indeed, it is the responsibility of the point-of-sale software to anticipate and support communication between a new device and the cash register implementing said software.In the case of a new payment method based on an online payment platform, it is up to the point-of-sale software to support the required communication protocol between said cash register and the new point-of-sale device that constitutes said online payment platform.

[0011] When interaction methods between a point-of-sale device and a cash register were not initially planned during the development of the cash register software, the cash register can implement program instructions from third-party software commonly called a "driver." This allows the cash register to recognize a new point-of-sale device and generate messages or requests for it, similar to installing a new printer on a personal computer. However, the developers of such driver software do not always create versions compatible with the services offered by the operating systems used by cash registers.To overcome this difficulty, one alternative approach could be to develop and integrate into the point-of-sale software the necessary program instructions to implement communication with a new payment device. The drawback of this method lies in the fact that the communication protocols between different payment devices and cash registers, which use known point-of-sale software, are not standardized. The evolution or introduction of a payment method therefore generally means modifications to the point-of-sale software installed in the cash registers. These solutions are thus ultimately costly and significantly limit the choice of devices compatible with such cash registers. This problem of limited interoperability is also found in application contexts other than the collection of financial transactions.It is sufficient that electronic devices adapted to implement a specific software or application process, even if approved or certified, are in a situation where they must ensure cooperation with one or more continuously evolving peripherals. Other examples of systems allowing the use of an added peripheral not supported by an electronic device implementing a cash-processing application are known from documents EP 1 580 704 A2, US 2004 / 044575 A1, US 2013 / 314725 A1, US 2006 / 010137 A1, and US 2006 / 261159 A1.

[0012] The invention provides a particularly effective solution to all or some of the drawbacks of the previously mentioned solutions. To this end, the invention proposes a method for triggering actions complementary to those caused by the implementation of an application program installed on an electronic device, without requiring the redevelopment of said application program.

[0013] This particularly innovative process relies on and utilizes the rendering of content, such as graphics, by the application program via a human-machine interface (HMI) such as a screen or other equivalent means, to interpret instructions transmitted by the user via a pointing device such as a mouse or keyboard. From the content delivered to the user, the process according to the invention can determine the sequence and therefore the semantics to be associated with the user's instructions.

[0014] The invention also proposes a system comprising an electronic device adapted to implement such a triggering process of complementary actions in accordance with the invention and cooperating with one or more peripherals.

[0015] Among the many advantages of the invention, we can mention that a system according to the invention makes it possible to render an electronic device, implementing a specific application method, capable of cooperating with a new communicating electronic peripheral, without modifying the application method or installing new driver software that could cause malfunctions in said method or the electronic device that implements it. The invention also eliminates the need for any additional hardware intended to translate commands or information to or from such a new peripheral. Thus, a user of such an electronic device is not constrained in their choices, when acquiring a peripheral, by the compatibility of said peripheral with application software already installed on said electronic device.The invention provides a simple solution that requires no changes to the application software, no software and / or hardware changes to the peripheral, and no hardware modifications to the device implementing the application software. The invention thus makes the application software, and a fortiori the device implementing it, virtually capable of operating any peripheral, even if the use of that peripheral was not anticipated during the development of the application software.

[0016] Indeed, according to a preferred embodiment of the invention, an electronic device, for example a cash register, is adapted solely by loading instructions from a computer program that is structurally independent of the application software already installed in the electronic device. The execution of these program instructions triggers a process that initiates complementary actions according to the invention.The method according to the invention is primarily implemented by the electronic device, potentially without the user of the device being aware of it, in order to use instructions transmitted by a human-machine interface for the electronic device, in response to a prompt from the application process, to trigger the execution of complementary actions, for example, the control of a new peripheral device, advantageously based on contextual elements provided by a human-machine interface for the device under the action of the application process. The method triggering complementary actions is not intrusive in the application process governed by the application software.The invention further enables the provision of a scalable electronic device capable of cooperating with a multitude of peripherals, such as, but not limited to, coin acceptors or online payment platforms, without requiring updates to the application software embedded in said electronic device or even the connection of said electronic device to a complementary hardware device or interface. Unlike what a driver software naturally provides to an application software—namely, new ways of controlling a peripheral device, provided that said application software is designed to trigger the implementation of said driver software—the invention makes it possible to virtually extend the functions offered by such application software installed and implemented by an electronic device adapted according to the invention, even though said application software is not designed for this purpose.The invention enables a virtual and seamless migration—that is, without development, debugging, or certification steps—of any application software developed to ensure communication between a peripheral device and an electronic device implementing said application software. This simply requires installing a program in said electronic device to trigger additional actions according to the invention. These additional actions result from the interception and subsequent interpretation of instructions "addressed" to the application software, without altering the software's operation.

[0017] To this end, the invention relates first of all to a method for triggering complementary actions implemented by a processing unit of an electronic device, said electronic device comprising a data memory, a program memory and a means of communication cooperating with the processing unit and ensuring a determined mode of communication through a communication network, the means of communication being connected to a cash register peripheral to cooperate with the processing unit, the processing unit implementing a cash register application method to execute an action in response to the provision of an instruction data by said processing unit, the instruction data being developed by a human-machine instruction interface cooperating with the processing unit, said instruction data reflecting an interaction between a user and said interface.To trigger actions in addition to those provided for by the payment application process, said process includes: . a step to detect the provision by the processing unit of the setpoint data using a subscription service offered by the processing unit, said subscription service making said setpoint data available to all processes previously subscribed to said subscription service; a step to search in the data memory cooperating with the processing unit for a record containing the value of the setpoint data; if the data memory contains such a record, said process includes: o a step to request the non-distribution of said setpoint data to the cash register application process as well as to other processes subscribed to said subscription service by the processing unit; ∘ a step to trigger the implementation by the processing unit of a specific additional action consisting of: ▪ generating a control request for said cash register device;▪ trigger the issuance of said control request via communication means to the peripheral, said request containing control data; ∘ a step to request the distribution of said instruction data to the cash collection application process and other processes by requesting an appropriate service for the distribution of said instruction data from the processing unit once the additional action has been completed.

[0018] To override an action of the application process, the step to require the distribution of said setpoint data to the application process of cashing said process may consist of prior development of a new setpoint data.

[0019] To enable a rendering, for example graphic and / or sound rendering of content perceptible by one of the user's senses, the data memory may include a digital representation of said perceptible content, the rendering of which by a rendering interface also cooperating with said processing unit, said user has been previously triggered by the implementation of the cash collection application process.

[0020] To accurately interpret the scope of a user interaction via the rendering interface, the data memory containing the setpoint value may also include the content of a relevant contextual data point. To determine this content, the process may include a step prior to the step requiring the non-distribution of said setpoint data to the application process, comparing the respective contents of the digital representation of the content rendered by the rendering interface and the relevant contextual data point. This step requiring non-distribution is implemented only if the step comparing the contents of said digital representation and relevant contextual data point confirms that they are similar.

[0021] According to the invention, in order to implement one or more complementary actions, said program memory may include program instructions dedicated to one or more complementary actions. To identify the program instructions associated with a given complementary action and trigger their execution or interpretation by the processing unit, the step to initiate the implementation of such a given complementary action may consist of: extract from the record containing the value of the setpoint data, an identifier of complementary actions designating the program instructions dedicated to said complementary action determined within the program memory; trigger the execution of said program instructions by the processing unit.

[0022] To determine the operating status of the device, the step to trigger the processing unit to perform a specific additional action may consist of: receive via the means of communication, a status message issued by the cash register device, said status message including the content of status data characterizing the current operating state of said cash register device; decode said status message and extract the content of said status data; trigger the restitution of all or part of said status data by the human-machine interface of restitution of the electronic device.

[0023] According to a new object, the invention relates to a computer program product comprising program instructions which, when previously recorded in a program memory of an electronic device comprising in addition to said program memory, a processing unit, a data memory, a human-machine interface for output and input and means of communication ensuring a determined mode of communication, said memories, said interface and said means of communication cooperating with said processing unit, cause the implementation of a triggering process of complementary actions, according to the invention.

[0024] According to a third object, the invention provides for an electronic device comprising a processing unit, a data memory, a program memory, a human-machine interface for output and input, and communication means ensuring a determined communication mode, said memories, said interface, and said communication means cooperating with said processing unit, said electronic device being connected to a payment terminal by the communication means and comprising a payment application method not supporting communication with the payment terminal, said electronic device including in the program memory the instructions of a computer program product according to the invention.

[0025] According to a fourth object, the invention provides for a system comprising at least one electronic device according to the invention cooperating with at least one payment terminal.

[0026] Other features and advantages will become clearer upon reading the following description, which relates to an example implementation given for illustrative purposes only and is not exhaustive, and upon examination of the accompanying figures, including: there figure 1 presents a preferred application system according to the invention for implementing payment collection by an electronic device from a payment terminal; the figure 2 describes a preferred embodiment of a triggering method for complementary actions according to the invention; the figure 3 describes a preferred embodiment of a communication method between an electronic device according to the invention and a peripheral device; the figure 4 presents an example of "contextual" content rendered on a human-machine interface for rendering an electronic device and used by a process that triggers complementary actions according to the invention.

[0027] There figure 1 This allows us to present an example of a payment system according to the invention. Such a system consists of an electronic device 10 cooperating with one or more local or remote peripherals 20, 20-2, 20-3 communicating with the electronic device 10 via a wired or wireless communication link N1. Such an electronic device 10 may include electronic and / or computer means 11 capable of implementing an application method A by interpreting and / or executing the program instructions of a first computer program product P1, called the "application program," stored in a program memory 13. Such means 11 may consist of a processing unit comprising one or more microprocessors or microcontrollers cooperating with said program memory 13.Optionally, to implement said application method A, the concept of "processing unit" may, according to the invention, extend beyond said electronic components alone to include a possible operating system (OS) also implemented in program memory 13 and executed by said microprocessors and / or microcontrollers. This operating system provides services facilitating the management of hardware resources to any computer program product executed by said processing unit 11. Examples include, but are not limited to, the "Windows," "Linux," or "OS X" operating systems. As a preferred, but not limited, example, the electronic device 10 according to the... figure 1 This can consist of a cash register 10 resembling a modified personal computer, thanks to the installation of an application program in program memory 13, which triggers the implementation of a payment processing method A. Advantageously, such a device 10 can be directly connected to an electrical network or have a battery to supply the sufficient electrical energy necessary for its operation. For its part, a communicating electronic device 20, 20-2, 20-3 can consist, for example, of a coin acceptor 20, an electronic payment terminal 20-2, also known by the acronym EFT, or any other payment processing device 20-3.

[0028] To limit maintenance interventions on such a payment system, for example during the upgrade or replacement of the coin mechanism 20 or during the installation of a new payment peripheral 20-3, such as, by way of non-limiting example, an online payment platform, the invention provides for adapting the electronic device 10 of said system so that it implements a triggering process for complementary actions 100, the steps of which will be described later in connection with the figure 2 The implementation of such a process by the processing unit 11 can be triggered during the execution or interpretation of program instructions of a second computer program product P2 stored in the program memory 13 of the electronic device 10. Said instructions of said second computer program P2 can, by way of non-limiting example, be arranged to trigger the implementation of communication between the electronic device 10 and the peripherals 20, 20-2 and 20-3 according to the cashing mode selected by the user U of the device 10.

[0029] An electronic device 10 according to the invention thus comprises program memory 13 and data memory 12, cooperating by coupling and / or wired buses represented by double arrows in figure 1 , with a processing unit 11. Said data memories 12 and program memories 13 may possibly constitute only one and the same physical entity.

[0030] An electronic device 10 advantageously includes a 1D instruction and output human-machine interface cooperating with the processing unit 11. This 1D interface allows a user U of the electronic device 10 to interact with it. Such a 1D instruction and output interface may, for example, consist of a touchscreen or take the form of any other means enabling a user U to interact with said electronic device 10. A user U can then instruct said device 10 to proceed, by way of non-limiting example, with a payment by bank card or cash. Alternatively, the electronic device 10 may include two separate human-machine interfaces for translating instructions from a user and for outputting graphic and / or audio content to the user.Such a command interface can consist of a keyboard, microphone, mouse, or any other pointing device. Conversely, such a display interface can consist of a screen or speaker, allowing a user to see or hear and thus perceive digital content using one of their senses.

[0031] Among various types of graphic and / or audio elements or content, the 1D interface allows for the rendering of data that we will call "contextual data." Such contextual data is produced by the processing unit 11 of the device 10 and rendered by the 1D rendering interface during the implementation of the payment process. By way of non-limiting example, the payment process may include a step to trigger the graphic and / or audio rendering of contextual data, such as display elements and / or audio prompts, inviting the user U to interact with the device 10. This contextual data makes it possible to determine the operating stage of the payment process or the current step of it implemented at the time the contextual data is rendered.As we will see later, the invention can advantageously take advantage of said contextual data returned on the 1D rendering and instruction interface to interpret or confer an unambiguous semantics to an instruction emanating from said 1D interface.

[0032] Such contextual data displayed on the 1D rendering human-machine interface can, for example, correspond to an instruction icon or any other information interpretable by a user U, such as that represented in connection with the figure 4 According to this non-limiting example, such a 1D rendering interface renders graphic content elements in the form of 1D_a instruction icons, allowing the user to select a payment method or enter the selling price of a product. Such icons can, for example, represent and / or symbolize a numeric keypad and / or payment methods such as, for example, cash payment represented by the symbol "€", an electronic payment method represented by the abbreviation "EP", or any other payment method represented by the acronym "TBD". Other 1D_b graphic elements can represent goods G1, G2, etc. A G1 icon can, for example, describe a pictogram or a word characterizing a specific product. For example, such a word could be the French word "baguette".Such a 1D rendering interface can also render 1D_c and 1D_d rendering icons representing respectively a remaining amount due related to the financial transaction and a list of goods accounted for in the form of a detailed quote.

[0033] The contextual data rendered by the 1D rendering interface can be pre-recorded in a dedicated volatile rendering memory for the graphic or audio reproduction of said data. This rendering memory may cooperate with the processing unit 11 or be internal to it. It is thus possible to request the processing unit 11 to read from this rendering memory. Alternatively, it is possible to instruct the processing unit 11 to capture all or part of the rendered content and write a digital representation of it in the rendering memory. This rendering memory can also be separate from, or even combined with, the data memory 12.

[0034] Furthermore, the interaction between a user U and the 1D input and output human-machine interface is translated into a setpoint data Cp by said 1D interface. According to the example implementation linked to the figure 1 et 4 A setpoint Cp is transmitted to the processing unit 11. The latter can advantageously offer a subscription service to the various processes it implements. Such a subscription service makes the setpoint Cp available to all processes previously subscribed to said service. A subscribed process can then "appropriate" said setpoint Cp. For the purposes of the invention and throughout this document, the term "appropriate" means an action consisting of requesting that said setpoint Cp not be distributed to other subscribed processes by the processing unit 11. Such a request for non-distribution may consist of requesting a specific service made available by said processing unit 11.If no subscribing process wishes to appropriate a setpoint data Cp, the processing unit 11 makes it available to the process that triggered the return of contextual data that prompted the interaction with the user U from which the setpoint data Cp is derived. According to an alternative, a process, having previously appropriated a setpoint data Cp, can authorize the processing unit 11 to make such setpoint data Cp available to other processes by requesting a suitable distribution service for said setpoint data Cp from the processing unit 11. Such a distribution request may consist of another specific service made available by the processing unit 11.Such a setpoint data C p is therefore transmitted to the process which caused the restitution of the contextual data which triggered the interaction with the user U of the device 10 translated by the 1D setpoint interface into the setpoint data C p . In this case, said data C p is available for the cash handling process.

[0035] The instruction data C p can thus result from interactions between the 1D instruction and output interface and a user U. Such an interaction can result from a voice command issued by said user U via a microphone. In one variant, such an interaction can consist of selecting a predetermined location or pointing range, describing, for example, a virtual key, which the user U can select via the 1D instruction interface. By way of non-limiting example, said user U can hover, for example with their finger or using a suitable pointing device, over different pointing ranges and then select a virtual key corresponding to a particular payment method. As indicated by the figure 4 Such a virtual key can, for example, symbolize a cash payment by displaying a "€" symbol. A setpoint Cp, linked to user input via a 1D interface in the form of a touchscreen, advantageously includes a pair of integer values ​​designating a pixel of said screen, representing the location of the selection point on the 1D input human-machine interface. Optionally, such a setpoint Cp may also include one or more attributes representing, by way of non-limiting example, a particular type of selection, such as pressing the right or left arrow key of a computer mouse-type pointing device.

[0036] In order to cooperate with a peripheral device, such as the coin acceptor 20 described in connection with the figure 1 An electronic device 10, for example a cash register, also includes communication means 14, in the form of a modulator-demodulator, enabling said electronic device 10 to communicate through a communication network N1, for example a wireless link based on a proximity protocol such as Wi-Fi or Bluetooth. The communication means 14 may also, or alternatively, advantageously consist of a USB port, "Universal Serial Bus" according to Anglo-Saxon terminology, in order to implement a wired N1 link.

[0037] Like an electronic device 10 according to the invention, a peripheral 20, 20-2, or 20-3, hereinafter referred to as 20 for simplicity, advantageously comprises a processing unit 21, for example in the form of one or more microcontrollers or processors, cooperating with storage means 22, in the form of a data memory and optionally a program memory, said memories being able to be separate or possibly forming a single physical unit. Such a peripheral 20 also comprises at least one communication means 23, in the form of a modulator-demodulator, enabling communication with the electronic device 10. The means 23 may then advantageously consist of a USB (Universal Serial Bus) port, or any other means supporting a proximity communication protocol, for example, Bluetooth or Wi-Fi.The storage means 22 and the communication means 23 cooperate advantageously with the processing unit 21 by one or more communication buses, represented in . figure 1 by double arrows. The program memory 22 of said device 20 stores the program instructions of a third computer program product P3, implementing specific processing or actions of said device 20, during the interpretation and / or execution of said instructions by the processing unit 21. Such interpretation and / or execution may, by way of non-limiting example, trigger the implementation of a process, for example a payment process.

[0038] As mentioned previously, in order to provide new functionalities, to replace existing functionalities in an application process A, or even to adapt a cash register 10 implementing a payment process based on a new coin acceptor 20 requiring a different operating and / or communication method than a previous coin acceptor, the invention provides for recording instructions from a second computer program product P2 in the program memory 13 of the communicating electronic device 10. Said program instructions P2 have been previously arranged during a prior development and / or editing phase of program P2, to trigger the implementation of a process that initiates complementary actions, advantageously in light of contextual elements rendered by the 1D rendering human-machine interface of said device 10, during the implementation of the application process A by the processing unit 11.An example of the implementation of a 100 triggering process for complementary actions is described in connection with the . figure 2 .

[0039] To implement such a process 100, the data memory 12 of a device 10 as described in connection with the figure 1 It may include, by way of non-limiting example, a table of instructions of interest arranged to store one or more records respectively dedicated to one or more instructions of interest. Each record is arranged to store a reference set of instructions of interest C p_I and a reference set of actions I c_I designating one or more complementary actions to be triggered if an instruction C p corresponds to said reference set of instructions of interest C p_I. A reference set of instructions of interest C p_I may include a value, such as, by way of non-limiting example, a computer code designating a key on a keyboard or a range of values ​​designating a selection area delimiting, for example, the surface of a virtual key rendered by the 1D rendering interface, or even a spectrum representing one or more reference sounds.A range of values ​​designating a selection area can therefore be characterized by pairs of coordinates delimiting a rectangle, a triplet designating the center and radius of a disk, or any characteristic characterizing another geometric shape including a virtual key. This reference frame of interest, C p_I, may also include additional attributes characterizing, for example, a specific key, right or left, if the pointing device used is a computer mouse.

[0040] An action repository I c_I may include a field dedicated to an identifier of complementary actions designating, for example in program memory 13, program instructions dedicated to one or more complementary processes or actions defined during a prior parameterization step of the device 10. Alternatively, such program instructions may be written in data memory 12.

[0041] When the 1D display and instruction human-machine interface consists of a touchscreen, an application process A can then display several different graphical contents, such as, for example, a first screen page relating to the processing of a transaction and a second screen page relating to order tracking or inventory management. Depending on the screen page displayed, an instruction data Cp, comprising a pair of coordinates, must then be interpreted to trigger the implementation of one of two different actions or processes. A record dedicated to an instruction of interest must therefore include an additional field containing the content of contextual data of interest Dc_I characterizing content specific to a given screen page.By way of non-limiting example, such contextual data of interest D c_I may be a digital representation of predefined graphic or audio contextual content that can be rendered by the 1D rendering interface. Such contextual data of interest D c_I may also designate a particular location within content associated with said digital representation when rendered by the 1D rendering interface.

[0042] There figure 2 describes a functional diagram conforming to the invention of a method 100 triggering complementary actions.

[0043] To illustrate the contribution of the invention, let us consider an example application in which a user U of a cash register 10 conforming to the invention wishes to process a cash transaction. Such a user U could, for example, be a cashier.

[0044] The 1D display and input human-machine interface of said cash register 10 may optionally consist of a touchscreen. The processing unit 11 of said cash register 10 implements a cash register process A, including a step for displaying graphic content. Such graphic content may consist, for example, of a screen page relating to the processing of said financial transaction as represented in connection with the figure 4 The cash register 10 cooperates with a peripheral device such as, by way of non-limiting example, a coin acceptor 20. The cooperation between the coin acceptor 20 and the cash register 10 is subsequent to the initialization of the cash handling process A; that is to say, communication between the coin acceptor 20 and the cash register 10 is not supported by the cash handling process A. In order to avoid updating the cash handling process A, the processing unit 11 of the cash register 10 implements a process 100 that triggers additional actions, the process 100 thus acting as a "computer portal", gateway or pilot software between the cash register 10 and the coin acceptor 20.

[0045] To instruct the cash register 10 to accept a cash payment, a user U selects a deposit icon representing a cash payment method, represented by the symbol "€", on the 1D deposit interface of said cash register 10, in connection with the figure 4 Such a selection can result from the user U placing their finger on the setpoint icon. The 1D setpoint human-machine interface then determines the location of the icon and translates this location into a setpoint value Cp, for example, in spatial coordinates. This determination can, for instance, result from the detection of a change in electrical potential on the 1D touchscreen of the cash register 10 or from the interruption of infrared beams for 1D screens using an infrared determination method. The 1D interface makes the setpoint value Cp available to the processing unit 11 of the cash register 10.

[0046] In a preferred but not limiting example of the invention, the data memory 12 of the cash register 10 includes a table of records respectively dedicated to instructions of interest, which we will call, for the sake of simplicity, the "table of instructions of interest." Such a table can be stored in the data memory 12 as a database or as an array. This table may have been previously parameterized and initialized during the implementation of a parameterization method 300 described later. Thus, a record in such a table may include a first field dedicated to a reference of instructions of interest C p_I, a second field dedicated to an action reference I c_I, and a third optional field dedicated to contextual data of interest D c_I.As a non-limiting example, the said first field C p_I can therefore include a selection range of pixels characterizing the surface of a given instruction icon, for example the one containing the symbol “€” in connection with the . figure 4 The second field may contain a supplementary action identifier designating program instructions dedicated to a specific supplementary processing, such as, by way of non-limiting example, program instructions whose execution or interpretation by the processing unit 11 causes the implementation of communication between the coin acceptor 20 and the cash register 10. The third field may contain the content of contextual data such as, by way of non-limiting example, a digital representation of the graphic rendering of the deposit icon representing a means of cash payment and data characterizing the location of the icon on the screen page where said icon is presumed to be graphically rendered by the rendering interface 1D.Such a graphical representation can consist of a table of pixels encoding a shade of grey for each of them, associated with a pair of spatial coordinates characterizing for example the location of the center of the instruction icon on the 1D interface when rendering the associated screen page.

[0047] The program memory 13 may include a database or table containing program instructions dedicated to one or more supplementary processes previously defined during the implementation of a parameterization process 300 described later. Such program instructions may, during their execution or interpretation by the processing unit 11 of the cash register 10, implement a coin-operated payment process.

[0048] In connection with the figure 2 , a method 100, according to the invention and implemented by the processing unit 11 of said cash register 10 described in connection with the figure 1 , includes a first step 101 to detect a provision by the processing unit 11 of a setpoint data C p .

[0049] The process 100 therefore includes a step 102 to search the table of interest stored in the data memory 12 for a record containing the value of the setpoint data Cp. Step 102 can thus consist of performing a test to determine whether the content of the extracted setpoint data Cp is included within one of the predetermined data ranges of the reference setpoints of interest Cp_I within the records of the table of interest. This test can be performed using known computer functions and / or operators.

[0050] According to a first scenario, if step 102 confirms that no record contains the content of the instruction data C p, a situation symbolized by link 102-n in connection with the figure 2 The implementation of process 100 is complete.

[0051] According to a second situation, if step 102 confirms that a reference setpoint of interest C p_I of a record contains the content of the setpoint data C p, a situation symbolized by the link 102-y in connection with the figure 2 The process 100 includes a step 103 to request that the instruction data Cp not be distributed to the cash register process A, as well as to any other complementary process simultaneously implemented by the processing unit 11. Such a request may consist of requesting a specific service from the processing unit 11, as described previously. This recourse may be akin to a takeover of the cash register 10 by the process 100 without the knowledge of the cash register process A. To prevent any new instruction from the user U, the invention may further provide that step 102 consists of generating graphic and / or audio content and triggering its playback by the 1D rendering human-machine interface. By way of non-limiting example, such content may consist of superimposing a gray overlay on the current screen, obscuring icons or virtual buttons.Thus, user U is not encouraged to use the 1D interface as long as said veil remains visible to said user.

[0052] According to one embodiment of the invention, step 102, which involves searching the data memory 12's reference setpoint table for a record containing the value of the setpoint data Cp, may further consist of determining the current implementation context of the application method A in order to deduce from the latter whether the setpoint Cp should be considered a relevant setpoint or, conversely, should be ignored even if a record contains the content of said setpoint. Indeed, as we have seen previously, the payment processing method A can display several different graphical contents, such as, for example, a first screen page relating to the processing of a transaction and a second screen page relating to order tracking or inventory management.To determine the additional action to be implemented following an interaction by user U on the 1D output and instruction interface, step 102 may also consist of determining and analyzing all or part of the content returned by the 1D instruction human-machine interface during said interaction with user U, in order to deduce the current context of implementation of process A. In this way, process 100 is not invasive with regard to application process A.

[0053] Such a step may consist of searching the playback memory for all or part of the digital representations of the elements, returned by interface 1 and which we will call contextual, characteristic of the current implementation context of application process A. As an example, such a characteristic element may consist of the setpoint icon 1D_a whose digital representation is stored in the playback memory. Step 102 then consists of comparing said contextual element returned by the playback interface 1D with the contextual data of interest D c_I associated with the record containing the setpoint data C p.The processing unit 11 can, by way of non-limiting example, perform optical character recognition (OCR) to discriminate between a string of characters and / or an alphanumeric character contained in the contextual element and compare it to the contextual data of interest D c_I. Alternatively, the processing unit 11 can determine a dissimilarity rate or a distance between two numerical representations, respectively the one graphically rendered by the 1D interface and the one contained in the record as contextual data of interest D c_I. Any other method for determining a dissimilarity rate between two numerical representations may also be used.

[0054] According to a first situation, symbolized in figure 4 via link 102-n, if the processing unit 11 shows a high dissimilarity rate, i.e. that the two digital representations are not similar or identical, the implementation of process 100 ends.

[0055] According to a second situation symbolized by the link 102-y, if step 102 shows a low dissimilarity rate, i.e. that the two numerical representations are considered to be similar or identical, then process 100 implements step 103 to require a non-distribution of the setpoint data C p to the cashing process A, as previously described.

[0056] Following the implementation of step 103, process 100 includes a step 104 to trigger the implementation by processing unit 11 of a specific supplementary action. Such a step may consist of extracting, from the record containing the content of the setpoint data Cp, the associated supplementary action identifier, and then searching 104a in program memory 13 for the program instructions designated by said supplementary action identifier. According to our application example, such instructions, when executed or interpreted by processing unit 11, may, but are not limited to, implement a supplementary action of cashing in using a coin acceptor. In one embodiment, such a supplementary action may include a step to determine the amount of the transaction to be collected.According to this first mode, the retrieval memory can include a data structure containing the numerical value of said amount, which was previously entered during the implementation of a step in the cash collection process A. The processing unit 11 can then read from said retrieval memory and directly extract said amount.

[0057] According to another embodiment of the invention, the processing unit 11 can determine the amount of the transaction to be collected, for example €9.85 according to the example described in connection with the figure 4 Based on the graphical representation of the remaining amount due 1D_c, provided by the 1D rendering human-machine interface during the implementation of the cash collection process A, step 104 consists of searching the rendering memory for the digital representation of said amount and then extracting it from said digital representation. The processing unit 11 then performs, as a non-limiting example, optical character recognition (OCR) to determine the amount of the transaction to be collected. The location of this representation was previously determined and configured during the implementation of a parameterization process 300, described later.According to one variant, the processing unit 11 can determine a dissimilarity rate between two digital representations, respectively that rendered graphically by the interface 1D and that contained in a database or table recording a digital representation of symbols or reference images, which can be rendered in the rendering element 1D_c representing the remaining amount due related to the transaction, said database or table being stored in the data memory 12. Such symbols may consist, by way of non-limiting example, of the Arabic numerals "1", "2", ..., "9" and any punctuation mark allowing a separation between tens and hundreds such as, for example, "," or ".".The processing unit 11 can then compare the digital representation of the reference symbols to the digital representation of the rendering element 1D_c, and determine a dissimilarity rate between each image. Alternatively, any other method for determining a dissimilarity rate between two images may be used.

[0058] Once the amount of the transaction to be collected has been determined, the additional action, the implementation of which was triggered by the coin-operated payment process 100, may include a step 104b to generate a control request Rt for the coin-operated mechanism 20. This request Rt may contain the control data Ic necessary for the implementation of the payment process by the coin-operated mechanism 20. The control data Ic may advantageously include the previously determined transaction amount, or even a cash register identifier 10. The processing unit 11 then automatically triggers the transmission of this control request Rt via the communication means 14 of the cash register 10 to the coin-operated mechanism 20.

[0059] For its part, the coin acceptor 20 can implement a communication method 200 with the cash register 10 represented in figure 3 . Such a process 200 may include a step 201 for receiving and decoding the pilot request R t . A subsequent step 202 may consist of extracting from said request the amount of the transaction to be collected, and then triggering the implementation of a payment process by the processing unit 21 of said coin acceptor 20.

[0060] According to a variant of the invention, the method 200 for communicating with the cash register 10 may include a step 203 for generating and triggering the transmission of one or more status messages Mt to the cash register 10. Such a status message Mt may include state data De characterizing, by way of non-limiting example, a current operating state of said coin acceptor 20, characterizing a transaction acknowledgment, the level of coins in the coin acceptor 20, etc.

[0061] The process 100 may therefore include a subsequent step 104c to receive, via the communication means 14, the said status message Mt, decode and extract from said status message Mt the content of said status data De. The process 100 may further include a step 104d to trigger the restitution of all or part of the status data De previously extracted by the restitution human-machine interface 1D, in order to inform the user U of the device 10 of the progress of the processing implemented by the coin acceptor 20.

[0062] Once the supplementary action, implemented in step 104 of process 100, is completed, process 100 advantageously includes a step 105 to request the distribution of the setpoint data Cp to the cash handling process A during a subsequent step 105. Everything then proceeds as if process 100, which triggers supplementary actions, had never required the withholding of said setpoint data Cp. The cash handling process A then normally executes an action associated with said setpoint Cp, if such a setpoint is deemed relevant by said application process A.

[0063] According to one embodiment of the invention, a method 100 triggering complementary actions may include a step not shown in figure 2, to develop and encode a new setpoint data C p before requesting the distribution of said setpoint data C p in step 105. Such a variant thus allows process 100 to alter the content of setpoint C p, for example following a detected malfunction of the device 20. Thus, while a cash receipt setpoint has been transmitted by interface 1D, this can result in a cancellation setpoint or simply in the absence of a setpoint for the application process A.

[0064] Before any implementation of the method 100 triggering additional actions, the invention provides a parameterization method 300 whose purpose is to determine the relevant instructions, or even relevant contextual data, and to associate one or more additional actions with said relevant instructions. Such a method 300 may thus consist of initializing the table of relevant instructions in data memory 12 and / or in program memory 13. By way of non-limiting example, a method 300 may further include a first step to record an identifier of a relevant action in the field dedicated to the action reference I c_I of each record in the table of relevant instructions in data memory 12.The method 300 may therefore include a second step to capture the digital representation of a particular location on a screen page rendered by the 1D rendering and instruction human-machine interface, for example, the location of an instruction icon symbolizing a cash payment on the screen page relating to the collection of a transaction. The method 300 may include a third step to record a range of values ​​corresponding to the location of said icon in the interest instruction repository C p_I associated with a record dedicated to a cash payment instruction, and to record the digital representation of said capture in the contextual data field D c_I of said record.

[0065] Furthermore, such a method 300 can allow the operation of the processing unit 11 to be initialized. Such initialization can consist of loading, within the program memory 13, the instructions of a program P2 which, when executed or interpreted by said processing unit 11, trigger the implementation of a method 100 triggering complementary actions according to the invention.

[0066] According to one embodiment of the invention, a system according to the invention may comprise one or more electronic devices 10 cooperating with one or more peripherals 20, 20-2, 20-3. Each device 10 and each peripheral 20 therefore have their own unique identifier. These identifiers are then integrated into the control messages Rt emanating from the electronic devices 10 and into the status messages Mt emanating from the peripherals 20, 20-2, 20-3 and transmitted within the communication network N1, in order to identify the senders and receivers of said messages Mt and requests Rt.

[0067] Each replacement, addition, or update of a device 20, 20-2, or 20-3 is subject only to an update of the process 100, which triggers additional actions, for example, by loading program instructions P2 into memory. The application process A and the process implemented by said device 20 remain unchanged.

Claims

1. Method (100) for triggering complementary actions implemented by a processing unit (11) of an electronic device (10), said electronic device (10) including a data memory (12), a program memory (13) and a communication means (14) cooperating with the processing unit and providing a determined mode of communication via a communication network (N1), the communication means being connected to a payment collection peripheral (20) in order to cooperate with the processing unit, the processing unit (11) implementing a payment collection application method (A) in order to execute an action in response to the provision of an item of setpoint data (Cp) by said processing unit (11), the item of setpoint data (Cp) being produced by a setpoint human-machine interface (1D) cooperating with the processing unit (11), said item of setpoint data (Cp) expressing an interaction between a user (U) and said interface (1D), the payment collection application method (A) not supporting the communication between said electronic device (10) and the payment collection peripheral (20), said method (100) for triggering complementary actions being characterized in that it includes: - a step (101) for detecting the provision by the processing unit of the item of setpoint data (Cp) using a subscription service proposed by the processing unit (11), said subscription service making it possible to provide said item of setpoint data to all the methods subscribed to said subscription service beforehand; - a step (102) for searching in the data memory (12) cooperating with the processing unit (11), for a record including the value of the item of setpoint data (Cp); - if (102-y) the data memory (12) includes such a record, said method includes: o a step (103) for requesting the non-distribution of said item of setpoint data (Cp) to the payment collection application method (A) as well as to the other methods subscribed to said subscription service by the processing unit (11); o a step (104) for causing the implementation by the processing unit (11) of a determined complementary action consisting of: ▪ producing a control request (Rt) for said payment collection peripheral (20); ▪ triggering the sending of said control request (Rt) by the communication means (14) to the peripheral (20), said request (Rt) including control data (Ic); o a step (105) for requesting the distribution of said item of setpoint data (Cp) to the payment collection application method (A) and other methods by requesting an appropriate service for distributing said item of setpoint data (Cp) from the processing unit once the complementary action is finished.

2. Method (100) according to the preceding claim, for which the step (105) for requesting the distribution of said item of setpoint data (Cp) to the payment collection application method consists of producing a new item of setpoint data (Cp) beforehand.

3. Method (100) according to claim 1 or 2, for which: - the data memory (12) includes a digital representation of an item of content perceptible by the user (U), the output of which by an output interface (1D) also cooperating with said processing unit (11) to said user was previously caused by the implementation of the payment collection application method (A); - the record from the data memory (12) including the value of the item of setpoint data (Cp) moreover comprises the content of an item of contextual data of interest (Dc_I); - said method (100) includes a step prior to the step (103) for requesting the non-distribution of said item of setpoint data (Cp) to the payment collection application method, in order to compare the respective contents of the digital representation of the item of content output by the output interface (1D) and of the item of contextual data of interest (Dc_I), said step (103) for requesting the non-distribution only being implemented if said step for comparing said contents of said digital representation and of said item of contextual data of interest (Dc_I) confirms that the latter are similar.

4. Method (100) according to any one of the preceding claims, for which: - the program memory (13) includes program instructions dedicated to one or more complementary actions; - the step (104) for causing the implementation by the processing unit (11) of a determined complementary action consists of: ∘ extracting from the record including the value of the item of setpoint data (Cp), a complementary action identifier denoting the program instructions dedicated to said determined complementary action within the program memory (13); ∘ triggering the execution of said program instructions by the processing unit (11).

5. Method (100) according to one of the preceding claims for which the step (104) for causing the implementation by the processing unit (11) of a determined complementary action moreover consists of: - receiving via the communication means (14), a status message (Mt) sent by the payment collection peripheral (20), said status message (Mt) comprising the status data content (De) characterizing the current operating status of said payment collection peripheral (20); - decoding said status message (Mt) and extracting the content of said status data (De) therefrom; - triggering the output of all or a portion of said status data (De) by the human-machine output interface (1D) of the electronic device (10).

6. Computer program product (P2) including program instructions which, when they are stored beforehand in a program memory (13) of an electronic device (10) including in addition to said program memory (13), a processing unit (11), a data memory (12), a human-machine output and setpoint interface (1D) and communication means (14) providing a determined mode of communication, said memories (12, 13), said interface (1D) and said communication means (14) cooperating with said processing unit (11), cause the implementation of a method (100) for triggering complementary actions according to any one of claims 1 to 5.

7. Electronic device (10) including a processing unit (11), a data memory (12), a program memory (13), a human-machine output and setpoint interface (1D) and communication means (14) providing a determined mode of communication, said memories (12, 13), said interface (1D) and said communication means (14) cooperating with said processing unit (11), said electronic device (10) being connected to a payment collection peripheral (20) by the communication means (14) and comprising a payment collection application method (A) that does not support communication with the payment collection peripheral (20), characterized in that said electronic device includes, in the program memory (13), the instructions of a computer program product (P2) according to the preceding claim.

8. System including at least one electronic device (10) according to claim 7 cooperating with at least one payment collection peripheral (20).