Patents by Inventor Kapil Agarwal
Kapil Agarwal has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11693844Abstract: The disclosure herein describes processing deletion requests using sequencing numbers with change feed updates. When a deletion occurs on the source data store, a deletion notification is created in a change feed on the source server. The deletion notification includes a set of deletion record IDs identifying a set of records to be deleted, a tombstone sequence number (TSN) identifying a sequence of the deletion notification within a set of deletion notifications and/or a deletion sequence number (DSN). The DSN is incremented by one each time a new deletion notification is created. A deletion notification can represent deletion of a single record or a set of records. Each deletion notification is assigned a time-to-live (TTL) value. The deletion notification is deleted at expiration of the TTL. The TSN and the DSN entries are used to determine whether any deletion updates have been missed to prevent silent failures.Type: GrantFiled: June 9, 2022Date of Patent: July 4, 2023Assignee: Microsoft Technology Licensing, LLCInventors: Kapil Agarwal, Vaibhav Sharma
-
Patent number: 11520797Abstract: Leveraging time-based comments on communications recordings is described. A system determines a comment time for a communications recording associated with a database record. The system receives a comment for the communications recording and generates a comment thread which includes the comment. If a media player is displaying a player control that is associated with the communications recording, the system causes the comment time and the comment thread and/or a comment thread indicator to be displayed with the player control that is displayed by the media player. The system initiates generation of a feed item, which includes the comment and references the communications recording, thereby causing the output of the feed item via an information feed associated with the database record to any system user associated with the database record.Type: GrantFiled: December 11, 2020Date of Patent: December 6, 2022Assignee: Salesforce, Inc.Inventors: Rachel Blank, Fabiha Johura Hannan, Akanksha Grover, Priyank Saxena, Amit Sharma, Samson Richard Wong, Dinesh Rohra, Kapil Agarwal, Katharine Grace Bowerman
-
Patent number: 11468034Abstract: The disclosure herein describes processing deletion requests using sequencing numbers with change feed updates. When a deletion occurs on the source data store, a deletion notification is created in a change feed on the source server. The deletion notification includes a set of deletion record IDs identifying a set of records to be deleted, a tombstone sequence number (TSN) identifying a sequence of the deletion notification within a set of deletion notifications and/or a deletion sequence number (DSN). The DSN is incremented by one each time a new deletion notification is created. A deletion notification can represent deletion of a single record or a set of records. Each deletion notification is assigned a time-to-live (TTL) value. The deletion notification is deleted at expiration of the TTL. The TSN and the DSN entries are used to determine whether any deletion updates have been missed to prevent silent failures.Type: GrantFiled: January 10, 2020Date of Patent: October 11, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Kapil Agarwal, Vaibhav Sharma
-
Publication number: 20220300479Abstract: The disclosure herein describes processing deletion requests using sequencing numbers with change feed updates. When a deletion occurs on the source data store, a deletion notification is created in a change feed on the source server. The deletion notification includes a set of deletion record IDs identifying a set of records to be deleted, a tombstone sequence number (TSN) identifying a sequence of the deletion notification within a set of deletion notifications and/or a deletion sequence number (DSN). The DSN is incremented by one each time a new deletion notification is created. A deletion notification can represent deletion of a single record or a set of records. Each deletion notification is assigned a time-to-live (TTL) value. The deletion notification is deleted at expiration of the TTL. The TSN and the DSN entries are used to determine whether any deletion updates have been missed to prevent silent failures.Type: ApplicationFiled: June 9, 2022Publication date: September 22, 2022Inventors: Kapil AGARWAL, Vaibhav SHARMA
-
Publication number: 20220188319Abstract: Leveraging time-based comments on communications recordings is described. A system determines a comment time for a communications recording associated with a database record. The system receives a comment for the communications recording and generates a comment thread which includes the comment. If a media player is displaying a player control that is associated with the communications recording, the system causes the comment time and the comment thread and/or a comment thread indicator to be displayed with the player control that is displayed by the media player. The system initiates generation of a feed item, which includes the comment and references the communications recording, thereby causing the output of the feed item via an information feed associated with the database record to any system user associated with the database record.Type: ApplicationFiled: December 11, 2020Publication date: June 16, 2022Inventors: Rachel Blank, Fabiha Johura Hannan, Akanksha Grover, Priyank Saxena, Amit Sharma, Samson Richard Wong, Dinesh Rohra, Kapil Agarwal, Katharine Grace Bowerman
-
Patent number: 11113459Abstract: Disclosed are some implementations of systems, apparatus, methods and computer program products for providing guidance in relation to the customization of web pages. An indication of user input in relation to a modification to a portion of a web page is processed, where the modification includes deletion of a user interface object from the web page, addition of a user interface object to the web page, or a change to a user interface object of the web page, and where the user interface object represents a data object field or web page component. At least the portion of the web page is analyzed using a plurality of web page customization rules. Feedback pertaining to customization of one or more web pages including the web page is provided for presentation by a client device, via a graphical user interface (GUI), based at least in part on a result of analyzing the portion of the web page using the web page customization rules.Type: GrantFiled: May 22, 2020Date of Patent: September 7, 2021Assignee: salesforce.com, inc.Inventors: Jan Ove Kristian Olsson, Adheip Varadarajan, Jesse Bernoudy, Michael Gonzalez, Kapil Agarwal, Chad Hall
-
Publication number: 20210216524Abstract: The disclosure herein describes processing deletion requests using sequencing numbers with change feed updates. When a deletion occurs on the source data store, a deletion notification is created in a change feed on the source server. The deletion notification includes a set of deletion record IDs identifying a set of records to be deleted, a tombstone sequence number (TSN) identifying a sequence of the deletion notification within a set of deletion notifications and/or a deletion sequence number (DSN). The DSN is incremented by one each time a new deletion notification is created. A deletion notification can represent deletion of a single record or a set of records. Each deletion notification is assigned a time-to-live (TTL) value. The deletion notification is deleted at expiration of the TTL. The TSN and the DSN entries are used to determine whether any deletion updates have been missed to prevent silent failures.Type: ApplicationFiled: January 10, 2020Publication date: July 15, 2021Inventors: Kapil AGARWAL, Vaibhav SHARMA
-
Patent number: 10979496Abstract: A system includes a plurality of servers, a control plane to determine a first partition of a plurality of devices and to determine a subset of the plurality of servers to assign as candidate servers for the first partition, and a common data store comprising a first stream and a second stream. The control plane is to store, in the first stream, a first message indicating the first partition, the candidate servers, the second stream, and a first message tag, the candidate servers elect a primary server of the first partition from the candidate servers using the first stream, and the elected primary server inserts read and write updates associated with the plurality of devices of the first partition into the second stream.Type: GrantFiled: April 8, 2019Date of Patent: April 13, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Vaibhav Sharma, Kapil Agarwal
-
Patent number: 10931563Abstract: A system includes determination of a respective performance level associated with each of a plurality of endpoints assigned to a first routing pipeline, determination of a slow one of the plurality of endpoints based on the respective performance levels, and, in response to the determination of the slow one of the plurality of endpoints, instantiation of a second routing pipeline and assignment of the slow one of the plurality of endpoints to the second routing, wherein the first routing pipeline is to receive messages and to route a first plurality of the messages to the plurality of endpoints other than the slow one of the plurality of endpoints, and wherein the second routing pipeline is to receive the messages and to route a second plurality of the messages to the slow one of the plurality of endpoints.Type: GrantFiled: March 22, 2019Date of Patent: February 23, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Vishal Gandhi, Vaibhav Sharma, Kapil Agarwal
-
Publication number: 20200322425Abstract: A system includes a plurality of servers, a control plane to determine a first partition of a plurality of devices and to determine a subset of the plurality of servers to assign as candidate servers for the first partition, and a common data store comprising a first stream and a second stream. The control plane is to store, in the first stream, a first message indicating the first partition, the candidate servers, the second stream, and a first message tag, the candidate servers elect a primary server of the first partition from the candidate servers using the first stream, and the elected primary server inserts read and write updates associated with the plurality of devices of the first partition into the second stream.Type: ApplicationFiled: April 8, 2019Publication date: October 8, 2020Inventors: Vaibhav SHARMA, Kapil AGARWAL
-
Publication number: 20200304401Abstract: A system includes determination of a respective performance level associated with each of a plurality of endpoints assigned to a first routing pipeline, determination of a slow one of the plurality of endpoints based on the respective performance levels, and, in response to the determination of the slow one of the plurality of endpoints, instantiation of a second routing pipeline and assignment of the slow one of the plurality of endpoints to the second routing, wherein the first routing pipeline is to receive messages and to route a first plurality of the messages to the plurality of endpoints other than the slow one of the plurality of endpoints, and wherein the second routing pipeline is to receive the messages and to route a second plurality of the messages to the slow one of the plurality of endpoints.Type: ApplicationFiled: March 22, 2019Publication date: September 24, 2020Inventors: Vishal GANDHI, Vaibhav SHARMA, Kapil AGARWAL
-
Patent number: 10666724Abstract: Multiple geo-replicated and independent IoT (Internet of Things) hubs configured as servers with storage capacities are utilized and span across various regions in the world, to each of which IoT devices can connect and transmit telemetry data. The IoT devices, configured with sensors to generate telemetry data (e.g., temperature, pressure, etc.), can fail over to another geo-replicated IoT hub (the “target geo-replicated IoT hub”) when one IoT hub experiences technical failures or the IoT device changes location to a region which is covered by the target IoT hub. Upon receiving a connection request from the IoT device, the target geo-replicated IoT hub submits a proposal to available geo-replicated IoT hubs for ownership over the IoT device, that is, receive data from and transmit messages to the IoT device. A quorum is sought so that all IoT hubs are in agreement as to a current owner of the IoT device.Type: GrantFiled: November 20, 2018Date of Patent: May 26, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Kapil Agarwal, Vaibhav Sharma, Affan Arshad Dar, Roopesh Kumar Manda
-
Publication number: 20160104067Abstract: Disclosed are some examples of systems, apparatus, methods and storage media for providing customized recommendations to users. Some implementations more particularly relate to a recommendation platform that enables authorized third parties to create, customize and add new recommendations that are then available to be served to target users or audiences of users. Some implementations further relate to a recommendation platform that enables authorized users to define audiences, scheduling settings, scheduling policies, and rules to customize or influence the provision of associated recommendations to the users. The recommendation platform includes a recommendation engine that serves the recommendations to users based on such defined audiences, scheduling settings, policies or other rules.Type: ApplicationFiled: May 11, 2015Publication date: April 14, 2016Inventors: Zhenhua Xu, Joel Palmert, Johan Philip Magnusson, Rasmus Mencke, Scott Douglas White, Zandra Hird, Ziwei Chen, Kapil Agarwal, Adam McCormick Doti, Arthur Albert Louie, Kamyar Seradjfar, Paul Gene Byrne, Runying Mao, Weiping Peng