US2023362118A1PendingUtilityA1

Messaging system with circumstance configuration framework

Assignee: SNAP INCPriority: Sep 27, 2019Filed: Jul 11, 2023Published: Nov 9, 2023
Est. expirySep 27, 2039(~13.2 yrs left)· nominal 20-yr term from priority
H04L 41/0894H04L 51/063H04L 51/226H04L 51/222H04L 41/0893H04L 41/0853
70
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

An example method comprises: receiving, at the server from a first client device, a request for access to a client feature on the first client device; determining, by the server, an applicable rule for the access request, the applicable rule having a plurality of nodes; determining, by the server, device capabilities needed for the determined rule; determining, by the server, nodes that can be executed and nodes that cannot be executed, based on the device capabilities; executing, by the server, nodes that can be executed to reach a partial decision for the applicable rule; pruning the rule to remove executed nodes and generate a pruned rule that includes nodes that cannot be executed; transmitting the pruned rule and partial decision to the device. The pruned rule is executed on the first client device with partial decision to generate a final decision. The client feature is configured based on the decision.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A computer-implemented method of enabling a client feature, comprising:
 receiving, by at least one processor, a request to access a client feature on a first client device;   determining, by the least one processor, an applicable rule for the access request, the applicable rule having a plurality of nodes;   determining, by the at least one processor, nodes that can be executed, the nodes that can be executed including real-time device capabilities;   executing, by the at least one processor, the nodes that can be executed to reach a decision for the applicable rule; and   configuring, by the at least one processor, the requested client feature based on the decision.   
     
     
         2 . The method of  claim 1 , further comprising collecting device capabilities from a plurality of other client devices that communicated with the first client device. 
     
     
         3 . The method of  claim 2 , wherein the applicable rule determines an image resolution in an augmented reality application for the first client device. 
     
     
         4 . The method of  claim 1 , further comprising pruning the determined applicable rule to remove nodes that cannot be executed due to lack of data. 
     
     
         5 . The method of  claim 1 , wherein the applicable rule comprises priority nodes and non-priority nodes and the priority nodes are executed before the non-priority nodes. 
     
     
         6 . The method of  claim 5 , wherein the applicable rule determines that an image resolution is to be reduced and a priority node includes battery level and a non-priority node includes co-processor availability. 
     
     
         7 . The method of  claim 1 , wherein the applicable rule determines model input size in a deep neural network and a node includes co-processor availability. 
     
     
         8 . The method of  claim 7 , wherein the deep neural network performs human body segmentation and maintains a frames per second level for the client feature. 
     
     
         9 . The method of  claim 1 , wherein the applicable rule determines texture level and maintains a frames per second level for the client feature. 
     
     
         10 . A non-transitory computer-readable medium storing instructions that, when executed by one or more computer processors of a first client device, cause the first client device to perform operations comprising:
 receiving a request to access a client feature on the first client device;   determining an applicable rule for the access request, the applicable rule having a plurality of nodes;   determining nodes that can be executed, the nodes that can be executed including real-time device capabilities;   executing the nodes that can be executed to reach a decision for the applicable rule; and   configuring the requested client feature based on the decision.   
     
     
         11 . A first client device, comprising:
 a memory that stores instructions; and   one or more processors configured by the instructions to perform operations comprising:
 receiving a request to access a client feature on the first client device; 
 determining an applicable rule for the access request, the applicable rule having a plurality of nodes; 
 determining nodes that can be executed, the nodes that can be executed including real-time device capabilities; 
 executing the nodes that can be executed to reach a decision for the applicable rule; and 
 configuring the requested client feature based on the decision. 
   
     
     
         12 . The first client device of  claim 11 , wherein the operations further comprise collecting device capability data from a plurality of other client devices that communicated with the first client device. 
     
     
         13 . The first client device of  claim 12 , wherein the determined rule determines a common encoding format for the first Client Device and the plurality of other client devices. 
     
     
         14 . The first client device of  claim 12 , wherein the operations further comprise scheduling the collecting to avoid interruption of processing on the devices. 
     
     
         15 . The first client device of  claim 12 , wherein the determined rule comprises priority nodes and non-priority nodes and the priority nodes are executed before the non-priority nodes. 
     
     
         16 . The first client device of  claim 15 , wherein the determined rule determines if data should be pre-fetched and a priority node of the determined rule includes if sufficient memory is available to store the pre-fetched data. 
     
     
         17 . The first client device of  claim 16 , wherein the determined rule includes non-priority nodes that are executed if the priority node returns a positive value, the non-priority nodes including battery level and connection type. 
     
     
         18 . The first client device of  claim 11 , wherein the determined rule determines if data should be prefetched based on first Client Device app version, Client Device location and bandwidth. 
     
     
         19 . The first client device of  claim 11 , wherein the determined rule determines upload file size and the nodes include bandwidth and connection type. 
     
     
         20 . The first client device of  claim 11 , wherein the determined rule determines transcoding and the nodes include historically stable uploads.

Join the waitlist — get patent alerts

Track US2023362118A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.