IP Library › Granted Patent US 12,267,319
Granted Patent B2
US 12,267,319 · App. 17/608,606 · Granted Apr 1, 2025

Device-independent, contextually driven application computing environment

Inventors: Alexander Hertel (Sunnyvale, CA); Philipp Hertel (Belmont, CA)
Assignee: Xperiel, Inc.
H04L63/0861G06N20/00H04L63/102H04L63/107H04L63/20
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,267,319
App. No.
17/608,606
Granted
Apr 1, 2025
Kind
B2
Abstract

A method of interacting within a device-independent contextually driven application computing environment utilizing computer processes. The processes receive sensor data that is detected by a given client computing device. The sensor data pertains to a physical world interaction of the given client computing device. The processes process the sensor data and a user identification of a user to derive a current computing context that is both specific to the user and specific to a given location associated with the sensor data. The processes automatically communicate a current user interface configuration to a local browser process corresponding to the current computing context, so that the local browser process executing on the given client computing device automatically implements the current user interface configuration. The processes interacting with the local browser process according to the current computing context by selecting and automatically loading a given one of a set of context modules.

Claims (107)

1. A server system that establishes a device-independent, contextually driven application computing environment, the server system comprising:

a web portal that communicates with a set of client computing devices, including via a web port of a given client computing device;

a user identification system, coupled to a user database interface, that produces an identification of a given user based on data selected from the group consisting of user login data, user biometric data, user token data, and combinations thereof;

a sensor data interface that receives sensor data from a sensor data uploader running on the given client computing device pertaining to a physical world interaction of the given client computing device;

a context determiner, coupled to the sensor data interface and to the user identification system and the user database interface, that processes the sensor data and the user identification, to derive a current device-independent application computing context comprising a third-party application for contextually driven interactions that are both specific to the given user and specific to a given location with respect to the portable computing device, the third-party application comprising a local browser process configured to run on the given client computing device;

a configuration interface, coupled to the context determiner, that automatically communicates, to a configuration implementer executing in the local browser process, a current user interface configuration corresponding to the current device-independent application computing context, and causing the configuration implementer executing in the local browser process to automatically transform a user interface of the third-party application according to the current user interface configuration; and

a context module loader, coupled to the context determiner, that selects and automatically loads a selected one of a set of context modules to interact with the local browser process according to the current device-independent application computing context.

2. A server system according to claim 1 , wherein the server system is selected from the group consisting of a centralized server system coupled to the internet, a distributed edge-based server system, and combinations thereof.

3. A server system according to claim 1 , wherein the sensor data interface is configured to receive data from local browser processes executing on a plurality of operating systems configured on the set of client computing devices.

4. A server system according to claim 1 , wherein the context determiner is configured to:

determine a set of location identifiers from the received sensor data that is generated from trigger signals indicative of a set of locations of the given client computing device;

determine whether each location identifier pertains to a location relevant for contextually driven interaction based on user preferences in a stored user profile;

if a given one of the location identifiers is determined not to pertain to such a relevant location, then prompt the user to indicate whether the given location identifier pertains to such a relevant location for contextually driven interaction; and

update the stored user profile with each location identifier determined to be pertain to a location relevant by the user.

5. A server system according to claim 1 , wherein the current device-independent application computing context comprises applications that are built once and work on client computing devices regardless of operating systems.

6. A server system according to claim 1 , wherein the configuration implementer automatically transforms the user interface of the third-party application according to the current user interface configuration without the third-party application being installed on the given client computing device.

7. A server system according to claim 1 , further comprising:

an enrollment system, coupled to the user identification system, sensor data interface, and the user database interface, wherein the enrollment system is configured to:

receive user authentication data from the given client computing device, the authentication data selected from the group consisting of user login data, user biometric data, user token data, and combinations thereof;

generate a user identifier that is communicated to the given client computing device based on the authentication data;

receive a user profile from the given client computing device, the user profile having user preferences with assigned authentication levels; and

store the user authentication data and user profile associated with the user identifier.

8. A server system according to claim 7 , wherein the user identification system is configured to:

receive login data and the user identifier from the given client computing device;

verify the login data against the stored user authentication data associated with the user identifier; and

establish a session between the server and the given client computing device.

9. A server system according to claim 1 , wherein the sensor data interface is configured to determine, from the received sensor data, a location identifier that is generated from a trigger signal indicative of the given location with respect to the given client computing device.

10. A server system according to claim 9 , wherein the trigger signal is selected from the group consisting of an iBeacon, a geofence, voice, audio recognition, visual recognition, hand gesture, facial expression, temperature, speed, pressure, biometrics, brain waves, barcode, SLAM triggers, a HTTP post, NFC smart poster interaction, a social media post, a location code, a codeword, a product logo, an advertisement, and combinations thereof.

11. A server system according to claim 9 , further comprising:

a location node interface, coupled to the user database interface, the user context determiner, and the user ID system, that is configured to:

interact with a location node associated with the location identifier based on the current device-independent application computing context and a stored user profile; and

update the current device-independent application computing context based on the interactions with the location node.

12. A server system according to claim 11 , wherein the user ID system is configured to:

determine the interactions with the location node based on the current device-independent application computing context;

determine authentication levels assigned to the interactions in a stored user profile; and

verify the authentication levels by prompting the user for authentication data.

13. A server system according to claim 12 , wherein the context determiner is configured to:

use machine learning to gather information from the interactions with the location node; and

update user preferences in the user profile with the gathered information.

14. A method of interacting within a device-independent contextually driven application computing environment, the method utilizing computer processes, executed by a server system, the computer processes comprising:

receiving sensor data that is detected by a given client computing device, the sensor data pertaining to a physical world interaction of the given client computing device;

processing the sensor data and a user identification of a user based on data selected from the group consisting of user login data, user biometric data, user token data, and combinations thereof, to derive a current device-independent application computing context comprising a third-party application for contextually driven interactions that are both specific to the user and specific to a given location associated with the sensor data, the third-party application comprising a local browser process configured to run on the given client computing device;

automatically communicating a current user interface configuration to the local browser process corresponding to the current device-independent application computing context, so that the local browser process executing on the given client computing device automatically transforms a user interface of the third-party application according to the current user interface configuration; and

interacting with the local browser process according to the current device-independent application computing context by selecting and automatically loading a given one of a set of context modules.

15. A method according to claim 14 , wherein the sensor data is received from local browser processes executing on a plurality of operating systems configured on the set of client computing devices.

16. A method according to claim 14 , wherein the computer processes further comprise:

determining a set of location identifiers from the received sensor data that is generated from trigger signals indicative of a set of locations of the portable computing device;

determining whether each location identifier pertains to a location relevant for contextually driven interaction based on user preferences in a stored user profile;

if a given one of the location identifiers is determined not to pertain to such a relevant location, then prompting the user to indicate whether the given location identifier pertains to such a relevant location for contextually driven interaction; and

updating the stored user profile with each location identifier determined to pertain to a location relevant by the user.

17. A method according to claim 14 , wherein the current device-independent application computing context comprises applications that are built once and work on client computing devices regardless of operating systems.

18. A method according to claim 14 , wherein the local browser process automatically transforms the user interface of the third-party application according to the current user interface configuration without the third-party application being installed on the given client computing device.

19. A method according to claim 14 , wherein the computer processes further comprise:

receiving user authentication data from the given client computing device, the authentication data selected from the group consisting of user login data, user biometric data, user token data, and combinations thereof;

generating a user identifier that is communicated to the given client computing device;

receiving a user profile from the given client computing device, the user profile having user preferences with assigned authentication levels; and

storing the user authentication data and user profile associated with the user identifier.

20. A method according to claim 19 , wherein the computer processes further comprise:

receiving login data and the user identifier from the given client computing device;

verifying the login data against the stored user authentication data associated with the user identifier; and

establishing a session between the server and the given client computing device.

21. A method according to claim 14 , wherein the computer processes further comprise determining a location identifier from the received sensor data that is generated from a trigger signal indicative of the given location with respect to the given client computing device.

22. A method according to claim 21 , wherein the trigger signal is selected from the group consisting of an iBeacon, a geofence, voice, audio recognition, visual recognition, hand gesture, facial expression, temperature, speed, pressure, biometrics, brain waves, barcode, SLAM triggers, a HTTP post, NFC smart poster interaction, a social media post, a location code, a codeword, a product logo, an advertisement, and combinations thereof.

23. A method according to claim 21 , wherein the computer processes further comprise:

interacting with a location node associated with the location identifier based on the current device-independent application computing context and a stored user profile; and

updating the current device-independent application computing context based on the interactions with the location node.

24. A method according to claim 23 , wherein the computer processes further comprise:

determining the interactions with the location node based on the current device-independent application computing context;

determining authentication levels assigned to the interactions in a stored user profile; and

verifying the authentication levels by prompting the user for authentication data.

25. A method according to claim 23 , further comprising:

using machine learning to gather information from the interactions with the location node; and

updating user preferences in the user profile with the gathered information.

26. A tangible non-transitory computer readable storage medium encoded with instructions that, when executed by a server system establishes computer processes for interacting within a device-independent contextually driven application computing environment, the computer processes comprising:

receiving sensor data that is detected by a given client computing device, the sensor data pertaining to a physical world interaction of the given client computing device;

processing the sensor data and a user identification of a user based on data selected from the group consisting of user login data, user biometric data, user token data, and combinations thereof, to derive a current device-independent application computing context comprising a third-party application for contextually driven interactions that are both specific to the user and specific to a given location associated with the sensor data, the third-party application comprising a local browser process configured to run on the given client computing device;

automatically communicating a current user interface configuration to the local browser process corresponding to the current device-independent application computing context, so that the local browser process executing on the given client computing device automatically transforms a user interface of the third-party application according to the current user interface configuration; and

interacting with the local browser process according to the current device-independent application computing context by selecting and automatically loading a given one of a set of context modules.

27. A non-transitory computer-readable medium according to claim 26 , wherein the sensor data is received from local browser processes executing on a plurality of operating systems configured on the set of client computing devices.

28. A non-transitory computer-readable medium according to claim 26 , wherein the computer processes further comprise:

determining a set of location identifiers from the received sensor data that is generated from trigger signals indicative of a set of locations of the portable computing device;

determining whether each location identifier pertains to a location relevant for contextually driven interaction based on user preferences in a stored user profile;

if a given one of the location identifiers is determined not to pertain to such a relevant location, then prompting the user to indicate whether each location identifier is relevant for contextually driven interaction; and

updating the stored user profile with each location identifier determined to be pertain to a location relevant by the user.

29. A non-transitory computer-readable medium according to claim 26 , wherein the current device-independent application computing context comprises applications that are built once and work on client computing devices regardless of operating systems.

30. A non-transitory computer-readable medium according to claim 26 , wherein the local browser process automatically transforms the user interface of the third-party application according to the current user interface configuration without the third-party application being installed on the given client computing device.

31. A non-transitory computer-readable medium according to claim 26 , the computer processes further comprising:

receiving user authentication data from the given client computing device, the authentication data selected from the group consisting of user login data, user biometric data, user token data, and combinations thereof;

generating a user identifier that is communicated to the given client computing device based on the authentication data;

receiving a user profile from the given client computing device, the user profile having user preferences with assigned authentication levels; and

storing the user authentication data and user profile associated with the user identifier.

32. A non-transitory computer-readable medium according to claim 31 , wherein the computer processes further comprise:

receiving login data and the user identifier from the given client computing device;

verifying the login data against the stored user authentication data associated with the user identifier; and

establishing a session between the server and the given client computing device.

33. A non-transitory computer-readable medium according to claim 26 , wherein the computer processes further comprise determining a location identifier from the received sensor data that is generated from a trigger signal indicative of the given location with respect to the given client computing device.

34. A non-transitory computer-readable medium according to claim 33 , wherein the trigger signal is selected from the group consisting of an iBeacon, a geofence, voice, audio recognition, visual recognition, hand gesture, facial expression, temperature, speed, pressure, biometrics, brain waves, barcode, SLAM triggers, a HTTP post, NFC smart poster interaction, a social media post, a location code, a codeword, a product logo, an advertisement, and combinations thereof.

35. A non-transitory computer-readable medium according to claim 33 , wherein the computer processes further comprise:

interacting with a location node associated with the location identifier based on the current device-independent application computing context and a stored user profile; and

updating the current device-independent application computing context based on the interactions with the location node.

36. A non-transitory computer-readable medium according to claim 35 , wherein the computer processes further comprise:

determining the interactions with the location node based on the current device-independent application computing context;

determining authentication levels assigned to the interactions in a stored user profile; and

verifying the authentication levels by prompting the user for authentication data.

37. A non-transitory computer-readable medium according to claim 35 , wherein the computer processes further comprise:

using machine learning to gather information from the interactions with the location node; and

updating user preferences in the user profile with the gathered information.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 12, 2023
From: HERTEL, ALEXANDER; HERTEL, PHILIPP
To: XPERIEL, INC.
Reel/Frame 065839/0447 →
Continuity (2)
Provisional Application 62843797 · May 6, 2019
Related Publication 20220217137A1 · Jul 7, 2022
References Cited (12)
US 8813179B1 · Qureshi · 2014 [cited by examiner]
US 9032321B1 · Cohen et al. · 2015 [cited by applicant]
US 20080275974A1 · Rackiewicz · 2008 [cited by examiner]
US 20120115501A1 · Zheng · 2012 [cited by examiner]
US 20130159476A1 · Hilburn · 2013 [cited by examiner]
US 20130340086A1 · Blom · 2013 [cited by applicant]
US 20140189802A1 · Montgomery · 2014 [cited by applicant]
US 20160065626A1 · Jain · 2016 [cited by examiner]
US 20170317978A1 · Diaz-Cuellar · 2017 [cited by examiner]
US 20230037835A1 · Sharma · 2023 [cited by examiner]
X. Zhang et al., “Context-Aware Mobile Web Browsing Based on HTML5,” 2012 9th International Conference on Ubiquitous Intelligence and Computing and 9th International Conference on Autonomic and Trusted Computing, Fukuok… [cited by examiner]
ISA/US, International Search Report and Written Opinion dated Jul. 24, 2020 for PCT application No. PCT/US2020/031063, 16 pages. [cited by applicant]