Hospitality media system employing virtual user interfaces
First Claim
1. A hospitality media system providing virtual user interfaces over a network, the system comprising:
- one or more computer servers deployed on the network and configured to manage operation of a plurality of server instances each with an associated virtual frame buffer, and to manage operation of a plurality of user interface applications; and
a client device having one or more processors coupled to a memory storing software instructions, the client device being coupled to both the network and a display located in one of a plurality of guest rooms of a hospitality establishment;
wherein, by the one or more processors of the client device executing the software instructions stored in the memory, the client device is configured to request a connection with the one or more servers over the network at a start of a user session;
the one or more servers are further configured to allocate one of the server instances to the client device in response to receiving the connection request from the client device, and to associate one of the user interface applications with the server instance allocated to the client device, the user interface application configured to render a graphical user interface to the virtual frame buffer of the server instance allocated to the client device;
the one or more servers are further configured to establish a first connection with the client device via the network to conduct a virtual user interface session, and to forward to the client device via the first connection updates of the graphical user interface from the virtual frame buffer of the server instance allocated to the client device, at least some of the updates including transparency information for use in blending the graphical user interface with video rendered by the client device;
the one or more servers are further configured to receive user input from the client device via the first connection, provide the user input to the user interface application, and generate playback instructions for controlling playback of the video on the client device according to the user input, the user input representing interaction by a user of the client device with a representation of the graphical user interface;
the one or more servers are further configured to send the playback instructions to the client device via the network over a second connection established with the client device;
the client device is configured to receive the graphical user interface updates via the first connection, receive the playback instructions via the second connection, receive media content for rendering the video via a channel different than the first and second connections, play the video on the display according to the media content, further render on the display the representation of the graphical user interface overlaid on the video according to the updates and the transparency information, and translate the playback instructions into inter-process communications recognized by middleware running on the client device in order to control playback of the video shown on the display according to the playback instructions, the client device further configured to transmit the user input to the one or more servers via the first connection; and
the one or more servers are further configured to reclaim the server instance allocated to the client device when the user session is complete.
6 Assignments
0 Petitions
Accused Products
Abstract
A server is deployed on a network and manages operation of a plurality of server instances each with a virtual frame buffer. A client establishes a connection with the server at a start of a session. The server allocates a server instance to the client and a user interface application renders a corresponding graphical user interface to the virtual frame buffer of the allocated server instance. The server forwards updates of the graphical user interface from the virtual frame buffer to the client, where at least some of the updates include transparency information for blending the graphical user interface with additional visual information at the client. When the session is complete the server reclaims the server instance allocated to the client. In-room device requirements in guest rooms of a hospitality establishment are thereby minimized while providing enhanced user interface performance. Locations in other applications include private residences and businesses.
101 Citations
26 Claims
-
1. A hospitality media system providing virtual user interfaces over a network, the system comprising:
-
one or more computer servers deployed on the network and configured to manage operation of a plurality of server instances each with an associated virtual frame buffer, and to manage operation of a plurality of user interface applications; and a client device having one or more processors coupled to a memory storing software instructions, the client device being coupled to both the network and a display located in one of a plurality of guest rooms of a hospitality establishment; wherein, by the one or more processors of the client device executing the software instructions stored in the memory, the client device is configured to request a connection with the one or more servers over the network at a start of a user session; the one or more servers are further configured to allocate one of the server instances to the client device in response to receiving the connection request from the client device, and to associate one of the user interface applications with the server instance allocated to the client device, the user interface application configured to render a graphical user interface to the virtual frame buffer of the server instance allocated to the client device; the one or more servers are further configured to establish a first connection with the client device via the network to conduct a virtual user interface session, and to forward to the client device via the first connection updates of the graphical user interface from the virtual frame buffer of the server instance allocated to the client device, at least some of the updates including transparency information for use in blending the graphical user interface with video rendered by the client device; the one or more servers are further configured to receive user input from the client device via the first connection, provide the user input to the user interface application, and generate playback instructions for controlling playback of the video on the client device according to the user input, the user input representing interaction by a user of the client device with a representation of the graphical user interface; the one or more servers are further configured to send the playback instructions to the client device via the network over a second connection established with the client device; the client device is configured to receive the graphical user interface updates via the first connection, receive the playback instructions via the second connection, receive media content for rendering the video via a channel different than the first and second connections, play the video on the display according to the media content, further render on the display the representation of the graphical user interface overlaid on the video according to the updates and the transparency information, and translate the playback instructions into inter-process communications recognized by middleware running on the client device in order to control playback of the video shown on the display according to the playback instructions, the client device further configured to transmit the user input to the one or more servers via the first connection; and the one or more servers are further configured to reclaim the server instance allocated to the client device when the user session is complete. - View Dependent Claims (2, 3, 4, 5, 6, 7, 23)
-
-
8. A computer-implemented method for providing a virtual user interface over a network in a hospitality media system;
- the computer-implemented method comprising;
managing operation of a plurality of server instances each with an associated virtual frame buffer on one or more servers deployed on the network; receiving by the one or more servers a connection request over the network at a start of a user session, wherein the connection request is sent from a client device coupled to both the network and a display device located in one of a plurality of guest rooms of a hospitality establishment; in response to receiving the connection request, allocating one of the server instances to the client device by the one or more servers; associating a user interface application operating on a first one of the one or more servers with the server instance allocated to the client device, wherein the user interface application is configured to render a graphical user interface to the virtual frame buffer of the server instance allocated to the client device; establishing a first connection between the first server and the client device via the network to conduct a virtual user interface session; forwarding updates of the graphical user interface to the client device via the first connection from the virtual frame buffer of the server instance allocated to the client device, at least some of the updates including transparency information for use in blending the graphical user interface with video rendered by the client device; receiving user input from the client device via the first connection, wherein the user input represents interaction by a user of the client device with a representation of the graphical user interface; providing the user input to the user interface application; generating playback instructions for controlling playback of the video on the client device according to the user input; sending the playback instructions to the client device via the network over a second connection established with the client device; and reclaiming by the one or more servers the server instance allocated to the client device when the user session is complete; wherein the client device receives via a channel different than the first and second connections media content for rendering the video, plays the video on the display according to the media content, further renders on the display the representation of the graphical user interface overlaid on the video according to the updates and the transparency information, and translates the playback instructions into inter-process communications recognized by middleware running on the client device in order to control playback of the video shown on the display according to the playback instructions. - View Dependent Claims (9, 10, 11, 12, 24)
- the computer-implemented method comprising;
-
13. A computer-implemented method for interacting with a virtual user interface over a network of a hospitality media system, the computer-implemented method comprising:
-
starting a user session at a client device coupled to both the network and a display located in a guest room of a hospitality establishment; transmitting a connection request by the client device to one or more servers via the network;
wherein the one or more servers are configured to manage operation of a plurality of server instances each with an associated virtual frame buffer and, in response to the connection request, to associate a user interface application operating on the server with an allocated one of the server instances, the user interface application configured to render a graphical user interface to the virtual frame buffer of the server instance allocated to the client device;establishing a first connection between the client device and the one or more servers via the network to conduct a virtual user interface session; receiving, by the client device, updates of the graphical user interface from the virtual frame buffer of the server instance allocated to the client device via the first connection, at least some of the updates including transparency information for use in blending the graphical user interface with video rendered by the client device; forwarding user input by the client device to the one or more servers via the first connection for presentation to the user interface application, the user input representing interaction by a user of the client device with a representation of the graphical user interface rendered by the client device on the display; receiving, by the client device, playback instructions from the one or more servers via the network over a second connection established between the client device and the one or more servers, wherein the one or more servers generate the playback instructions for controlling playback of the video on the client device according to the user input; receiving, by the client device, media content for rendering the video via a channel separate from the first and second connections; playing the video on the display by the client device according to the media content; further rendering, by the client device, the representation of the graphical user interface overlaid on the video according to the updates and the transparency information; and translating, by the client device, the playback instructions into inter-process communications recognized by middleware running on the client device in order to control playback of the video shown on the display according to the playback instructions. - View Dependent Claims (14, 15, 25)
-
-
16. A computing device configured to provide a virtual user interface in a hospitality media system, the computing device comprising:
-
a memory device storing software instructions along with a plurality of virtual frame buffers each associated with one of a plurality of server instances; a network interface coupled to a network at the hospitality establishment; and one or more processors;
wherein, by executing the software instructions in the memory device, the one or more processors are configured to;receive a connection request from a client device on the network, wherein the client device is coupled to a display located in one of a plurality of guest rooms of the hospitality establishment; allocate one of the server instances to the client device in response to receiving the connection request from the client device; associate a user interface application with the virtual frame buffer, the user interface application configured to render a graphical user interface to the virtual frame buffer of the server instance allocated to the client device; establish a first connection to the remote client via the network to conduct a virtual user interface session; forward updates of the graphical user interface to the client device via the first connection from the virtual frame buffer of the server instance allocated to the client device, at least some of the updates including transparency information for use in blending the graphical user interface with video rendered by the client device; receive user input from the client device via the first connection and provide the user input to the user interface application, the user input representing interaction by a user of client device with a representation of the graphical user interface; generate playback instructions for controlling playback of the video on the client device according to the user input; send the playback instructions to the client device via the network over a second connection established with the client device; and reclaim the server instance allocated to the client device when the user session is complete; wherein the client device receives via a channel different than the first and second connections media content for rendering the video, plays the video on the display according to the media content, further renders on the display the representation of the graphical user interface overlaid on the video according to the updates and the transparency information, and translates the playback instructions into inter-process communications recognized by middleware running on the client device in order to control playback of the video shown on the display according to the playback instructions. - View Dependent Claims (18, 19, 20, 26)
-
-
17. A computing device for interacting with a virtual user interface in a hospitality media system, the computing device comprising:
-
a display port coupled to a display device located in one of a plurality of guest rooms of a hospitality establishment; a memory device storing software instructions; a network interface coupled to a network at the hospitality establishment; and one or more processors;
wherein, by executing the software instructions in the memory device, the one or more processors are configured to;transmit a connection request to one or more servers via the network at a start of a user session, wherein the one or more servers are configured to manage operation of a plurality of server instances each with an associated virtual frame buffer and, in response to the connection request, to associate a user interface application with an allocated one of the server instances, the user interface application configured to render a graphical user interface to the virtual frame buffer of the allocated server instance; establish a first connection to the server via the network to conduct a virtual user interface session; receive via the first connection updates of the graphical user interface from the virtual frame buffer of the allocated server instance, at least some of the updates including transparency information for use in blending the graphical user interface with video rendered by the client device; forward user input to the one or more servers via the first connection for presentation to the user interface application, the user input representing interaction of a user with a representation of the graphical user interface rendered by the client device on the display; receive playback instructions from the one or more servers via the network over a second connection established between the client device and the one or more servers, wherein the one or more servers generate the playback instructions for controlling playback of the video on the client device according to the user input; receive, media content for rendering the video via a channel separate from the first and second connections; play the video on the display by the client device according to the media content; further render the representation of the graphical user interface overlaid on the video according to using the updates and the transparency information; and translate the playback instructions into inter-process communications recognized by middleware running on the client device in order to control playback of the video shown on the display according to the playback instructions. - View Dependent Claims (21, 22)
-
Specification