US 11,936,638 B2
Link protocol agents for inter-application communications
Ankur Oberoi, San Francisco, CA (US); Abhishek Mahanti, San Francisco, CA (US); Helen Wei Zeng, San Francisco, CA (US); Serguei Mourachov, Vancouver (CA); Chirag Gupta, San Ramon, CA (US); and Saurabh Sahni, San Francisco, CA (US)
Assigned to Salesforce Inc., San Francisco, CA (US)
Filed by Salesforce, Inc., San Francisco, CA (US)
Filed on Jun. 28, 2020, as Appl. No. 16/914,435.
Claims priority of provisional application 62/868,419, filed on Jun. 28, 2019.
Prior Publication US 2020/0412708 A1, Dec. 31, 2020
Int. Cl. H04L 29/06 (2006.01); H04L 9/40 (2022.01); H04L 12/06 (2006.01); H04L 67/02 (2022.01)
CPC H04L 63/0807 (2013.01) [H04L 12/06 (2013.01); H04L 63/02 (2013.01); H04L 63/10 (2013.01); H04L 67/02 (2013.01)] 20 Claims
OG exemplary drawing
 
1. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed by a processor, perform a method for facilitating secure inter-application communications between a web platform and an application using a link protocol agent associated with the web platform, the method comprising:
receiving, at the link protocol agent, an authentication request from the application;
in response to determining that the authentication request is successful, providing, by the link protocol agent, a temporary connection resource locator and a connection token to the application,
wherein the temporary connection resource locator is a single-use web socket uniform resource locator that, once called for a connection, is invalidated for future connection,
wherein the single-use web socket uniform resource locator expires after a predetermined period of time when not called for the connection;
receiving, at the link protocol agent, a connection request from the application;
responsive to receiving the connection request:
establishing a link protocol communication connection by validating the connection token; and
maintaining the link protocol communication connection for a connection maintenance time interval associated with the connection request;
transmitting at least one first link protocol communication payload;
receiving an acknowledgement from the application indicating receipt of the at least one first link protocol communication payload and comprising an indication of the at least one first link protocol communication payload;
transmitting at least one second link protocol communication payload if the acknowledgement is not received within an acknowledgment time period;
tracking, by the link protocol agent, an acknowledgment rate from the application and disabling the link protocol communication connection if the acknowledgment rate falls below a threshold; and
storing each successive link protocol communication payload.