Methods and apparatus for using smart environment devices via application program interfaces

US9838830B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9838830-B2
Application numberUS-201514722023-A
CountryUS
Kind codeB2
Filing dateMay 26, 2015
Priority dateJun 23, 2014
Publication dateDec 5, 2017
Grant dateDec 5, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Systems and Methods disclosed herein relate to an application programming interface (API) server that receives, from an API client device connected to the system, one or more requests to perform an activity. The activity includes reading, editing by making additions, deletions, modifications or any combination thereof, or both reading and editing, to at least one portion of a data model comprising information related to one or more smart-devices, one or more smart-device environment structures comprising the smart-devices, or both; perform the activity based upon the one or more requests; log the activity, by storing a responsible party for the activity, based upon a vendor, user, or other party or entity associated with the API client device; and present at least a portion of the log.

First claim

Opening claim text (preview).

The invention claimed is: 1. A system, comprising: an application programming interface (API) server comprising a hardware-based processor coupled to memory, the hardware-based processor configured to: host an API; receive, from a client device, via the API, one or more requests to perform an activity, comprising: reading at least one portion of a data model, editing at least one portion of the data model, the editing comprising making additions, deletions, modifications, or any combination thereof to the data model, or both reading and editing at least one portion of the data model, the data model comprising a multi-level structure that includes: a smart-device environment structure level storing information related to one or more smart-device environment structures; and a smart-devices level storing information related to the one or more smart-devices, the smart-devices level being a sub-level of the smart-device environment structure level; perform the activity based upon the one or more requests; log the activity, by storing a responsible party for the activity in a log, the responsible party being a vendor, a user, or another party or entity associated with the client device; and present at least a portion of the log. 2. The system of claim 1 , wherein the API server is configured to log the activity at the smart-devices level of the data model. 3. The system of claim 1 , wherein the API server is configured to log the activity at the smart-device environment structure level of the data model. 4. The system of claim 1 , wherein the API server is configured to log the activity at a level above the smart-device environment structure level of the data model. 5. The system of claim 1 , wherein the API server is configured to log a client responsible for the activity. 6. A tangible, non-transitory, computer-readable medium comprising instructions executable by a processor to implement an application programming interface (API) server that is configured to: host an API; receive, from a client device, via the API, one or more requests to perform an activity, comprising: reading at least one portion of a data model, editing at least one portion of the data model, the editing comprising making additions, deletions, modifications, or any combination thereof to the data model, or both reading and editing at least one portion of the data model, the data model comprising a multi-level structure that includes: a smart-device environment structure level storing information related to one or more smart-device environment structures; and a smart-devices level storing information related to the one or more smart-devices, the smart-devices level being a sub-level of the smart-device environment structure level; perform the activity based upon the one or more requests; log the activity, by storing a responsible party for the activity, based upon a vendor, a user, or another party or entity associated with the client device; and present at least a portion of the log. 7. The computer-readable medium of claim 6 , comprising instructions executable by the processor to: receive, from a requesting computer, a request for a subset of logged activity; compile the subset of logged activity; and provide the subset of logged activity to the requesting computer. 8. The computer-readable medium of claim 7 , comprising instructions executable by the processor to: determine the subset of logged activity by limiting the subset of logged activity to the logged activity that has occurred within a predetermined time period. 9. The computer-readable medium of claim 6 , comprising instructions executable by the processor to: log the activity, by storing the responsible party in a JavaScript Object Notation (JSON) document. 10. The computer-readable medium of claim 9 , wherein the JSON document comprises an events attribute that indicates whether the logged activity is a put action to write data or a subscribe action to read data. 11. The computer-readable medium of claim 10 , wherein the JSON document comprises a value attribute that indicates a value written to the data model by the put action. 12. The computer-readable medium of claim 10 , wherein the JSON document comprises a type attribute that indicates a type of the events attribute. 13. The computer-readable medium of claim 12 , wherein the events attribute comprises the put action, and the type attribute indicates that the put action is either a merge or an overwrite. 14. The computer-readable medium of claim 13 , wherein the JSON document comprises an old value attribute that indicates a previous value that existed prior to the put action overwriting the data of a value attribute that corresponds to the old value attribute. 15. The computer-readable medium of claim 9 , wherein the JSON document comprises: a location identifier that indicates where in the data model the activity occurred. 16. The computer-readable medium of claim 9 , wherein the JSON document comprises a structure name or a structure identifier associated with the smart-device environment structure. 17. A computer-implemented method to log an activity that accesses a data model, via a hardware-based, application programming interface (API) server, the method comprising: hosting an API on the API server; receiving, from a client device, by the API server, one or more requests to perform an activity, comprising: reading at least one portion of the data model, editing at least one portion of the data model, the editing comprising making additions, deletions, modifications, or any combination thereof to the data model, or both reading and editing at least one portion of the data model, the data model comprising a multi-level structure that includes: a smart-device environment structure level storing information related to one or more smart-device environment structures; and a smart-devices level storing information related to the one or more smart-devices, the smart-devices level being a sub-level of the smart-device environment structure level; performing the activity based upon the one or more requests; logging the activity, the logging comprising storing a responsible party for the activity, based upon a vendor, a user, or another party or entity associated with the client device; and presenting at least a portion of the log. 18. The computer-implemented method of claim 17 , comprising: logging a vendor responsible for the activity. 19. The computer-implemented method of claim 17 , wherein the logging the activity comprises logging a set of attributes including: an events attribute that indicates whether the logged activity is a put action to write data or a subscribe action to read data; a value attribute that indicates a value written to the data model by the put action; a type attribute that indicates a type of the events attribute, wherein the events attribute comprises the put action, and the type attribute indicates that the put action is either a merge or an overwrite; an old value attribute that indicates a previous value that existed prior to the put action overwriting the data of a value attribute that corresponds to the old value attribute; a location identifier that indicates where in the data model the activity occurred; and a structure name or a structure identifier, associated with the smart-device environment structure. 20. The computer-implemented method of claim 17 , further comprising one of: logging the activity at the smart-devices level o

Assignees

Inventors

Classifications

  • in response to determined parameters · CPC title

  • via wireless transmission · CPC title

  • Actuation by presence of smoke or gases {, e.g. automatic alarm devices for analysing flowing fluid materials by the use of optical means} · CPC title

  • Domotique, domestic, home control, automation, smart house · CPC title

  • H04W4/80Primary

    Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9838830B2 cover?
Systems and Methods disclosed herein relate to an application programming interface (API) server that receives, from an API client device connected to the system, one or more requests to perform an activity. The activity includes reading, editing by making additions, deletions, modifications or any combination thereof, or both reading and editing, to at least one portion of a data model compris…
Who is the assignee on this patent?
Google Inc
What technology area does this patent fall under?
Primary CPC classification H04W4/80. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Dec 05 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).