US11831740B2 - Cloud gateway for legacy computing devices - Google Patents

Cloud gateway for legacy computing devices Download PDF

Info

Publication number
US11831740B2
US11831740B2 US18/054,675 US202218054675A US11831740B2 US 11831740 B2 US11831740 B2 US 11831740B2 US 202218054675 A US202218054675 A US 202218054675A US 11831740 B2 US11831740 B2 US 11831740B2
Authority
US
United States
Prior art keywords
local
cloud
distant
gateway
legacy devices
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.)
Active
Application number
US18/054,675
Other versions
US20230076778A1 (en
Inventor
Jean-Michel LAURENTI
Jan Kelderman
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.)
Amadeus SAS
Original Assignee
Amadeus SAS
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 Amadeus SAS filed Critical Amadeus SAS
Priority to US18/054,675 priority Critical patent/US11831740B2/en
Assigned to AMADEUS S.A.S. reassignment AMADEUS S.A.S. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: KELDERMAN, Jan, LAURENTI, Jean-Michel
Publication of US20230076778A1 publication Critical patent/US20230076778A1/en
Application granted granted Critical
Publication of US11831740B2 publication Critical patent/US11831740B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5681Pre-fetching or pre-delivering data based on network characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R17/00Piezoelectric transducers; Electrostrictive transducers
    • H04R17/10Resonant transducers, i.e. adapted to produce maximum output at a predetermined frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0002Serial port, e.g. RS232C

Definitions

  • This document relates to the field of electronic communications and more particularly to gateways for accessing networks, in the specific context of hotels.
  • PMS Property Management System
  • legacy systems which for example comprise keycard (reader/writer), point of sales telephony systems, Video-on-Demand systems, etc. New systems can be added, even proprietary ones.
  • a local cloud gateway comprises a plurality of interface connectors of different types to physically connect these legacy devices to the cloud, comprising a plurality of distant servers.
  • Developments describe the step of extracting the functional messages out of messages stemming from local legacy devices (e.g. protocol translators), secure communications, logical representations of legacy devices in the cloud (“twins”), administration options, various user interfaces (e.g. buzzer) for seamless configuration and use, the use of one or more actuators (retroactions on the physical world), etc.
  • Software and/or hardware embodiments are described.
  • Embodiments of the invention present numerous advantages.
  • Traffic can be secured downstream the cloud gateway client. Potential adverse eavesdropping for example would necessarily need to be local (i.e. it would require physical intervention upstream the cloud gateway).
  • cloud operated services are scalable. Services can be outsourced and remotely monitored and managed. In other words, management intelligence is deported into the Cloud, allowing for fast and verified upgrades or updates. Mutualisation of systems' management allows economies of scale and leads in the end to better services delivered locally.
  • the box hardware is configurable, for example extendable (would new interface connectors be needed, it is possible to add new hardware mounted on the initial box).
  • the Cloud infrastructure can be fully agnostic on box hardware.
  • the integration of the new local device (and its associated protocol) can be done in a seamless manner: the data traffic is encapsulated and handled in the cloud, i.e. without any impact on boxes already deployed.
  • the global system comprising the box part and the cloud part are simple to deploy, easy to manage, transparent for the user and allows communications with any type of devices or protocols (even future ones).
  • the overall system is reliable.
  • embodiments of the invention can be advantageous for other technical domains wherein there is a need to connect unsecure systems with cloud managed services.
  • FIG. 1 shows one example of an embodiment of a system according to the invention (client-side perspective);
  • FIG. 2 shows one example of an embodiment of a system according to the invention (server-side perspective);
  • FIG. 3 shows examples of steps on an embodiment of the method according to the invention
  • FIG. 4 illustrates the step of extracting functional messages from legacy devices.
  • PMS Physical Management System
  • a “Property Management System” acronym PMS generally designates a standalone device. It can be used in hotels, motels, resorts, hospitals, apartment/townhouse complexes, restaurants, retirement centers, cruise ships, busses, airlines, shopping centers, passenger trains, casinos, etc.
  • a PMS generally presents a limited number of communication interfaces which allow external guest service devices, hereinafter “local legacy systems” to access information stored within the PMS, by sending and receiving messages to and from the PMS via said communication interfaces.
  • the PMS may also send notification messages to guest service devices via the communication interfaces.
  • a serial port is often included as one of the interfaces to allow interconnection to a guest service device such as a controller of the above-described telephone system.
  • a plurality of serial ports for connecting to multiple guest service devices may be included, for example, allowing simultaneous connections to a telephone system controller, an electronic door access controller, a minibar door access controller, a video-on-demand (VOD) controller, a high speed internet access (HSIA) controller, a pay-tv, etc.
  • One or more network ports may also be included as communication interfaces in order to allow the PMS to communicate with any number of external guest service devices via a computer network.
  • a “management system” can be used wherever/whenever a plurality of local devices is present and requires a centralized (or decentralized) management.
  • the scope of the invention thus encompasses management systems of any kind, not only to so called “PMS” systems, described above.
  • Embodiments of the invention can be applied to the management of fleets of vehicles or drones, parking places, etc.
  • a “sensor” is an object or a device whose purpose is to detect events or changes in its environment, and then provide a corresponding output.
  • a sensor presents deviations. If the sensor is not ideal, several types of deviations can be observed. In particular, noise is a random deviation of the signal that varies in time.
  • a sensor according to embodiments of the invention can be one or more of a pressure sensor, ultrasonic sensor, humidity sensor, gas sensor, motion sensor, acceleration sensor or accelerometer, displacement sensor, force measurement sensor, gyro sensor or gyroscope, temperature sensor, image sensor, video sensor, U.V.
  • IMU Inertial Measurement Unit
  • pressure sensor pressure sensor
  • micro-mirror radiofrequency sensor
  • magnetic field sensor digital compass
  • oscillator oscillator
  • lux meter or light sensor proximity sensor
  • G.N.S.S. e.g. G.P.S.
  • barometer sensor Wi-Fi sensor
  • Bluetooth sensor NFC sensor
  • pedometer pulse oximetry sensor
  • heart rate sensor fingerprint sensor . . . .
  • An “actuator” refers to a component which is responsible for moving and/or controlling a mechanism or system.
  • An actuator requires a control signal and a source of energy.
  • An actuator also can be a source of data (either directly or indirectly via a coupled sensor), which can be manipulated by embodiments of the invention (as data stemming from one or more sensors).
  • An actuator is generally used with at least one sensor. In other words, a sensor can be excited by an actuator.
  • An “actuator” according to the invention can be one of the elements selected in the group consisting of a motor (e.g.
  • actuators placed at one end of the control chain can be controlled by the cloud gateway and/or one or more servers in the cloud.
  • bilateral communications between actuator(s), gateway(s) and cloud server(s) can occur.
  • a “cloud gateway” is a “client device”, sometimes hereinafter referred to as “box”, designates hardware and software according to embodiments of the invention.
  • a hotel can comprise one or more boxes.
  • Cloud designates a plurality of (interconnected, generally cooperating) servers.
  • a cloud server can be a physical entity, i.e. a real machine.
  • a cloud server can correspond to one or more virtual machines (i.e. decoupling of hardware and software).
  • the expression “cloud server” can be replaced by “remotely accessed server”.
  • “Local” and “distant” refer to relative words, from the client perspective (the one of the hardware gateway). Terms can be interverted (to obtain the Cloud's perspective). The use of both terms in all cases leaves no ambiguity with respect to (separation in) space. With respect to time, local client(s) and distant server(s) operate during the same timeframe, i.e. with transmission and processing delays (near real-time ranges).
  • “Functional messages” designate the “payload” of the messages, which is used in the Cloud.
  • functional messages correspond to the substance, while form can be varied.
  • Functional messages are interpreted (i.e. translated and executed) in and/or by the cloud, that is server-side.
  • processing is mostly, if not exclusively, performed in the Cloud (backend, orchestration of services).
  • no configuration is required, in particular client-side (few computing power is required client-side).
  • the handling of protocols and messages can be performed in the cloud (e.g. distant servers).
  • the proposed solution is “plug-and-play”, providing a “Swiss knife” (possibly reconfigurable) for physically connecting local legacy devices and handling data and/or programs in cloud.
  • a system for the management of local (legacy) devices comprising: one or more distant cloud servers, a distant cloud server providing a plurality of cloud services; a local cloud gateway interfacing with said local legacy devices, said local cloud gateway comprising: a housing comprising a plurality of interface connectors of different types, said interface connectors being configured to physically connect one or more local legacy devices to one or more distant cloud servers; said interface connectors comprising at least one serial RS232 connector; communication resources configured to exchange data to and from said legacy devices using said interface connectors, with said one or more distant cloud servers, using messages at an OSI layer inferior or equal to TCP/IP; processing resources configured to extract one or more functional messages from data received from each said interface connectors, said one or more functional messages being situated at an OSI layer inferior or equal to TCP/IP; wherein the local cloud gateway is configured to initiate a secure communication channel to communicate one or more extracted functional messages to one or more distant cloud servers; wherein a message protocol service
  • legacy should be interpreted in the broadest sense. It reminds of the fact that these local legacy devices are provided “as is”, generally with old if not obsolete ports or technology (initial technical problem). The term also underlines that local devices are pre-existent and not modifiable. Embodiments of the invention have to cope with this installed base of devices (i.e. to interface them). The manipulated local legacy devices are generally not modifiable indeed. Yet, in some embodiments, some (more recent) legacy devices can be added to the whole system and as a result the managed base of devices can be “hybrid”, comprising a large fraction of the local legacy devices which remain not modifiable, while at least one local device is modifiable (e.g. configurable in part). In such situations, said specific modifiable/configurable local device can be modified or configured.
  • communications between local legacy devices and the gateway are generally unilateral (from legacy devices to the gateway, which adapts to the traffic being received); but in some other situations, the communication with the gateway can be bilateral, at least to a certain extent.
  • the end local legacy device happens to be controllable at some point, then other schemes can be derived from those presently described.
  • the gateway can interact with the modifiable legacy device and, for example, change on-the-fly port configuration. Many other parameters may thus be controlled or otherwise modified within a reconfigurable legacy device, via/by the gateway, via/by the Cloud.
  • Developments around the determination and management of configuration files also can be sophisticated, with multi-tiered configuration files.
  • the present description can be modified to handle “not modifiable or configurable local devices” along “modifiable or configurable local devices”, instead of handling “legacy” devices.
  • a distant cloud server is configured to provide: a message protocol management service to handle data communications to and from said plurality of local legacy devices; an orchestrator service to manage a plurality of local legacy devices or representations thereof; wherein a local legacy device amongst a plurality is identified by an orchestrator service executed in a distant server.
  • the identified legacy device is configured to communicate directly to the orchestrator service using low level protocols.
  • a message protocol service executed in a distant cloud server is configured to encode and communicate one or more functional messages to the local cloud gateway.
  • one or more distant cloud servers are configured to process the one or more functional messages received from local legacy devices.
  • one or more distant cloud servers are manageable via an administration interface accessible by Internet.
  • a local cloud gateway is associated with a corresponding distant cloud gateway, or twin, hosted in a distant cloud server.
  • the local cloud gateway further comprises a memory to cache data received and/or prefetched from the cloud, wherein at least one particular low level protocol requires a maximal amount of time for the provision of a response by said local cloud gateway.
  • the local cloud gateway housing is expandable by the addition of a module comprising an interface connector of a different type.
  • the system further comprises a piezoelectric transducer, said buzzer being configured to vibrate and emit error sound codes according to predefined corresponding sequences.
  • system further comprises a web server configured to serve at least one web page displaying the respective operational status of the requested services or wherein the different statuses of the services are displayable on a webpage retrieved from the network.
  • a configuration file in two parts is determined from an expandable catalogue of low level protocol translators, wherein a first part of the configuration file is communicated to the local cloud gateway, said first part comprising a port number information used by the local legacy device, and a second part of the configuration file is communicated to a message protocol service executed in a distant cloud server.
  • each piece of hardware along the chain receives necessary and sufficient information to cooperate with others.
  • the possibly intensive computations are deported in the cloud, comprising elastic resources by construction, while the local cloud gateway gathers and manages necessary and sufficient information in the field. As results, response times are shortened, and the global system reactivity is improved. Flexibility is brought at minor cost, as local legacy devices got unified and remotely administrated.
  • system further comprises one or more local actuators.
  • local legacy devices are associated with a property management system, in a hotel or a cruise ship or a hospital.
  • local devices are associated with a management system of a different type (management of fleets of vehicles, of an installed base of consoles, of fleets of drones, etc).
  • a computer implemented method in a client device for accessing cloud-hosted services comprising the steps of: connecting one or more local legacy devices to one or more interface connectors of different types of a local cloud gateway; said interface connectors comprising a TCP/IP port as an output; receiving data from said plurality of interface connectors of different types; extracting one or more functional messages from data received from each said interface connectors; communicating one or more functional messages to one or more distant servers.
  • said interface connectors comprise a serial RS232 connector as an input.
  • functional messages are extracted by using an expandable catalogue of low-level protocols.
  • communications are encrypted.
  • a computer implemented method in a client device for accessing cloud-hosted services comprising the steps of connecting one or more local legacy devices to one or more interface connectors of different types of a local cloud gateway; receiving data from said plurality of interface connectors of different types; extracting one or more functional messages from data received from each said interface connectors; and communicating one or more functional messages to one or more distant servers.
  • the method further comprises the step of extracting functional messages by using an expandable catalogue of low-level protocols, and comprises the step of determining at least one configuration file associated with a local legacy device.
  • the method further comprises the step of identifying a local legacy device and communicating a part of the corresponding configuration file to the local cloud gateway, said part comprising port number information used by the local legacy device.
  • the method further comprises the step of communicating another part of the configuration file to a message protocol service executed in a distant cloud server.
  • the method further comprises the steps of registering one or more local legacy devices against the local cloud gateway, by mapping local legacy devices onto said local cloud gateway ports; registering said local legacy devices against one or more cloud servers and booting up said local cloud gateway.
  • the method further comprises the steps of receiving data from one or more cloud servers, said data comprising executable instructions; executing said executable instructions on said one or more local legacy devices.
  • a computer program comprising instructions for carrying out one or more steps of the method when said computer program is executed on a computer device.
  • FIG. 1 shows one example of an embodiment of a system according to the invention (client-side perspective).
  • a “box” ( 100 ) interacts with the cloud management system ( 130 ) in the Cloud ( 131 ).
  • the box can be placed in a building ( 101 ), for example, in a hotel. In variants, the box can be placed in a motel, resort, hospital, apartment, restaurant, retirement center, cruise ship, bus, plane, shopping center, train, casino, etc.
  • the physical device ( 100 ) comprises a local communication manager ( 110 ) which comprises a plurality of connectors ( 11011 , 1102 and 1103 ).
  • a legacy system can be a telephone, an electronic door actuator, a minibar door actuator or access controller, a video-on-demand controller, a lighting controller, etc More generally, such a system can be any consumer electronics device (e.g. laptop, smart watch, virtual reality or augmented reality device, game console, television, etc) or any Internet of Things (IoT) device as well (for example smart meters in domotics; mechatronics components in automotive; medical devices or components in healthcare; elements for infrastructure e.g. smart city, transportation, logistics; banking devices in finance; etc)
  • IoT Internet of Things
  • Said legacy systems can comprise sensors and/or actuators.
  • an actuator 11031
  • an actuator 11031
  • Connections between interface connectors and connected systems can be wired, but some can be wireless e.g. 11021 .
  • a serial-to-IP device can send data through Wi-Fi. Bluetooth or Li-Fi or any short-range communication interfaces can be used.
  • the low level protocols manager ( 111 ), configured in or in association with the box 100 handles said received data. Messages or payloads are then extracted from said data and communicated to the local communication manager ( 110 ).
  • the extracted payloads are sent to the cloud client manager ( 120 ), which in turn interacts with the cloud server manager (not shown, next figure).
  • hardware requirements of the box are reduced to the minimal amount required, i.e. hardware connectivity and low-level protocols management.
  • the box (edge) is more intelligent or “smart”. For example, some time limits with respect to ack-nack exchanges can advantageously be managed via specific memory or buffer units. Other embodiments are possible (from immediate forward, to store-and-forward models, wherein data can be temporarily stored in local storage in the event that communication between the cloud gateway and the cloud platform is disrupted).
  • the box or local cloud gateway housing is expandable by the addition of a module comprising an interface connector of a different type.
  • the client device further comprises lights arranged on the housing, configured to display the respective operational status of the requested services. For example, next to each interface, green or red LEDs can confirm or infirm the operational state of the service addressed by the interface. Various embodiments are possible. A blinking green light can mean that the connection to the Cloud is operative but that the corresponding service is not yet active.
  • the box or local cloud gateway housing comprises a piezoelectric transducer, said buzzer being configured to vibrate and emit error sound codes according to predefined corresponding sequences.
  • the vibrating unit of the box can be opportunistically leveraged.
  • the housing of the device further comprises a help button, a triggering of said button establishing a phone call for support.
  • the box further comprises a web server configured to serve at least one web page displaying the respective operational status of the requested services.
  • the different statuses of the services are displayable on a webpage retrieved from the network.
  • a mobile phone for example can access the webpage, for example of the same Wi-Fi network.
  • the web page can be projected onto a desk or wall.
  • the web page is displayed by or within augmented reality and/or virtual reality.
  • the client device is being configured to exchange data from one or more servers hosted in the Cloud, said servers hosting an expandable catalogue of low-level protocol translators to decode/encode data communicated by the client device.
  • the box ( 100 ), e.g. cloud client manager ( 120 ) or entity ( 110 ) or else, can comprise an expandable catalogue of “protocol translators” to encode and/or decode messages.
  • a finite set of low-level protocols can be used to encapsulate device data (similar to an “envelop”), allowing extraction and transfer of the functional message itself (payload) to the cloud for translation. Examples of payload extraction are provided hereinafter.
  • FIG. 2 shows one example of an embodiment of a system according to the invention (server-side perspective).
  • the cloud server manager ( 220 ) can interact with a plurality of “twins” ( 210 ).
  • a “twin” e.g. ( 201 ) is the representation of a box in the Cloud, comprising information about its physical/or logical properties (status, conditions, activity, etc). It can represent a virtual logical copy of a box ( 100 ). It encompasses IT of parameters associated with the box (e.g. status of services, components and associated states, temperature, environmental conditions, etc).
  • the “twin” representation is accessible and manipulatable even when the corresponding box is offline. Advantageously, this allows simulating or otherwise anticipating changes brought to the box.
  • a collection of twins corresponding to a respective plurality of boxes can thus be managed remotely.
  • the outgoing traffic e.g. out of the box ( 100 ) is encrypted ( 201 ).
  • Ciphering can be sophisticated further (e.g. priori obfuscation, hardened code, steganography in video frames, etc). While local hacking in theory remains possible, remote hacking (i.e. after data leaves the hotel) is impeded or at least slowed down.
  • the box retrieves a configuration (for example via a configuration file) and establishes a secured channel, which can be used for bidirectional communications.
  • a twin ( 200 , 201 . . . ) is the representation of one gateway (in a hotel) in the cloud, comprising information (e.g. reported properties) about its status and activity, advantageously (even) accessible when a box is offline.
  • APIs Application Programming Interfaces
  • APIs 230 allows the described systems and methods to be interoperable with virtually any type of PMS ( 240 ).
  • APIs ( 250 ) expose methods ( 210 ) to manage the plurality of twins, i.e. virtual and always-on representations of the installed base of gateways. This can allow third-party management, in part or entirely. APIs abstractions allow for seamless integration, better controlled points and independent updates.
  • a given PMS can be operated by logic ( 220 ), i.e. software code which comprises or rules an orchestrator ( 222 ) in association with a low-levels protocols manager ( 223 ).
  • An administration logic ( 210 ) identifies rules and manages the plurality of twins.
  • FIG. 3 shows examples of steps on an embodiment of the method according to the invention.
  • the method according to the invention comprises a step of registering ( 300 ) one or more local devices (e.g. a Keycard, a POS, a telephony system).
  • a local device is modeled using a set of generic capabilities i.e. operations (manage Keycard, post-charge on a guest folio, retrieve guest info, etc).
  • Supporting a new device means creating a new translator, selecting the generic capabilities it is offering, and writing only specific code to map generic commands with specific protocol sequences, and configuring which low level protocol(s) the device is supporting to encapsulate (with default settings).
  • the method comprises a step of registering ( 310 ) a new box on the cloud.
  • a new box For example, using a box Administration Portal, a given box is assigned to a hotel, and local devices to work with (picked up from existing catalogue) are mapped to Box serial or TCP-IP ports. For example, Keycard number 17 on RS232 Port 1, POS number 59 on TCP-IP Port 6, etc.
  • the method comprises a step of booting ( 320 ) the registered box.
  • the box for example connects to a configuration endpoint, identifies itself to retrieve its configuration file built during a previous step. For example, the step of using a low-level ETX-STX protocol on Port1, and CRLF on Port 6.
  • no credentials are required (e.g. no IoT Hub endpoint address): only the configuration endpoint is needed.
  • the box identifies itself using both public (Mac Address) and private (hardware related) keys.
  • An encrypted box configuration file retrieved from the Cloud comprises the IoT Hub address to use (DEV, QA, and PRD) and the connection credentials.
  • the underlying Operating System password can be customized.
  • the box in running mode, when receiving data via a specific port, the box will use the configured low-level protocol to extract ( 330 ) the message payload from raw data.
  • a header can be added to the extracted payload, for example to later enable the cloud translation engine to select the right translator (Box ID, Port number).
  • the message can be send to the cloud for translation and action (e.g. with TLS 1.2 encryption)
  • extracted payloads can be encapsulated along additional meta data (e.g. ID of box, ID port, time stamping, etc).
  • additional meta data e.g. ID of box, ID port, time stamping, etc.
  • one or more boxes can be remotely managed ( 340 ).
  • an administration portal can allow the remote administration of one or more boxes (e.g. activation, configuration, and deactivation) and monitoring (e.g. exceptions, status).
  • the cloud gateway can allow a messaging interface ( 350 ), for example in real-time, to show messages communication messages between a given box and the cloud.
  • the messaging interface can take the form of a chat interface, displaying the various steps of communications. This advantageously improves debugging.
  • a Box connects to the configuration endpoint (only known URL). If not registered (e.g. first time connection), the considered box sends a registration request and waits for an operator to a) review the list of boxes pending registration, b) approve or reject box's request, and c) create configuration (assigned Hotel, System Devices, Ports, Protocols). If already registered, the box gets encrypted configuration containing IoT Hub endpoint and connection keys (generated during registration from box identifiers), generates connection token valid for a limited time (e.g. 24 h), connects to Cloud IoT Hub (e.g. Azure)
  • Cloud IoT Hub e.g. Azure
  • the configuration endpoint handles authentication using Box ID, Firmware version, hash from HW private key.
  • a returned AES encrypted configuration contains system devices and protocol information, but also IoT Hub endpoint to connect to (Test, Prod, . . . ) along associated credentials.
  • no IoT Hub endpoint/credentials are stored in the box.
  • TLS 1.2 (and subsequent versions) connections can be used. Authentication may use token valid for limited amount of time. Full traceability on all login events can be ensured.
  • a message arriving on a specific Box port must use a valid low level protocol sequence for the system device configured for that port.
  • any exception can be logged and ignored.
  • only IoT Hub messages containing valid Device Messages can be accepted.
  • any exception can be logged and ignored.
  • Device messages can contain only functional messages (i.e. device protocol encoded data) linked to the specific system device connected to a specific port (as per the box configuration), restricting the potential attack perimeter or surface. In an embodiment, any exception can be logged and ignored.
  • the system devices catalogue can be expanded. Multiple device types can be supported (e.g. Keycard, Pay-Tv, POS, PBX, Energy, etc).
  • Sub-systems interactions can be performed through well-defined integration points. Separating functional data (i.e. device data) and monitoring/management flows, can enable traffic prioritisation. Loosely coupling of cloud systems, box hardware and PMS enables different lifecycles: e.g. supporting additional system Devices doesn't impact the PMS (for example).
  • a box can be first provisioned and configured through an administration tool.
  • a gateway box firmware can only contain the configuration endpoint address (HTTPS service).
  • HTTPS service When the considered box starts, it connects to the configuration endpoint to retrieve its configuration by passing identifiers linked to hardware and its firmware version. If already registered, the considered box gets an encrypted configuration containing IoTHub endpoint and connection keys (generated during registration from box identifiers).
  • a connection token valid for a limited time e.g. 24 h
  • the box can send a registration request with its identifier and a hash code generated from a unique internal hardware key.
  • a human operator can review the list of boxes pending registration, to approve and configure them (e.g. which hotel the box is assigned to, which type of system device is connected on which port, and with which protocol).
  • FIG. 4 illustrates the step of extracting functional messages from legacy devices.
  • the figure show different initial messages ( 410 ) stemming from legacy devices. These messages come in different forms (formats, syntax, with specific prefix, suffix, tags, etc).
  • the “payload” (substance or functional meaning) of a given message can be identified and later isolated or extracted.
  • FIG. 4 illustrates the step of extracting a functional message from an incoming device message.
  • the figures shows the same operation (creation of a keycard in a hotel), represented in/by two different legacy devices.
  • the gateway box can re-encapsulate the payload, for example in a message 420 , along with the device communication port ID. Encapsulated messages can be gathered in the Cloud ( 430 )
  • Different message formats may involve different message sizes, data fields, authentications, encoding techniques, compression, message segmentation, acknowledgements, checksums, begin/end tags, etc.
  • the low-level protocols management thus comprises corresponding lists of characters strings, tags, special characters, lengths of messages, etc which can be used to normalize incoming data flows, that is extract the substance of a received message, whatever the form of the message.
  • the disclosed methods can take form of an entirely hardware embodiment (e.g. FPGA), an entirely software embodiment or an embodiment containing both hardware and software elements.
  • Software embodiments include but are not limited to firmware, resident software, microcode, etc.
  • the invention can take the form of a computer program product accessible from a computer-usable or computer-readable medium providing program code for use by or in connection with a computer or any instruction execution system.
  • a computer-usable or computer-readable can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
  • the medium can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device) or a propagation medium.

Abstract

The document describes systems and methods for handling local (legacy) devices. A local cloud gateway comprises a plurality of interface connectors of different types to physically connect a plurality of these legacy devices to the cloud, comprising a plurality of distant servers. Developments describe the step of extracting the functional messages out of messages stemming from local legacy devices (e.g. protocol translators), secure communications, logical representations of legacy devices in the cloud (“twins”), administration options, various user interfaces (e.g. buzzer) for seamless configuration and use, the use of one or more actuators (retroactions on the physical world), etc. Software and/or hardware embodiments are described.

Description

CROSS-REFERENCE TO RELATED APPLICATION
This application is a continuation of U.S. patent application Ser. No. 16/928,533, filed Jul. 14, 2020, which claims priority to French patent application no. 1908548, filed Jul. 26, 2019. The contents of the above-identified applications are incorporated herein by reference.
FIELD
This document relates to the field of electronic communications and more particularly to gateways for accessing networks, in the specific context of hotels.
BACKGROUND
The shift to the Cloud is to be seen in many industries, but some technical domains have to cope with legacy systems (inheritage of systems of the past, with no substitution possible). Therefore, significant adaptations have sometimes to be performed, leaving space for disruption.
In the travel industry, a hotelkeeper is using a so-called “Property Management System”, acronym PMS, to manage his daily activities (check-in, check-out, etc). Such a system in fact interacts with a variety of local existing systems, hereinafter named legacy systems, which for example comprise keycard (reader/writer), point of sales telephony systems, Video-on-Demand systems, etc. New systems can be added, even proprietary ones.
Many of these local systems are old, but hotelkeepers (or their respective providers) are not planning to replace them. These devices are generally not able to communicate over the Internet. In addition, if applicable, each of these systems can be using his own communication protocol, via different connection interfaces. For example, RS232 serial interfaces can still be (intensely) used. Some systems can translate RS232 interfaces to TCP/IP, but they can require a significant amount of work, and maintenance. Some other systems present limitations. For example, using a Serial-to-IP device, allowing virtualization of serial connection, may imply the downstream use of virtual machines, which may hardly integrate with predefined cloud APIs offered in cloud platforms.
In addition, most of these legacy systems are unsecured (data traffic in clear, etc).
Nowadays, commercial offerings off-the-shelves by hotel technology providers, such as Digi or Comtrol, which aim at connecting existing legacy systems to a PMS (of whatever type), present limitations (if and when they just exist). For example, it is not possible to directly connect devices presenting RS232 interfaces to existing Cloud APIs.
SUMMARY
The document describes systems and methods for handling local (legacy) devices. A local cloud gateway comprises a plurality of interface connectors of different types to physically connect these legacy devices to the cloud, comprising a plurality of distant servers. Developments describe the step of extracting the functional messages out of messages stemming from local legacy devices (e.g. protocol translators), secure communications, logical representations of legacy devices in the cloud (“twins”), administration options, various user interfaces (e.g. buzzer) for seamless configuration and use, the use of one or more actuators (retroactions on the physical world), etc. Software and/or hardware embodiments are described.
Embodiments of the invention present numerous advantages.
User configuration is minimal and user-friendly. Deployment is simple, reduced at maximum. Integration is seamless. Users can focus on their core expertise. Hence, user adoption can be maximized.
Traffic can be secured downstream the cloud gateway client. Potential adverse eavesdropping for example would necessarily need to be local (i.e. it would require physical intervention upstream the cloud gateway).
Advantageously, per definition, cloud operated services are scalable. Services can be outsourced and remotely monitored and managed. In other words, management intelligence is deported into the Cloud, allowing for fast and verified upgrades or updates. Mutualisation of systems' management allows economies of scale and leads in the end to better services delivered locally.
Advantageously, in some embodiments, the box hardware is configurable, for example extendable (would new interface connectors be needed, it is possible to add new hardware mounted on the initial box).
Advantageously, the Cloud infrastructure can be fully agnostic on box hardware.
Advantageously, the integration of the new local device (and its associated protocol) can be done in a seamless manner: the data traffic is encapsulated and handled in the cloud, i.e. without any impact on boxes already deployed.
Advantageously, the global system comprising the box part and the cloud part are simple to deploy, easy to manage, transparent for the user and allows communications with any type of devices or protocols (even future ones). By construction the overall system is reliable. More generally, embodiments of the invention can be advantageous for other technical domains wherein there is a need to connect unsecure systems with cloud managed services.
BRIEF DESCRIPTIONS OF THE DRAWINGS
Embodiments of the invention will now be described by way of example with reference to the accompanying drawings in which like references denote similar elements, and in which:
FIG. 1 shows one example of an embodiment of a system according to the invention (client-side perspective);
FIG. 2 shows one example of an embodiment of a system according to the invention (server-side perspective);
FIG. 3 shows examples of steps on an embodiment of the method according to the invention;
FIG. 4 illustrates the step of extracting functional messages from legacy devices.
DETAILED DESCRIPTION
A “Property Management System” acronym PMS generally designates a standalone device. It can be used in hotels, motels, resorts, hospitals, apartment/townhouse complexes, restaurants, retirement centers, cruise ships, busses, airlines, shopping centers, passenger trains, casinos, etc. A PMS generally presents a limited number of communication interfaces which allow external guest service devices, hereinafter “local legacy systems” to access information stored within the PMS, by sending and receiving messages to and from the PMS via said communication interfaces. The PMS may also send notification messages to guest service devices via the communication interfaces. A serial port is often included as one of the interfaces to allow interconnection to a guest service device such as a controller of the above-described telephone system. A plurality of serial ports for connecting to multiple guest service devices may be included, for example, allowing simultaneous connections to a telephone system controller, an electronic door access controller, a minibar door access controller, a video-on-demand (VOD) controller, a high speed internet access (HSIA) controller, a pay-tv, etc. One or more network ports may also be included as communication interfaces in order to allow the PMS to communicate with any number of external guest service devices via a computer network.
More generally, a “management system” can be used wherever/whenever a plurality of local devices is present and requires a centralized (or decentralized) management. The scope of the invention thus encompasses management systems of any kind, not only to so called “PMS” systems, described above. Embodiments of the invention can be applied to the management of fleets of vehicles or drones, parking places, etc.
A “sensor” is an object or a device whose purpose is to detect events or changes in its environment, and then provide a corresponding output. A sensor presents deviations. If the sensor is not ideal, several types of deviations can be observed. In particular, noise is a random deviation of the signal that varies in time. A sensor according to embodiments of the invention can be one or more of a pressure sensor, ultrasonic sensor, humidity sensor, gas sensor, motion sensor, acceleration sensor or accelerometer, displacement sensor, force measurement sensor, gyro sensor or gyroscope, temperature sensor, image sensor, video sensor, U.V. sensor, magnetic sensor, CMOS image sensor, a silicon microphone, Inertial Measurement Unit (IMU), pressure sensor, micro-mirror, radiofrequency sensor, magnetic field sensor, digital compass, oscillator, lux meter or light sensor, proximity sensor, G.N.S.S. (e.g. G.P.S.), barometer sensor, Wi-Fi sensor, Bluetooth sensor, NFC sensor, pedometer, pulse oximetry sensor, heart rate sensor, fingerprint sensor . . . .
An “actuator” refers to a component which is responsible for moving and/or controlling a mechanism or system. An actuator requires a control signal and a source of energy. An actuator also can be a source of data (either directly or indirectly via a coupled sensor), which can be manipulated by embodiments of the invention (as data stemming from one or more sensors). An actuator is generally used with at least one sensor. In other words, a sensor can be excited by an actuator. An “actuator” according to the invention can be one of the elements selected in the group consisting of a motor (e.g. electric, piezoelectric, stepper), an autofocus actuator, a micro-speaker, a micro-mirror, an electro-active polymer, a servomechanism, a shape-memory alloy, a haptic component (e.g. vibratile), etc. Noticeably, actuators placed at one end of the control chain can be controlled by the cloud gateway and/or one or more servers in the cloud. In other words, bilateral communications between actuator(s), gateway(s) and cloud server(s) can occur.
A “cloud gateway” is a “client device”, sometimes hereinafter referred to as “box”, designates hardware and software according to embodiments of the invention. A hotel can comprise one or more boxes.
The term “Cloud” designates a plurality of (interconnected, generally cooperating) servers. A cloud server can be a physical entity, i.e. a real machine. In some embodiments, a cloud server can correspond to one or more virtual machines (i.e. decoupling of hardware and software). The expression “cloud server” can be replaced by “remotely accessed server”.
“Local” and “distant” refer to relative words, from the client perspective (the one of the hardware gateway). Terms can be interverted (to obtain the Cloud's perspective). The use of both terms in all cases leaves no ambiguity with respect to (separation in) space. With respect to time, local client(s) and distant server(s) operate during the same timeframe, i.e. with transmission and processing delays (near real-time ranges).
“Functional messages” designate the “payload” of the messages, which is used in the Cloud. In other words, functional messages correspond to the substance, while form can be varied. Functional messages are interpreted (i.e. translated and executed) in and/or by the cloud, that is server-side.
Thus, processing is mostly, if not exclusively, performed in the Cloud (backend, orchestration of services). Advantageously, no configuration is required, in particular client-side (few computing power is required client-side). The handling of protocols and messages can be performed in the cloud (e.g. distant servers). Locally, the proposed solution is “plug-and-play”, providing a “Swiss knife” (possibly reconfigurable) for physically connecting local legacy devices and handling data and/or programs in cloud.
There is disclosed a system for the management of local (legacy) devices (e.g. in a Property Management System for an hotel), said system comprising: one or more distant cloud servers, a distant cloud server providing a plurality of cloud services; a local cloud gateway interfacing with said local legacy devices, said local cloud gateway comprising: a housing comprising a plurality of interface connectors of different types, said interface connectors being configured to physically connect one or more local legacy devices to one or more distant cloud servers; said interface connectors comprising at least one serial RS232 connector; communication resources configured to exchange data to and from said legacy devices using said interface connectors, with said one or more distant cloud servers, using messages at an OSI layer inferior or equal to TCP/IP; processing resources configured to extract one or more functional messages from data received from each said interface connectors, said one or more functional messages being situated at an OSI layer inferior or equal to TCP/IP; wherein the local cloud gateway is configured to initiate a secure communication channel to communicate one or more extracted functional messages to one or more distant cloud servers; wherein a message protocol service executed in a distant cloud service is configured to receive and decode said one or more extracted functional messages communicated via the secured communication channel.
The term “legacy” should be interpreted in the broadest sense. It reminds of the fact that these local legacy devices are provided “as is”, generally with old if not obsolete ports or technology (initial technical problem). The term also underlines that local devices are pre-existent and not modifiable. Embodiments of the invention have to cope with this installed base of devices (i.e. to interface them). The manipulated local legacy devices are generally not modifiable indeed. Yet, in some embodiments, some (more recent) legacy devices can be added to the whole system and as a result the managed base of devices can be “hybrid”, comprising a large fraction of the local legacy devices which remain not modifiable, while at least one local device is modifiable (e.g. configurable in part). In such situations, said specific modifiable/configurable local device can be modified or configured.
In other words, communications between local legacy devices and the gateway are generally unilateral (from legacy devices to the gateway, which adapts to the traffic being received); but in some other situations, the communication with the gateway can be bilateral, at least to a certain extent. If the end local legacy device happens to be controllable at some point, then other schemes can be derived from those presently described. For example, if port configuration is enabled on one end legacy device, the gateway can interact with the modifiable legacy device and, for example, change on-the-fly port configuration. Many other parameters may thus be controlled or otherwise modified within a reconfigurable legacy device, via/by the gateway, via/by the Cloud. Developments around the determination and management of configuration files also can be sophisticated, with multi-tiered configuration files. The present description can be modified to handle “not modifiable or configurable local devices” along “modifiable or configurable local devices”, instead of handling “legacy” devices.
In one embodiment, a distant cloud server is configured to provide: a message protocol management service to handle data communications to and from said plurality of local legacy devices; an orchestrator service to manage a plurality of local legacy devices or representations thereof; wherein a local legacy device amongst a plurality is identified by an orchestrator service executed in a distant server.
In one embodiment, the identified legacy device is configured to communicate directly to the orchestrator service using low level protocols.
In one embodiment, a message protocol service executed in a distant cloud server is configured to encode and communicate one or more functional messages to the local cloud gateway.
In one embodiment, one or more distant cloud servers are configured to process the one or more functional messages received from local legacy devices.
In one embodiment, one or more distant cloud servers are manageable via an administration interface accessible by Internet.
In one embodiment, a local cloud gateway is associated with a corresponding distant cloud gateway, or twin, hosted in a distant cloud server.
In one embodiment, the local cloud gateway further comprises a memory to cache data received and/or prefetched from the cloud, wherein at least one particular low level protocol requires a maximal amount of time for the provision of a response by said local cloud gateway.
In one embodiment, the local cloud gateway housing is expandable by the addition of a module comprising an interface connector of a different type.
In one embodiment, the system further comprises a piezoelectric transducer, said buzzer being configured to vibrate and emit error sound codes according to predefined corresponding sequences.
In one embodiment, the system further comprises a web server configured to serve at least one web page displaying the respective operational status of the requested services or wherein the different statuses of the services are displayable on a webpage retrieved from the network.
In one embodiment, a configuration file in two parts is determined from an expandable catalogue of low level protocol translators, wherein a first part of the configuration file is communicated to the local cloud gateway, said first part comprising a port number information used by the local legacy device, and a second part of the configuration file is communicated to a message protocol service executed in a distant cloud server.
The partitioning (or division with overlap) of the configuration file in several parts is advantageous: each piece of hardware along the chain receives necessary and sufficient information to cooperate with others. The possibly intensive computations are deported in the cloud, comprising elastic resources by construction, while the local cloud gateway gathers and manages necessary and sufficient information in the field. As results, response times are shortened, and the global system reactivity is improved. Flexibility is brought at minor cost, as local legacy devices got unified and remotely administrated.
In one embodiment, the system further comprises one or more local actuators.
In one embodiment, local legacy devices are associated with a property management system, in a hotel or a cruise ship or a hospital. In another embodiment, local devices are associated with a management system of a different type (management of fleets of vehicles, of an installed base of consoles, of fleets of drones, etc).
There is described a computer implemented method in a client device for accessing cloud-hosted services, comprising the steps of: connecting one or more local legacy devices to one or more interface connectors of different types of a local cloud gateway; said interface connectors comprising a TCP/IP port as an output; receiving data from said plurality of interface connectors of different types; extracting one or more functional messages from data received from each said interface connectors; communicating one or more functional messages to one or more distant servers. In an embodiment, said interface connectors comprise a serial RS232 connector as an input.
In one embodiment, functional messages are extracted by using an expandable catalogue of low-level protocols.
In one embodiment, communications are encrypted.
There is described a computer implemented method in a client device for accessing cloud-hosted services, comprising the steps of connecting one or more local legacy devices to one or more interface connectors of different types of a local cloud gateway; receiving data from said plurality of interface connectors of different types; extracting one or more functional messages from data received from each said interface connectors; and communicating one or more functional messages to one or more distant servers.
In one embodiment, the method further comprises the step of extracting functional messages by using an expandable catalogue of low-level protocols, and comprises the step of determining at least one configuration file associated with a local legacy device.
In one embodiment, the method further comprises the step of identifying a local legacy device and communicating a part of the corresponding configuration file to the local cloud gateway, said part comprising port number information used by the local legacy device.
In one embodiment, the method further comprises the step of communicating another part of the configuration file to a message protocol service executed in a distant cloud server.
In one embodiment, the method further comprises the steps of registering one or more local legacy devices against the local cloud gateway, by mapping local legacy devices onto said local cloud gateway ports; registering said local legacy devices against one or more cloud servers and booting up said local cloud gateway.
In one embodiment, the method further comprises the steps of receiving data from one or more cloud servers, said data comprising executable instructions; executing said executable instructions on said one or more local legacy devices.
There is disclosed a computer program comprising instructions for carrying out one or more steps of the method when said computer program is executed on a computer device.
FIG. 1 shows one example of an embodiment of a system according to the invention (client-side perspective).
A “box” (100) interacts with the cloud management system (130) in the Cloud (131). The box can be placed in a building (101), for example, in a hotel. In variants, the box can be placed in a motel, resort, hospital, apartment, restaurant, retirement center, cruise ship, bus, plane, shopping center, train, casino, etc. The physical device (100) comprises a local communication manager (110) which comprises a plurality of connectors (11011, 1102 and 1103).
Data is received from legacy systems (11011, 11021, 11031). A legacy system can be a telephone, an electronic door actuator, a minibar door actuator or access controller, a video-on-demand controller, a lighting controller, etc More generally, such a system can be any consumer electronics device (e.g. laptop, smart watch, virtual reality or augmented reality device, game console, television, etc) or any Internet of Things (IoT) device as well (for example smart meters in domotics; mechatronics components in automotive; medical devices or components in healthcare; elements for infrastructure e.g. smart city, transportation, logistics; banking devices in finance; etc)
Said legacy systems can comprise sensors and/or actuators. For example, an actuator (11031) can be connected to the interface connector 1103. Connections between interface connectors and connected systems can be wired, but some can be wireless e.g. 11021. For example, a serial-to-IP device can send data through Wi-Fi. Bluetooth or Li-Fi or any short-range communication interfaces can be used.
The low level protocols manager (111), configured in or in association with the box 100 handles said received data. Messages or payloads are then extracted from said data and communicated to the local communication manager (110).
Later on, the extracted payloads are sent to the cloud client manager (120), which in turn interacts with the cloud server manager (not shown, next figure).
In one embodiment, hardware requirements of the box are reduced to the minimal amount required, i.e. hardware connectivity and low-level protocols management.
In some embodiments, the box (edge) is more intelligent or “smart”. For example, some time limits with respect to ack-nack exchanges can advantageously be managed via specific memory or buffer units. Other embodiments are possible (from immediate forward, to store-and-forward models, wherein data can be temporarily stored in local storage in the event that communication between the cloud gateway and the cloud platform is disrupted).
In an embodiment, the box or local cloud gateway housing is expandable by the addition of a module comprising an interface connector of a different type. In an embodiment, the client device further comprises lights arranged on the housing, configured to display the respective operational status of the requested services. For example, next to each interface, green or red LEDs can confirm or infirm the operational state of the service addressed by the interface. Various embodiments are possible. A blinking green light can mean that the connection to the Cloud is operative but that the corresponding service is not yet active.
In an embodiment, the box or local cloud gateway housing comprises a piezoelectric transducer, said buzzer being configured to vibrate and emit error sound codes according to predefined corresponding sequences. In the absence of a display indeed, the vibrating unit of the box can be opportunistically leveraged. In an embodiment, the housing of the device further comprises a help button, a triggering of said button establishing a phone call for support.
In an embodiment, the box further comprises a web server configured to serve at least one web page displaying the respective operational status of the requested services.
In an embodiment, the different statuses of the services are displayable on a webpage retrieved from the network. A mobile phone for example can access the webpage, for example of the same Wi-Fi network. In variants, the web page can be projected onto a desk or wall. In other variants, the web page is displayed by or within augmented reality and/or virtual reality. In an embodiment, the client device is being configured to exchange data from one or more servers hosted in the Cloud, said servers hosting an expandable catalogue of low-level protocol translators to decode/encode data communicated by the client device.
In an embodiment, the box (100), e.g. cloud client manager (120) or entity (110) or else, can comprise an expandable catalogue of “protocol translators” to encode and/or decode messages.
A finite set of low-level protocols can be used to encapsulate device data (similar to an “envelop”), allowing extraction and transfer of the functional message itself (payload) to the cloud for translation. Examples of payload extraction are provided hereinafter.
FIG. 2 shows one example of an embodiment of a system according to the invention (server-side perspective).
The cloud server manager (220) can interact with a plurality of “twins” (210). A “twin” e.g. (201) is the representation of a box in the Cloud, comprising information about its physical/or logical properties (status, conditions, activity, etc). It can represent a virtual logical copy of a box (100). It encompasses IT of parameters associated with the box (e.g. status of services, components and associated states, temperature, environmental conditions, etc). The “twin” representation is accessible and manipulatable even when the corresponding box is offline. Advantageously, this allows simulating or otherwise anticipating changes brought to the box. A collection of twins corresponding to a respective plurality of boxes can thus be managed remotely.
With respect to computer security, most of legacy devices are using unencrypted/unauthenticated connections with the gateway (RS232, TCP-IP), as per their native protocols. Many of these legacy systems are obsolete, some vendors do even not exist anymore, but hotels might keep them for years. As a consequence, the local network is considered as unsecured.
In some embodiments of the invention, the outgoing traffic e.g. out of the box (100) is encrypted (201). Ciphering can be sophisticated further (e.g. priori obfuscation, hardened code, steganography in video frames, etc). While local hacking in theory remains possible, remote hacking (i.e. after data leaves the hotel) is impeded or at least slowed down.
In an embodiment, for example at startup, the box retrieves a configuration (for example via a configuration file) and establishes a secured channel, which can be used for bidirectional communications.
Server-side, a plurality of corresponding boxes or “twins” 210 is maintained or hosted. A twin (200, 201 . . . ) is the representation of one gateway (in a hotel) in the cloud, comprising information (e.g. reported properties) about its status and activity, advantageously (even) accessible when a box is offline.
The use of APIs (Application Programming Interfaces) enables the decoupling of services of the architecture. For example, the existence of APIs 230 allows the described systems and methods to be interoperable with virtually any type of PMS (240). APIs (250) expose methods (210) to manage the plurality of twins, i.e. virtual and always-on representations of the installed base of gateways. This can allow third-party management, in part or entirely. APIs abstractions allow for seamless integration, better controlled points and independent updates.
Via these APIs (230), a given PMS can be operated by logic (220), i.e. software code which comprises or rules an orchestrator (222) in association with a low-levels protocols manager (223). An administration logic (210) identifies rules and manages the plurality of twins.
FIG. 3 shows examples of steps on an embodiment of the method according to the invention.
In an embodiment, the method according to the invention comprises a step of registering (300) one or more local devices (e.g. a Keycard, a POS, a telephony system). A local device is modeled using a set of generic capabilities i.e. operations (manage Keycard, post-charge on a guest folio, retrieve guest info, etc). Supporting a new device means creating a new translator, selecting the generic capabilities it is offering, and writing only specific code to map generic commands with specific protocol sequences, and configuring which low level protocol(s) the device is supporting to encapsulate (with default settings).
In an embodiment, the method comprises a step of registering (310) a new box on the cloud. For example, using a box Administration Portal, a given box is assigned to a hotel, and local devices to work with (picked up from existing catalogue) are mapped to Box serial or TCP-IP ports. For example, Keycard number 17 on RS232 Port 1, POS number 59 on TCP-IP Port 6, etc.
In an embodiment, the method comprises a step of booting (320) the registered box. The box for example connects to a configuration endpoint, identifies itself to retrieve its configuration file built during a previous step. For example, the step of using a low-level ETX-STX protocol on Port1, and CRLF on Port 6.
Various security models are envisioned. In an embodiment, no credentials are required (e.g. no IoT Hub endpoint address): only the configuration endpoint is needed. Once connected, the box identifies itself using both public (Mac Address) and private (hardware related) keys. An encrypted box configuration file retrieved from the Cloud comprises the IoT Hub address to use (DEV, QA, and PRD) and the connection credentials. During initial registration process (i.e. when configuring and assigning a registered box to a registered hotel), the underlying Operating System password can be customized.
In an embodiment, in running mode, when receiving data via a specific port, the box will use the configured low-level protocol to extract (330) the message payload from raw data. In an embodiment, a header can be added to the extracted payload, for example to later enable the cloud translation engine to select the right translator (Box ID, Port number). Further on, the message can be send to the cloud for translation and action (e.g. with TLS 1.2 encryption)
In an embodiment, extracted payloads can be encapsulated along additional meta data (e.g. ID of box, ID port, time stamping, etc).
In an embodiment, one or more boxes can be remotely managed (340). For example, an administration portal can allow the remote administration of one or more boxes (e.g. activation, configuration, and deactivation) and monitoring (e.g. exceptions, status).
In an embodiment, the cloud gateway can allow a messaging interface (350), for example in real-time, to show messages communication messages between a given box and the cloud. The messaging interface can take the form of a chat interface, displaying the various steps of communications. This advantageously improves debugging.
Other embodiments are described hereinafter. When starting, a Box connects to the configuration endpoint (only known URL). If not registered (e.g. first time connection), the considered box sends a registration request and waits for an operator to a) review the list of boxes pending registration, b) approve or reject box's request, and c) create configuration (assigned Hotel, System Devices, Ports, Protocols). If already registered, the box gets encrypted configuration containing IoT Hub endpoint and connection keys (generated during registration from box identifiers), generates connection token valid for a limited time (e.g. 24 h), connects to Cloud IoT Hub (e.g. Azure)
Regarding the Cloud (IoT Hub), the configuration endpoint (in https) handles authentication using Box ID, Firmware version, hash from HW private key. A returned AES encrypted configuration contains system devices and protocol information, but also IoT Hub endpoint to connect to (Test, Prod, . . . ) along associated credentials. In one embodiment, no IoT Hub endpoint/credentials are stored in the box.
Regarding the IoT Hub platform, in some embodiments, TLS 1.2 (and subsequent versions) connections can be used. Authentication may use token valid for limited amount of time. Full traceability on all login events can be ensured.
Regarding the filtering of messages, at Box level, to be processed, a message arriving on a specific Box port must use a valid low level protocol sequence for the system device configured for that port. In an embodiment, any exception can be logged and ignored. In the Cloud, in an embodiment, only IoT Hub messages containing valid Device Messages can be accepted. In an embodiment, any exception can be logged and ignored.
Device messages can contain only functional messages (i.e. device protocol encoded data) linked to the specific system device connected to a specific port (as per the box configuration), restricting the potential attack perimeter or surface. In an embodiment, any exception can be logged and ignored.
In an embodiment, the system devices catalogue can be expanded. Multiple device types can be supported (e.g. Keycard, Pay-Tv, POS, PBX, Energy, etc). Sub-systems interactions (system devices, gateway box, PMS) can be performed through well-defined integration points. Separating functional data (i.e. device data) and monitoring/management flows, can enable traffic prioritisation. Loosely coupling of cloud systems, box hardware and PMS enables different lifecycles: e.g. supporting additional system Devices doesn't impact the PMS (for example).
Example of a Gateway Box Configuration
To connect, a box can be first provisioned and configured through an administration tool. A gateway box firmware can only contain the configuration endpoint address (HTTPS service). When the considered box starts, it connects to the configuration endpoint to retrieve its configuration by passing identifiers linked to hardware and its firmware version. If already registered, the considered box gets an encrypted configuration containing IoTHub endpoint and connection keys (generated during registration from box identifiers). A connection token valid for a limited time (e.g. 24 h) can then be generated using connection keys, and connection is established with the Azure IoT Hub. If not registered (e.g. first connection), the box can send a registration request with its identifier and a hash code generated from a unique internal hardware key. In one embodiment, a human operator can review the list of boxes pending registration, to approve and configure them (e.g. which hotel the box is assigned to, which type of system device is connected on which port, and with which protocol).
FIG. 4 illustrates the step of extracting functional messages from legacy devices.
The figure show different initial messages (410) stemming from legacy devices. These messages come in different forms (formats, syntax, with specific prefix, suffix, tags, etc). The “payload” (substance or functional meaning) of a given message can be identified and later isolated or extracted.
FIG. 4 illustrates the step of extracting a functional message from an incoming device message. The figures shows the same operation (creation of a keycard in a hotel), represented in/by two different legacy devices.
First String of Characters:
“A\u001ER101\u001ETGUEST\u001EFEmma\u001ENZebar\u001EUGUEST \u001E17C1”
Second String of Characters:
“0399G|R101|NZebar|D201707200000|O201707221400|C1|”
The gateway box can re-encapsulate the payload, for example in a message 420, along with the device communication port ID. Encapsulated messages can be gathered in the Cloud (430)
Different message formats may involve different message sizes, data fields, authentications, encoding techniques, compression, message segmentation, acknowledgements, checksums, begin/end tags, etc.
The low-level protocols management thus comprises corresponding lists of characters strings, tags, special characters, lengths of messages, etc which can be used to normalize incoming data flows, that is extract the substance of a received message, whatever the form of the message.
The disclosed methods can take form of an entirely hardware embodiment (e.g. FPGA), an entirely software embodiment or an embodiment containing both hardware and software elements. Software embodiments include but are not limited to firmware, resident software, microcode, etc. The invention can take the form of a computer program product accessible from a computer-usable or computer-readable medium providing program code for use by or in connection with a computer or any instruction execution system. A computer-usable or computer-readable can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The medium can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device) or a propagation medium.

Claims (16)

The invention claimed is:
1. A system for managing local legacy devices, the system comprising:
one or more distant cloud servers providing a plurality of cloud services;
a local cloud gateway interfacing with one or more local legacy devices, the local cloud gateway comprising:
a housing comprising a plurality of interface connectors of different types, the interface connectors being configured to physically connect one or more of the local legacy devices to the one or more distant cloud servers;
communication resources configured to exchange data to and from the one or more local legacy devices using the interface connectors, with the one or more distant cloud servers, using messages at an OSI layer inferior or equal to TCP/IP;
processing resources configured to extract one or more functional messages from data received from each interface connector, the one or more functional messages being situated at an OSI layer inferior or equal to TCP/IP; and
a piezoelectric transducer supported by the housing, the piezoelectric transducer configured to generate audible sound in response to detection of an error at the local cloud gateway;
wherein the local cloud gateway is configured to initiate a secure communication channel to communicate one or more extracted functional messages to the one or more distant cloud servers; and
wherein a message protocol service executed in at least one of the cloud services is configured to receive and decode the one or more extracted functional messages communicated via the secure communication channel.
2. The system of claim 1, wherein each distant cloud server is configured to provide:
a message protocol management service to handle data communications to and from the local legacy devices; and
an orchestrator service to manage the local legacy devices or representations thereof;
wherein a local legacy device amongst a plurality is identified by the orchestrator service.
3. The system of claim 2, wherein the identified legacy device is configured to communicate directly to the orchestrator service using low level protocols.
4. The system of claim 1, wherein a message protocol service executed in the one or more distant cloud servers is configured to encode and communicate one or more functional messages to the local cloud gateway.
5. The system claim 1, wherein the one or more distant cloud servers are configured to process the one or more functional messages received from the local legacy devices.
6. The system of claim 1, wherein the one or more distant cloud servers are manageable via an administration interface accessible by Internet.
7. The system of claim 1, wherein the local cloud gateway is associated with a corresponding distant cloud gateway hosted in the one or more distant cloud servers.
8. The system of claim 1, wherein the local cloud gateway further comprises a memory to cache data obtained from the one or more distant cloud servers, and wherein at least one particular low level protocol requires a maximal amount of time for the provision of a response by said local cloud gateway.
9. The system of claim 1, wherein the local cloud gateway housing is expandable by the addition of a module comprising an interface connector of a different type.
10. The system of claim 1, further comprising a web server configured to serve at least one web page displaying the respective operational status of the requested services or wherein the different statuses of the services are displayable on a webpage retrieved from the network.
11. The system of claim 1, wherein a configuration file in multiple parts is determined from an expandable catalogue of low level protocol translators.
12. The system of claim 11, wherein a part of the configuration file is communicated to the local cloud gateway, said part comprising a port identifier used by the local legacy device.
13. The system of claim 11, wherein another part of the configuration the is communicated to a message protocol service executed in a distant cloud server.
14. The system of claim 1, further comprising one or more local actuators.
15. The system of claim 1, said interface connectors comprising at least one serial RS232 connector.
16. The system of claim 1, wherein local legacy devices are associated with a property management system, used in one or more of an hotel, motel, resort, hospital, apartment/townhouse complex, restaurant, retirement center, cruise ship, bus, airline, shopping center, passenger train, or casino.
US18/054,675 2019-07-26 2022-11-11 Cloud gateway for legacy computing devices Active US11831740B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/054,675 US11831740B2 (en) 2019-07-26 2022-11-11 Cloud gateway for legacy computing devices

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
FR1908548A FR3099256B1 (en) 2019-07-26 2019-07-26 CLOUD GATEWAY
FR1908548 2019-07-26
US16/928,533 US11503138B2 (en) 2019-07-26 2020-07-14 Cloud gateway for legacy computing devices
US18/054,675 US11831740B2 (en) 2019-07-26 2022-11-11 Cloud gateway for legacy computing devices

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US16/928,533 Continuation US11503138B2 (en) 2019-07-26 2020-07-14 Cloud gateway for legacy computing devices

Publications (2)

Publication Number Publication Date
US20230076778A1 US20230076778A1 (en) 2023-03-09
US11831740B2 true US11831740B2 (en) 2023-11-28

Family

ID=68987838

Family Applications (3)

Application Number Title Priority Date Filing Date
US16/928,533 Active 2041-01-13 US11503138B2 (en) 2019-07-26 2020-07-14 Cloud gateway for legacy computing devices
US18/054,699 Active US11849010B2 (en) 2019-07-26 2022-11-11 Cloud gateway for legacy computing devices
US18/054,675 Active US11831740B2 (en) 2019-07-26 2022-11-11 Cloud gateway for legacy computing devices

Family Applications Before (2)

Application Number Title Priority Date Filing Date
US16/928,533 Active 2041-01-13 US11503138B2 (en) 2019-07-26 2020-07-14 Cloud gateway for legacy computing devices
US18/054,699 Active US11849010B2 (en) 2019-07-26 2022-11-11 Cloud gateway for legacy computing devices

Country Status (3)

Country Link
US (3) US11503138B2 (en)
EP (1) EP3770762A1 (en)
FR (1) FR3099256B1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11445369B2 (en) * 2020-02-25 2022-09-13 International Business Machines Corporation System and method for credential generation for wireless infrastructure and security
US20230065780A1 (en) * 2021-08-27 2023-03-02 International Business Machines Corporation Message management via a universal interface apparatus
CN114285538B (en) * 2021-11-08 2023-09-29 淮阴工学院 Cloud edge cooperative elasticity extensible method for wide-area measurement of power grid
CN114710290B (en) * 2022-06-06 2022-08-26 科大天工智能装备技术(天津)有限公司 Safety authentication method for intelligent greenhouse sensor equipment
CN115102981A (en) * 2022-06-09 2022-09-23 杭州中天微系统有限公司 Data processing method, Internet of things system, electronic device and computer storage medium

Citations (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6230194B1 (en) 1997-07-14 2001-05-08 Freegate Corporation Upgrading a secure network interface
US20050171950A1 (en) 2004-01-29 2005-08-04 Dumitru Marius M. Managing application status information for a computer application
US20130086140A1 (en) * 2011-09-29 2013-04-04 Michael A. Salsburg Cloud management system and method
US20130179461A1 (en) 2012-01-10 2013-07-11 Bank Of America Proactive Monitoring of Database Servers
US20130212214A1 (en) 2012-02-09 2013-08-15 Rockwell Automation Technologies, Inc. Cloud gateway for industrial automation information and control systems
US8533253B2 (en) 2005-06-09 2013-09-10 Whirlpool Corporation Distributed object-oriented appliance control system
EP2645636A2 (en) 2012-03-26 2013-10-02 Huawei Device Co., Ltd. Home gateway, cloud server, and method for communication therebetween
US20130316814A1 (en) * 2012-05-25 2013-11-28 Igt Acousto-optic modulator for multi-layer display
US20130332208A1 (en) 2012-06-12 2013-12-12 Apple Inc. Systems and methods for processing orders and reservations using an electronic device
CN203734848U (en) 2013-12-19 2014-07-23 上海新时达电气股份有限公司 Internet of Things gateway
US20150071465A1 (en) * 2013-09-10 2015-03-12 Michael Andrew Zalisk User Interfaces and Related Devices and Systems
US9231904B2 (en) 2006-09-25 2016-01-05 Weaved, Inc. Deploying and managing networked devices
EP3056993A1 (en) 2015-02-16 2016-08-17 International Business Machines Corporation Enabling an on-premises resource to be exposed to a public cloud application securely and seamlessly
WO2016144694A1 (en) 2015-03-12 2016-09-15 Vormetric, Inc. Secure and control data migrating between enterprise and cloud services
US20170022015A1 (en) 2015-07-23 2017-01-26 Pinc Solutions System and method for determining and controlling status and location of an object
US20180000344A1 (en) * 2015-01-26 2018-01-04 Northeastern University Internet-Linked Ultrasonic Network for Medical Devices
US20180063000A1 (en) 2016-08-29 2018-03-01 Vmware, Inc. Stateful connection optimization over stretched networks using packet introspection
US20180248827A1 (en) * 2017-02-24 2018-08-30 Vidscale Services, Inc. Heterogeneous cloud controller
US20180282098A1 (en) * 2017-03-31 2018-10-04 Seiko Epson Corporation Recording apparatus
US20190081912A1 (en) 2017-09-11 2019-03-14 Vmware, Inc. Securely managing and diagnosing network middleboxes
US20190140926A1 (en) 2017-11-03 2019-05-09 International Business Machines Corporation System and method for detecting changes in cloud service up-time
US10769152B2 (en) 2016-12-02 2020-09-08 Cisco Technology, Inc. Automated log analysis
US20210218571A1 (en) 2006-12-29 2021-07-15 Kip Prod P1 Lp Multi-services application gateway and system employing the same
US11625280B2 (en) 2020-03-31 2023-04-11 Bmc Software, Inc. Cloud-native proxy gateway to cloud resources

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10591174B2 (en) 2017-04-06 2020-03-17 Johnson Controls Technology Company Smart transducer plug and play control system and method

Patent Citations (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6230194B1 (en) 1997-07-14 2001-05-08 Freegate Corporation Upgrading a secure network interface
US20050171950A1 (en) 2004-01-29 2005-08-04 Dumitru Marius M. Managing application status information for a computer application
US8533253B2 (en) 2005-06-09 2013-09-10 Whirlpool Corporation Distributed object-oriented appliance control system
US9231904B2 (en) 2006-09-25 2016-01-05 Weaved, Inc. Deploying and managing networked devices
US20210218571A1 (en) 2006-12-29 2021-07-15 Kip Prod P1 Lp Multi-services application gateway and system employing the same
US20130086140A1 (en) * 2011-09-29 2013-04-04 Michael A. Salsburg Cloud management system and method
US20130179461A1 (en) 2012-01-10 2013-07-11 Bank Of America Proactive Monitoring of Database Servers
US20130212214A1 (en) 2012-02-09 2013-08-15 Rockwell Automation Technologies, Inc. Cloud gateway for industrial automation information and control systems
EP2645636A2 (en) 2012-03-26 2013-10-02 Huawei Device Co., Ltd. Home gateway, cloud server, and method for communication therebetween
US20130290548A1 (en) 2012-03-26 2013-10-31 Huawei Device Co., Ltd. Home gateway, cloud server, and method for communication therebetween
US20130316814A1 (en) * 2012-05-25 2013-11-28 Igt Acousto-optic modulator for multi-layer display
US20130332208A1 (en) 2012-06-12 2013-12-12 Apple Inc. Systems and methods for processing orders and reservations using an electronic device
US20150071465A1 (en) * 2013-09-10 2015-03-12 Michael Andrew Zalisk User Interfaces and Related Devices and Systems
CN203734848U (en) 2013-12-19 2014-07-23 上海新时达电气股份有限公司 Internet of Things gateway
US20180000344A1 (en) * 2015-01-26 2018-01-04 Northeastern University Internet-Linked Ultrasonic Network for Medical Devices
EP3056993A1 (en) 2015-02-16 2016-08-17 International Business Machines Corporation Enabling an on-premises resource to be exposed to a public cloud application securely and seamlessly
WO2016144694A1 (en) 2015-03-12 2016-09-15 Vormetric, Inc. Secure and control data migrating between enterprise and cloud services
US20170022015A1 (en) 2015-07-23 2017-01-26 Pinc Solutions System and method for determining and controlling status and location of an object
US20180063000A1 (en) 2016-08-29 2018-03-01 Vmware, Inc. Stateful connection optimization over stretched networks using packet introspection
US10769152B2 (en) 2016-12-02 2020-09-08 Cisco Technology, Inc. Automated log analysis
US20180248827A1 (en) * 2017-02-24 2018-08-30 Vidscale Services, Inc. Heterogeneous cloud controller
US20180282098A1 (en) * 2017-03-31 2018-10-04 Seiko Epson Corporation Recording apparatus
US20190081912A1 (en) 2017-09-11 2019-03-14 Vmware, Inc. Securely managing and diagnosing network middleboxes
US20190140926A1 (en) 2017-11-03 2019-05-09 International Business Machines Corporation System and method for detecting changes in cloud service up-time
US11625280B2 (en) 2020-03-31 2023-04-11 Bmc Software, Inc. Cloud-native proxy gateway to cloud resources

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
U.S. Appl. No. 18/054,699, Cloud Gateway for Legacy Computing Devices, filed Nov. 11, 2022.

Also Published As

Publication number Publication date
FR3099256A1 (en) 2021-01-29
US20210029225A1 (en) 2021-01-28
US11849010B2 (en) 2023-12-19
EP3770762A1 (en) 2021-01-27
US11503138B2 (en) 2022-11-15
US20230076778A1 (en) 2023-03-09
US20230074914A1 (en) 2023-03-09
FR3099256B1 (en) 2021-08-06

Similar Documents

Publication Publication Date Title
US11831740B2 (en) Cloud gateway for legacy computing devices
US9712511B2 (en) Mobile cloud service architecture
US20220247624A1 (en) Managing network connected devices
US10567367B2 (en) Method, system, and program storage device for managing tenants in an industrial internet of things
US10637724B2 (en) Managing network connected devices
JP6412943B2 (en) Cloud service custom execution environment
US10306023B2 (en) Pre-formed instructions for a mobile cloud service
US20160087933A1 (en) Techniques for the deployment and management of network connected devices
JP7055200B2 (en) Computer processing methods, appliances, systems, and programs to access the gateway management console
MX2014012325A (en) Enabling web clients to provide web services.
JP2021502732A (en) Computer processing methods, equipment, systems, and programs to access the gateway management console
WO2022067160A1 (en) Remote network and cloud infrastructure management
US11815895B2 (en) Method of offline operation of an intelligent, multi-function robot
US20200236084A1 (en) Computing system with gateway data transfer based upon device data flow characteristics and related methods
KR102549842B1 (en) Integrated device firmware management method and system applicable to various communication protocols
RU2773049C2 (en) System, device and method for access to shared infrastructure
EP3915011A1 (en) Computing system with data transfer based upon device data flow characteristics and related methods
KR20230040434A (en) Device firmware management method and system capable of multi-processing according to the application of various communication protocols

Legal Events

Date Code Title Description
AS Assignment

Owner name: AMADEUS S.A.S., FRANCE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LAURENTI, JEAN-MICHEL;KELDERMAN, JAN;SIGNING DATES FROM 20200717 TO 20200720;REEL/FRAME:061738/0449

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STPP Information on status: patent application and granting procedure in general

Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT RECEIVED

STPP Information on status: patent application and granting procedure in general

Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED

STCF Information on status: patent grant

Free format text: PATENTED CASE