IP Library Granted Patent US 9,529,579
Granted Patent B2
US 9,529,579 · App. 14/534,410 · Granted Dec 27, 2016

System and method of dynamic configuration engine for electronic devices

Inventors: Jeffrey Brunet (Aurora, CA); Yousuf Chowdhary (Maple, CA); Ian Collins (Markham, CA); Lijin (Michael) Wen (Richmond Hill, CA)
Assignee: Crowdcare Corporation
G06F8/65
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 9,529,579
App. No.
14/534,410
Granted
Dec 27, 2016
Kind
B2
Abstract

A method is provided that uses a server to dynamically configure software applications on an electronic device. Information is received from the device about the device (e.g. device OS, firmware version, make and/or model, etc.). The server determines based on the device information a set of capabilities of the device. The server then sends code for installation on the device to configure at least one of the software applications based on the determined capabilities of the device. A programmed server is also provided.

Claims (23)

1. A method of using a server to dynamically configure software applications on electronic devices, comprising:

the server having a database of device capabilities correlated to device make, model, operating system (OS), and firmware versions, the capabilities not being limited to capabilities with respect to any particular software application;

upon the server receiving a request by a first device to update a software application, the server receiving from the first device information about the first device, wherein the first device information including first device's make, model, OS, and firmware versions;

the server determining, based on the first device information having regard to the database, a set of capabilities of the first device;

the server sending a first set of code to the first device for installation on the first device to configure and update the software application on the first device based on the determined the set of capabilities of the first device,

upon the server receiving a request by a second device to update the software application that is same as in the first device, the server receiving from the second device information about the second device, wherein the second device information including second device's make, model, OS and firmware versions, and at least one of which is different from the first device;

the server determining, based on the second device information having regard to the database, a set of capabilities of the second device:

the server sending a second set of code to the second device for installation on the second device to configure and update the software application on the second device based on the determined the set of capabilities of the second device;

wherein the first and the second sets of code enable the updated software application to be configured to match respective capabilities to the first and second devices based on their individual make, model, OS and firmware versions, and each of the first and the second sets of code is provided with an indicator to enable the software application on each of the first and second devices to verify its authenticity or trusted origin.

2. The method of claim 1 , wherein determining a set of capabilities further comprises checking the date, timestamp or version of any previous code update.

3. The method of claim 1 , wherein at least one of the first or second set of code is less than a complete version of the application.

4. The method of claim 1 , wherein at least one of the first or second set of code is a script.

5. The method of claim 1 , wherein at least one of the first or second set of code is a list of APIs.

6. The method of claim 1 , wherein at least one of the first or second set of code fixes, modifies or resets a value or setting on the device.

7. The method of claim 1 , wherein at least one of the first or second set of code enables the application to use a new OS feature.

8. The method of claim 1 , wherein first and second sets of the code is are sent and can be installed without the user in either case having to visit a download site or app store.

9. The method of claim 1 , wherein at least one of the first or second set of code is provisioned by wireless, cellular, or another communication method, based on the determined set of capabilities and based on network access of the device.

10. The method of claim 1 , wherein determining a set of capabilities includes reviewing aspects of the device information against conditions in a set of rules stored on the server.

11. The method of claim 10 , wherein the set of rules is a subset of a larger set of rules, the subset having been pre-selected as relevant to the first and second device based on the its device information.

12. The method of claim 1 , further comprising registering the first or second device for event listening according to the capabilities of the first or second device.

13. The method of claim 12 , further comprising listening for events related to at least one of the software applications on the device and sending further code to the device to configure such software applications.

14. The method of claim 13 , further comprising resetting the event listening based on changes in the capabilities of the first or second device.

15. The method of claim 1 , wherein, on at least one of the first or second devices, requesting an upgrade occurs in response to the server querying the device.

Assignments (7)
RELEASE OF SECURITY INTEREST IN PATENTS AT R/F 066032/0802 Recorded Nov 26, 2025
From: GOLUB CAPITAL MARKETS LLC, AS COLLATERAL AGENT
To: CROWDCARE CORPORATION
Reel/Frame 073719/0861 →
SECURITY INTEREST Recorded Jan 5, 2024
From: CROWDCARE CORPORATION
To: GOLUB CAPITAL MARKETS LLC, AS COLLATERAL AGENT
Reel/Frame 066032/0802 →
RELEASE OF SECURITY INTEREST Recorded Jan 5, 2024
From: ROYAL BANK OF CANADA
To: CROWDCARE CORPORATION
Reel/Frame 066037/0125 →
RELEASE OF SECURITY INTEREST Recorded Feb 20, 2019
From: COMERICA BANK
To: CROWDCARE CORPORATION
Reel/Frame 048383/0168 →
CONFIRMATION OF SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Jan 9, 2019
From: CROWDCARE CORPORATION
To: ROYAL BANK OF CANADA
Reel/Frame 048039/0543 →
SECURITY INTEREST Recorded May 13, 2015
From: CROWDCARE CORPORATION
To: COMERICA BANK
Reel/Frame 035627/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 6, 2014
From: BRUNET, JEFFREY; CHOWDHARY, YOUSUF; COLLINS, IAN; WEN, LIJIN
To: CROWDCARE CORPORATION
Reel/Frame 034116/0934 →
Continuity (2)
Provisional Application 61962360 · Nov 6, 2013
Related Publication 20150128126A1 · May 7, 2015