# US 10,454,994 B2 · Mapping an action to a specified device within a domain

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,454,994 B2
- Document ID: US10454994B2
- Status: Granted
- Kind: B2
- Application number: 15/643,265
- Filed: 2017-07-06
- Published: 2017-12-28
- Granted: 2019-10-22
- Earliest claimed: 2011-05-26
- Assignees: Altair Engineering, Inc.
- Applicants: Altair Engineering, Inc.
- Inventors: Steve Raschke; Mike Anderson
- Web page: https://patentgrep.com/patent/US10454994B2

## CPC

- H04L 67/025: for remote control or remote monitoring of applications
- G06F 3/00: Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F 9/44: Arrangements for executing specific programs
- H04L 12/2814: {Exchanging control software or macros for controlling appliance services in a home automation network (arrangements for maintenance or administration involving configuration of the network and network elements H04L41/08)}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A system for managing a domain in a premises is described. The system includes: an action identifier coupled with a server, the action identifier identifies an action to be mapped to a device of the at least one device, wherein the device comprises a communication port that supports a first protocol; a device driver determiner coupled with the server, the device driver determiner determines a device driver that supports a second protocol, wherein the second protocol supports the action; a comparer coupled with the server, the comparer compares the second protocol with a domain configuration store comprising device configuration information for the at least one device; and a device driver implementer coupled with the server, the device driver implementer implements, based on the comparing, the device driver when the first protocol corresponds to the second protocol such that the action is enabled for performance.

## Claims

### Claim 1

A method for automatically mapping an action requested to be performed on a specified device of at least one device in a domain, said method comprising:
identifying, at a computer system, an action to be performed on said specified device, wherein said action comprises running a third party application on said specified device, wherein said specified device comprises a communication port, wherein said specified device is communicatively coupled to said computer system via said communication port,
wherein said communication port is defined by a physical communication method and a first protocol operating on said communication port, wherein said first protocol supports a functioning of said action on said specified device;
comparing, at said computer system, said first protocol with a domain configuration store, wherein said domain configuration store comprises device configuration information for said at least one device;
based on said comparing, determining, at said computer system, which device driver coupled with said specified device, supports a second protocol that is different from and corresponds to said first protocol and supports functioning of said action run by the third party application; and
based on said determining which device driver supports said second protocol, implementing, at said computer system, said device driver to perform said action on said specified device, wherein said device driver is communicatively coupled to said specified device via said computer system and said communication port.

### Claim 2 (depends on 1)

The method of claim 1, wherein said method further comprising:
managing an application, wherein said application controls said at least one device.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
tracking data associated with said at least one device.

### Claim 4 (depends on 3)

The method of claim 3, further comprising:
sending tracked data to a remote location.

### Claim 5 (depends on 1)

The method of claim 1, wherein said physical communication method is coupled with a legacy device.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
discovering a device of said at least one device on a premises.

### Claim 7 (depends on 6)

The method of claim 6, further comprising:
notifying a subscriber of a discovered device.

### Claim 8

A non-transitory computer readable storage medium having stored thereon, computer-executable instructions that, when executed by a computer, cause said computer to perform a method for automatically mapping an action requested to be performed on a specified device of at least one device in a domain, said method comprising:
identifying an action to be performed on said specified device, wherein said action comprises running a third party application on said specified device,
wherein said specified device comprises a communication port,
wherein said communication port is defined by a physical communication method and a first protocol operating on said communication port, wherein said first protocol supports a functioning of said action on said specified device;
comparing said first protocol with a domain configuration store, wherein said domain configuration store comprises device configuration information for said at least one device;
based on said comparing, determining which device driver coupled with devices of a device class, supports a second protocol that is different from and corresponds to said first protocol and supports said functioning of said action run by the third party application on said specified device; and
based on said determining which device driver supports said second protocol, implementing said device driver to perform said action on said specified device via said communication port.

### Claim 9 (depends on 8)

The non-transitory computer readable storage medium of claim 8, wherein said method further comprises:
populating said at least one device;
editing said at least one device; and
tracking data for said at least one device, wherein tracked data comprises:
device configuration information; and
usage data.

### Claim 10 (depends on 8)

The non-transitory computer readable storage medium of claim 8, said method further comprising:
uploading tracked data to a remote location.

### Claim 11 (depends on 8)

The non-transitory computer readable storage medium of claim 8, wherein said method further comprises:
reporting data for said at least one device.

### Claim 12 (depends on 8)

The non-transitory computer readable storage medium of claim 8, wherein said method further comprises:
actuating said action based on one of a user input and at least one predetermined condition.

### Claim 13 (depends on 8)

The non-transitory computer readable storage medium of claim 8, wherein said method further comprises:
presenting pre-categorized content from available sources by hierarchy, wherein said available sources reside within an accessible network.

### Claim 14

A method for maintaining a domain in a premises, wherein said domain is coupled with a remote server, said method comprising:
receiving a set of instructions relating to managing said domain, wherein said set of instructions comprises a complete set of instructions associated with said managing a configuration of said domain such that said domain functions according to said complete set of instructions without any further communication necessary between said remote server with a local server until a change in said domain occurs, wherein said change requires an update to said remote server and components coupled therewith, wherein said domain comprises:
at least one device, a device of said at least one device comprising a communication port that supports a first protocol different from and corresponding to a second protocol, wherein said second protocol is supported by a device driver that is coupled with said domain and said second protocol supports functioning of an action that comprises running a third party application on said at least one device, said device driver being implemented on said device via said communication port;
establishing a secure connection between said local server and said remote server;
exchanging device configuration information between said local server and said remote server; and
based on said exchanging, updating said third party application residing on at least one of said remote server and a computing device that is separate from said remote server and updating device configuration information stored on a first database coupled with said remote server.

### Claim 15 (depends on 14)

The method of claim 14, wherein said updating said application comprises updating a second database coupled with said local server.

### Claim 16 (depends on 14)

The method of claim 14, further comprising:
creating preload files for said application.

### Claim 17 (depends on 14)

The method of claim 14, further comprising:
at least one of adding and removing a device driver to accommodate a change made to said domain.

### Claim 18 (depends on 14)

The method of claim 14, further comprising:
downloading code to said remote server.

### Claim 19 (depends on 14)

The method of claim 14, further comprising:
instructing, by said local server, said remote server to perform a task.

### Claim 20 (depends on 14)

The method of claim 14, further comprising:
providing a mirror image of an application managed at said remote server, wherein said mirror image is accessible to a subscriber over a wide area network via said mirror image.
