Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
DETAILED ACTION
Response to Amendment
This communication is responsive to Amendment filed on 12/16/2025.
Claims 1-18 are pending in this application. Claims 1 and 16 are independent claims. This Office Action is made Final.
Examiner Notes
The prior art rejections below cite particular paragraphs, columns, and/or line numbers in the references for the convenience of the applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested that, in preparing responses, the applicant fully consider the references in their entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-16 and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Brockmann et al. (“Brockmann”, WO 2022/178076 A1) in view of Pahlavan et al. (“Pahlavan”, US Patent 9448815 B2).
Re-claim 1,
Brockmann teaches a computer-implemented method for providing a graphical user interface on a display of a computing device, the method comprising:
providing a first executable image file comprising first executable software associated with a graphical user interface application (Figs. 1, 10, [0111-0113, 0154, 0218]. Brockmann describes one of a plurality of light-weight Virtual Client Virtual Machines 104 (i.e. VCVM) executable software comprising one or more Linux containers as a Session Pod 1052 that reside on the Linux Host server 102. Each Session Pod 1052 serves one user session at a time when a user request to initiate a user session from a remote thin-client or physical client device 110 programmed to remote into a server-based computing environment via selecting the Android Application Image (AAI) (See Fig. 10D) that plays back video content received from a content server);
executing the first executable image file as a first software container element that contains the first executable software and that is executed on one or more processors of a server that is remote from a computing device to generate display data associated with a graphical user interface of the computing device (Figs. 1, 5, [0055, 0061, 0113, 0154, 0218]. Brockmann describes a remote client user initiating a first user session to a first software VCVM in the Linux Host server 102 to plays back video content received from a content server via the 3rd Party Application 502. Brockmann describes in paragraph [0154] “…transmitting a GUI overlay instruction (e.g., a GPU overlay instruction to draw a GUI frame) for a client to composite a GPU overlay with a video frame” and in paragraph [0061] “…Accordingly, the server system 102 sends compositing instructions that tell the compositor at the client device 110 how to construct a GUI from the received GUI overlay instructions on the client itself. Thus, the client device 110, using compositor 534, composites the frames locally and thus the GUI frames become asynchronous with respect to (e.g., are not clocked by) the video frames” that indicates the GUI frame is drawn by the GPU overlay instruction to play the video frames (as display data));
transmitting the display data to the computing device (Figs. 5, 11, [0154]. Brockmann describes the video content received from content server and GUI overlay instruction is transmitting to the respective remote physical client device for playing back);
generating the graphical user interface at the computing device based on the display data from the server (Figs. 1, 4, 5, [0055, 0061, 0154]. Brockmann describes in paragraph [0154] “…transmitting a GUI overlay instruction (e.g., a GPU overlay instruction to draw a GUI frame) for a client to composite a GPU overlay with a video frame” and in paragraph [0061] “…Accordingly, the server system 102 sends compositing instructions that tell the compositor at the client device 110 how to construct a GUI from the received GUI overlay instructions on the client itself. Thus, the client device 110, using compositor 534, composites the frames locally and thus the GUI frames become asynchronous with respect to (e.g., are not clocked by) the video frames” that indicates the GUI frame is drawn or constructed a GUI locally by the compositor 534 based on the GUI overlay instruction (sent from the server) to play the video frames (as display data)); and
providing the graphical user interface on a display of the computing device (Figs. 1, 5, [0055, 0061]. Brockmann describes the GUI is displayed on the client device 110 in block 526).
Brockmann does not specifically teach:
graphical user interface infrastructure components stored within a software container element at the computing device and not provided by the server with the display data.
However, Pahlavan teaches:
graphical user interface infrastructure components stored within a software container element at the computing device and not provided by the server with the display data (Figs. 5, 7, 13A, col. 9 lines [20-59, 60-67]. “… the local GUI 702 and 706 is not generated from the display output of a remote application 327 running on the server 204. For example, the local GUI 702 and 706 is not an image of the remote application's GUI generated from the display output of the remote application 327 running on the server 204. Instead, the local GUI is locally generated by the local view module 540, for example, based on configuration file 541 (shown in FIG. 5B) …”).
Therefore, it would have been obvious to one having the ordinary skill in the art before the effective filing date of the claimed invention to modify the media content running on application executing at a remote virtual machine teachings of Brockmann with the client GUI container teaching of Pahlavan to provide client hardware and software independent platform for the central server’s application and service.
Re-claim 2,
in addition to what Brockmann-Pahlavan teaches in claim 1, Brockmann also teaches the method, further comprising:
providing a second executable image file comprising second executable software associated with graphical user interface infrastructure components that support the graphical user interface application; and executing the second executable image file as a second software container element that contains the second executable software and that is executable on the one or more processors of the server (Fig. 16, [0217-0227]. Brockmann describes a remote client user initiating a first user session to a first software VCVM in the Linux Host server 102 to plays back video content received from a content server via the 3rd Party Application 502 (as a second executable image file)).
Re-claim 3,
in addition to what Brockmann-Pahlavan teaches in claim 2, Brockmann also teaches the method, further comprising: responsive to executing the first executable image file, providing display instructions from the first software container element to a display buffer associated with the second software container element; and responsive to providing the display instructions, storing the display data in the display buffer (Figs. 3, 5, [0044, 0055, 0154-0156, 0226]. Brockmann describes the GUI overlay instruction (i.e. 510 and 512 as GPU overlay instruction to draw a GUI frame) to composite a GPU overlay with a video frame (as display instructions) are generated by Graphic API 321/506 associated with the third party application 502 interaction and stored in cache (as display buffer) for an active user session in the display server 102).
Re-claim 4,
in addition to what Brockmann-Pahlavan teaches in claim 3, Brockmann also teaches the method, wherein providing the second executable image file comprises providing the second executable image file as an image file that comprises executable software associated with a display server, whereby the display server is configured to receive and send the display instructions to the display buffer (Fig. 5B, [0062, 0226]. Brockmann describes “…When a user interacts with the application (e.g., via a user input at client device 110), the application 502 generates an overlay to be rendered as a GUI (e.g., and the server system 102 sends GUI overlay instructions for drawing the textures), and the server system 102 sends the corresponding GUI overlay instructions” (as display instructions) that is stored in cache (as display buffer) for an active user session in the display server 102).
Re-claim 5,
in addition to what Brockmann-Pahlavan teaches in claim 2, Brockmann also teaches the method, wherein providing the second executable image file comprises providing the second executable image file as an image file that comprises executable software associated with a remote desktop protocol server, whereby the remote desktop protocol server is configured to transmit the display data to the computing device and/or receive data associated with inputs from one or more user input devices connected to the computing device (Figs. 1, 3, 5, [0062, 0195, 0217-0227]. Brockmann describes a remote client user initiating a first user session to a first software VCVM in the Linux Host server 102 to plays back video content received from a content server via the 3rd Party Application 502. When user interacts with the application 502 (e.g., via a user input at client device 110), the application 502 generates the GUI overlay instructions and sending the GUI overlay instructions (i.e. 510, 512) to client device 110 to render the video frames playing on the client device 110).
Re-claim 6,
in addition to what Brockmann-Pahlavan teaches in claim 2, Brockmann also teaches the method, further comprising: providing the second executable image file comprises providing the second executable image file as an image file that comprises executable software associated with a user interface input manager, whereby the user interface input manager is configured to process inputs received from one or more user input devices connected to the computing device (Figs. 1, 3, 5, [0062, 0217-0227]. Brockmann describes a remote client user initiating a first user session to a first software VCVM in the Linux Host server 102 to plays back video content received from a content server via the 3rd Party Application 502. When user interacts with the application 502 (e.g., via a user input at client device 110), the application 502 generates the GUI overlay instructions and sending the GUI overlay instructions (i.e. 510, 512) to client device 110 to render the video frames playing on the client device 110).
Re-claim 7,
in addition to what Brockmann-Pahlavan teaches in claim 2, Brockmann also teaches the method, further comprising: providing a third executable image file comprising third executable software configured to re-route data received from one or more user input devices connected to the computing device; and executing the third executable image file as a third software container element that contains the third executable software and that is executable on the one or more processors of the computing device (Fig. 4, [0047-0048]. Brockmann describes the client input/output module 404 executed by the CPU 406 on the client device 400 to output the video/audio via output device 405 and receive the input data via the input device 407).
Re-claim 8,
in addition to what Brockmann-Pahlavan teaches in claim 7, Brockmann also teaches the method, further comprising: via the third software container element, re-routing data received from the one or more user input devices to the server, wherein at least one of the one or more user input devices is a peripheral device connected to the computing device via a USB or serial connection (Fig. 4, [0050]. Brockmann describes the input devices 407 are connected to the client device 400 via standard wired USB).
Re-claim 9,
in addition to what Brockmann-Pahlavan teaches in claim 8, Brockmann also teaches the method, further comprising: receiving the re-routed data at the second software container element; transmitting the re-routed data from the second software container element to the first software container element; and responsive to transmitting the re-routed data from the second software container element to the first software container element, providing updated display instructions from the first software container element to the second software container element to cause the graphical user interface to be updated (Figs. 1, 3-5, 10, 16, [0049, 0062, 0111-0112]. Brockmann describes a remote client user initiating a first user session to a first software VCVM in the Linux Host server 102 to plays back video content received from a content server via the 3rd Party Application 502 (as second software container element). When user interacts with the application 502 (e.g., re-routed data via a user input at client device 110), the application 502 generates the GUI overlay instructions and sending the GUI overlay instructions (i.e. 510, 512) to client device 110 to render the video frames playing on the client device 110 accordingly).
Re-claim 10,
in addition to what Brockmann-Pahlavan teaches in claim 8, Brockmann also teaches the method, wherein re-routing the data received from the one or more user input devices comprises re-routing the data via a remote desktop protocol (Figs. 1, 3-5, 10, 16, [0049, 0062, 0111-0112, 0195]. Brockmann describes each remote thin-client or physical client device 110 programmed to remote into a server-based computing environment on Linux host server 102 to back video content received from a content server via the 3rd Party Application 502. Thus, the re-routing interaction input data to control the video playback is the data communicated via a remote desktop protocol).
Re-claim 11,
in addition to what Brockmann-Pahlavan teaches in claim 1, Brockmann also teaches the method, further comprising:
transmitting the display data to a graphical processing unit located on the computing device (Figs. 5, 11, [0154]. Brockmann describes the video content received from content server and GUI overlay instruction are transmitting to the respective remote physical client device for playing back); and
responsive to the graphical processing unit processing the display data, providing the graphical user interface on the display ([0224]. Brockmann describes a subset of the preloaded first set of applications are displayed to the user).
Re-claim 12,
in addition to what Brockmann-Pahlavan teaches in claim 1, Brockmann also teaches the method, further comprising: transmitting the display data to the computing device via a remote desktop protocol (Figs. 1, 3-5, 10, 16, [0049, 0062, 0111-0112, 0195]. Brockmann describes each remote thin-client or physical client device 110 programmed to remote into a server-based computing environment on Linux host server 102 to back video content received from a content server via the 3rd Party Application 502. Thus, the transmitting the display data to the computing device to playback the video is the data communicated via a remote desktop protocol).
Re-claim 13,
in addition to what Brockmann-Pahlavan teaches in claim 1, Brockmann also teaches the method, further comprising: providing the first executable image file as an image file that comprises executable software associated with the graphical user interface application and one or more graphical user interface toolkits ([0051, 0157]. Brockmann describes “…API Module(s) 426 for managing a variety of APIs, including, for example, OpenGL and/or OpenMAX” that indicates the GUI toolkits).
Re-claim 14,
in addition to what Brockmann-Pahlavan teaches in claim 1, claim 14 is the method claim having similar limitations in scope of claim 1 for multiple executable image files running for multiple virtual clients; therefore, it is rejected under similar rationale.
Re-claim 15,
in addition to what Brockmann-Pahlavan teaches in claim 14, claim 15 is the method claim having similar limitations in scope of claim 2 for multiple second executable image files associated with multiple 3rd Party Application 502 running on multiple virtual clients; therefore, it is rejected under similar rationale.
Re-claim 16,
It is a computing system claim having similar limitations in scope of claim 1; therefore, it is rejected under similar rationale.
Re-claim 18,
in addition to what Brockmann-Pahlavan teaches in claim 16, claim 18 is the system claim having similar limitations in scope of claim 2; therefore, it is rejected under similar rationale.
Claim 17 is rejected under 35 U.S.C. 103 as being unpatentable over Brockmann in view of Pahlavan, and further in view of Waterman (US PG-Pub. 2021/0318889 A1).
Re-claim 17,
Brockmann-Pahlavan teaches the system in claim 16, but Brockmann fails to teach, wherein the computing device is a point of sale terminal or self-service terminal or kiosk.
However, Waterman teaches:
wherein the computing device is a point of sale terminal or self-service terminal or kiosk (Fig. 1, [0034]. Waterman describes the thin-client transaction terminal 110 is POS terminals, SSTs, ATMs, and/or kiosks).
Therefore, it would have been obvious to one having the ordinary skill in the art before the effective filing date of the claimed invention to modify the media content running on application executing at a remote virtual machine teachings of modified Brockmann with the virtualized transaction terminal teaching of Waterman to indicate the type of thin-client transaction terminal running the platform independent software on server.
Response to Arguments
Applicant's argument filed on 12/16/2025 with respect to amended claims 1 and 16 have been considered but is moot in view a new ground of rejection.
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to TUAN S NGUYEN whose telephone number is (571)270-7612. The examiner can normally be reached Monday-Friday (9-5).
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Fred Ehichioya can be reached at 571-272-4034. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/TUAN S NGUYEN/Primary Examiner, Art Unit 2179