Systems and methods for identifying and characterizing client devices
US-9419852-B1 · Aug 16, 2016 · US
US11019169B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11019169-B2 |
| Application number | US-201916290224-A |
| Country | US |
| Kind code | B2 |
| Filing date | Mar 1, 2019 |
| Priority date | Oct 13, 2015 |
| Publication date | May 25, 2021 |
| Grant date | May 25, 2021 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
The described technology is directed towards having user interface objects rendered on a client device based upon provider data of at least part of a client provider graph. The client provider graph comprises a plurality of providers (graph nodes), in which each provider has provider data corresponding to user interface object data. The data of one provider has a reference set containing one or more references (e.g., edges) that each identify another provider, thus forming the graph. Client requests for other provider data are made based upon the reference set. The other provider data is received in response to the client requests, and is maintained at the client (e.g., in a client cache) to build the client graph.
Opening claim text (preview).
What is claimed is: 1. A method comprising: building, by a client device comprising a processor, a client provider graph comprising a customized subset of providers for the client device from a plurality of providers available from a data service operating on at least one server, each provider having provider data, wherein the building comprises an iterative process of: accessing the data of one provider in response to a user navigation input, the data of the one provider including a reference set containing references that each identify another provider of the plurality of providers, making a client request to the data service for other provider data corresponding to other providers associated with the references identified in the reference set, and receiving the other provider data in response to the client request, wherein the other provider data comprises first provider data for a first provider of the other providers, and second provider data for a second provider of the other providers, and wherein the first provider data is in a dehydrated state that comprises a first identifier of the first provider and does not comprise information about objects of the first provider, and the second provider data is in a hydrated state that comprises a second identifier and parsed object data of an object of the second provider; and rendering, on a display of the client device, a customized user interface comprising one or more user interface objects based upon provider data of at least part of the client provider graph. 2. The method of claim 1 , wherein the customized user interface is customized for a user providing the user navigation input. 3. The method of claim 1 , wherein the other provider data corresponds to at least two other providers identified in the reference set, and wherein making the client request comprises making a requestor batch request. 4. The method of claim 3 , further comprising, returning a batch response to the requestor batch request, including building one part of the batch response with provider data from a client cache, and communicating with the data service to obtain provider data for another part of the batch response. 5. The method of claim 1 , wherein the making the client request for the other provider data comprises batching a plurality of requests into a batch request to the data service, and receiving a streamed response from the data service corresponding to the batch request. 6. The method of claim 1 , wherein making the client request for the other provider data comprises multiplexing the client request with another client request for a same provider of the one or more other providers into a multiplexed request to the data service, receiving a response corresponding to the multiplexed request from the data service, and de-multiplexing the response to return one response to the client request and another response to the other client request. 7. The method of claim 1 , further comprising receiving expanded data in response to the client request, the expanded data corresponding to a provider that was not requested in the client request. 8. The method of claim 7 , further comprising maintaining the expanded data corresponding to the provider in a partially hydrated state in a client cache. 9. The method of claim 8 , further comprising parsing the expanded data in the partially hydrated state into object data of another object in the hydrated state, and maintaining the object data in the hydrated state in the cache. 10. The method of claim 1 , further comprising maintaining provider information in a client cache, including maintaining information of the first provider in the dehydrated state corresponding to needing at least some provider data. 11. A client device comprising: a processor; and a memory communicatively coupled to the processor, the memory having stored therein computer-executable components, the computer-executable components comprising: a request manager configured to: build a client provider graph comprising a customized subset of providers for the client device from a plurality of providers available from a data service operating on at least one server, each provider having provider data, wherein the building comprises an iterative process of: access the data of one provider in response to a user navigation input, the data of the one provider including a reference set containing references that each identify another provider of the plurality of providers, make a client request for other provider data corresponding to other providers associated with the references identified in the reference set, and receive the other provider data in response to the client request, wherein the other provider data comprises first provider data for a first provider of the other providers, and second provider data for a second provider of the other providers, and wherein the first provider data is in a dehydrated state that comprises a first identifier of the first provider and does not comprise information about objects of the first provider, and the second provider data is in a hydrated state that comprises a second identifier and parsed object data of an object of the second provider; and render, on a display of the client device, a customized user interface comprising one or more user interface objects based upon provider data of at least part of the client provider graph. 12. The client device of claim 11 , wherein customized user interface is customized for a user providing the user navigation input. 13. The client device of claim 11 , wherein the making the client request for the other provider data comprises multiplexing the client request with another client request for a same provider of the one or more other providers into a multiplexed request to the data service, receiving a response corresponding to the multiplexed request from the data service, and de-multiplexing the response to return one response to the client request and another response to the other client request. 14. The client device of claim 11 , wherein the request manager is further configured to receive expanded data in response to the client request, the expanded data corresponding to a provider that was not requested in the client request. 15. The client device of claim 11 , wherein the request manager is further configured to maintain the expanded data corresponding to the provider in a partially hydrated state in a client cache. 16. A non-transitory computer-readable medium having instructions stored thereon that, in response to execution, cause a client device including a processor to perform operations comprising: building a client provider graph comprising a customized subset of providers for the client device from a plurality of providers available from a data service operating on at least one server, each provider having provider data, wherein the building comprises an iterative process of: accessing the data of one provider in response to a user navigation input, the data of the one provider including a reference set containing references that each identify another provider of the plurality of providers, making a client request to the data service for other provider data corresponding to other providers associated with the references identified in the reference set, and receiving the other provider data in response to the client request, wherein the other provider data comprises first provider data for a first provider of the other providers, and second provider data for a second provider of the other providers, and wherein the first provider data is in a dehydrated state that
Drawing of charts or graphs · CPC title
Storing data temporarily at an intermediate stage, e.g. caching · CPC title
Indexing; Web crawling techniques · CPC title
Proxies, e.g. for session initiation protocol [SIP] · CPC title
Policies or rules for updating, deleting or replacing the stored data · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.