US10747586B2ActiveUtilityA1

Remote communication and remote programming by application programming interface

47
Assignee: SILEAD INCPriority: Oct 9, 2016Filed: May 21, 2018Granted: Aug 18, 2020
Est. expiryOct 9, 2036(~10.3 yrs left)· nominal 20-yr term from priority
Inventors:Wenheng Zhao
G06F 9/54H04L 67/34H04L 67/133H04L 67/01G06F 8/30G06F 8/41G06F 9/542H04L 67/30H04L 67/025H04L 67/06G06F 9/451H04L 67/42H04L 67/40
47
PatentIndex Score
0
Cited by
13
References
20
Claims

Abstract

Methods and systems are provided for Remote Application Programming Interface (RAPI) communications between server and client devices. In an embodiment, server and client devices comprise memories and hardware processors coupled to the memories. The hardware processors execute instructions to perform operations that instantiate access point instances on both server side and client side. The instructions are generated from compiling API interface classes with remote communication classes, wherein the compiling includes a procedure of creating new classes through double inheritance. By receiving an API connection message from a client device, the server device clones a default relayer access point instance and assigns the cloned relayer access point instance to process API requests received thereafter from the client device.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method for a server device to process an Application Programming Interface (API) request, comprising:
 receiving an API interface forward-call header and an API interface callback header; 
 receiving a communication relayer header and a communication client header; 
 constructing, within an operating memory of the server device, a default relayer access point instance, by compiling the API interface forward-call header and the communication relayer header; 
 receiving, by the default relayer access point instance, an API connection message sent from a client networked to the server device, wherein the API connection message includes a callback channel connection request; 
 creating a cloned relayer access point instance, by duplicating the default relayer access point instance within the operating memory; 
 constructing, within the operating memory, a client callback access point instance, by compiling at least the API interface callback header and the communication client header; and 
 processing, by the cloned relayer access point instance, an API service message sent from the client. 
 
     
     
       2. The method of  claim 1 , wherein the default relayer access point instance includes a default relayer identifier. 
     
     
       3. The method of  claim 2 , wherein the API connection message includes a relayer identifier that is identical to the default relayer identifier. 
     
     
       4. The method of  claim 1 , wherein the API connection message includes a client identifier corresponding to the client. 
     
     
       5. The method of  claim 4 , further comprising:
 after the creating of the cloned relayer access point instance, associating the cloned relayer access point instance with an instance pointer, wherein the instance pointer is stored in an instance array stack kept in a non-transitory memory of the server device and is retrievable with the client identifier. 
 
     
     
       6. The method of  claim 4 , wherein the API service message includes an API function name, a plurality of API function parameters, and the client identifier. 
     
     
       7. The method of  claim 1 , wherein:
 the API interface forward-call header defines API forward-call functionalities; 
 the API interface callback header defines API callback functionalities; 
 the communication relayer header defines remote communication functionalities on a server's end; and 
 the communication client header defines remote communication functionalities on a client's end. 
 
     
     
       8. The method of  claim 7 , wherein:
 the API interface forward-call header and the API interface callback header both inherit from a parent API interface class that defines common API interface functionalities; and 
 the communication relayer header and the communication client header both inherit from a parent communication class that defines common communication functionalities. 
 
     
     
       9. The method of  claim 1 , wherein the processing further comprising:
 retrieving, by the cloned relayer access point instance, an API function name and a plurality of API function parameters from the API service message; and 
 passing the API function name and the plurality of API function parameters to a server application instance associated with the cloned relayer access point instance. 
 
     
     
       10. A method for a client device to request an Application Programming Interface (API) service, comprising:
 receiving an API interface forward-call header and an API interface callback header; 
 receiving a communication relayer header and a communication client header; 
 receiving a relayer identifier; 
 constructing a client access point instance, within an operating memory of the client device, by compiling at least the API interface forward-call header and the communication client header; 
 creating an API connection message, by the client access point instance, wherein the API connection message contains the relayer identifier; and 
 transmitting the API connection message, by the client access point instance, to a server networked to the client device, wherein the server is associated with the relayer identifier. 
 
     
     
       11. The method of  claim 10 , wherein the API interface forward-call header and the API interface callback header both inherit from a parent API interface class that defines common API interface functionalities. 
     
     
       12. The method of  claim 10 , wherein the communication relayer header and the communication client header both inherit from a parent communication class that defines common communication functionalities. 
     
     
       13. The method of  claim 10 , wherein the receiving of the relayer identifier includes retrieving the relayer identifier from a list of relayer identifiers stored in a non-transitory memory of the client device. 
     
     
       14. The method of  claim 10 , further comprising:
 transmitting an API service message, by the client access point instance, wherein the API service message contains the relayer identifier. 
 
     
     
       15. The method of  claim 10 , wherein:
 the API interface forward-call header defines API forward-call functionalities; 
 the API interface callback header defines API callback functionalities; 
 the communication relayer header defines remote communication functionalities on a server's end; and 
 the communication client header defines remote communication functionalities on a client's end. 
 
     
     
       16. The method of  claim 10 , further comprising:
 constructing a client application instance within the operating memory, wherein the client access point instance is associated with the client application instance. 
 
     
     
       17. The method of  claim 16 , wherein the client application instance is associated with a client identifier, and wherein the API connection message contains the client identifier. 
     
     
       18. A method for a communication between a server and a client, comprising:
 creating a default relayer access point instance, a client callback access point instance, a client access point instance, and a relayer callback access point instance, wherein the default relayer access point instance and the client callback access point instance are within a memory of the server, wherein the client access point instance and the relayer callback access point instance are within a memory of the client; 
 generating an Application Programming Interface (API) connection message by the client access point instance, wherein the API connection message includes a client identifier; 
 transmitting the API connection message to the server by the client access point instance; 
 receiving the API connection message by the default relayer access point instance; 
 creating a cloned relayer access point instance by duplicating the default relayer access point instance within the memory of the server; 
 associating the cloned relayer access point instance with the client identifier; and 
 processing, by the cloned relayer access point instance, an API service message sent from the client access point instance, wherein the API service message contains an API function name and a plurality of API function parameters. 
 
     
     
       19. The method of  claim 18 , further comprising:
 creating, by the client callback access point instance, an API result message, wherein the API result message is associated with the API function name and includes the client identifier; and 
 transmitting, by the client callback access point instance, the API result message to the relayer callback access point instance. 
 
     
     
       20. The method of  claim 19 , further comprising:
 associating the client callback access point instance with an instance pointer, wherein the instance pointer is stored in an instance array stack kept in a non-transitory memory of the server and is retrievable with the client identifier.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.