Patents by Inventor Thomas Archie Cook

Thomas Archie Cook 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: 11769013
    Abstract: A multi-tenant system performs custom configuration of a tenant-specific chatbot to process and act upon natural language requests. The multi-tenant system configures the tenant-specific chatbots without requiring tenant-specific training. The multi-tenant system providing a user interface for configuring a tenant-specific set of permitted actions. The multi-tenant system determines a set of example phrases for each of the selected permitted actions. The multi-tenant system receives a natural language request from a user and identifies the action that the user wants to perform. The multi-tenant system uses a neural network to compare the natural language request with example phrases to identify an example phrase that matches the natural language request. The multi-tenant system performs the action corresponding to the matching example phrase.
    Type: Grant
    Filed: November 11, 2019
    Date of Patent: September 26, 2023
    Assignee: Salesforce, Inc.
    Inventors: Michael Machado, James Douglas Harrison, Caiming Xiong, Xinyi Yang, Thomas Archie Cook, Roojuta Lalani, Jean-Marc Soumet, Karl Ryszard Skucha, Juan Rodriguez, Manju Vijayakumar, Vishal Motwani, Tian Xie, Bryan McCann, Nitish Shirish Keskar, Zhihao Zou, Chitra Gulabrani, Minal Khodani, Adarsha Badarinath, Rohiniben Thakar, Srikanth Kollu, Kevin Schoen, Qiong Liu, Amit Hetawal, Kevin Zhang, Kevin Zhang, Johnson Liu, Rafael Amsili
  • Patent number: 11544465
    Abstract: Approaches to using unstructured input to update heterogeneous data stores include receiving unstructured text input, receiving a template for interpreting the unstructured text input, identifying, using an entity classifier, entities in the unstructured text input, identifying one or more potential parent entities from the identified entities based on the template, receiving a selection of a parent entity from the one or more potential parent entities, identifying one or more potential child entities from the identified entities based on the template and the selected parent entity, receiving a selection of a child entity from the one or more potential child entities, identifying an action item in the unstructured text input based on the identified entities and the template, determining, using an intent classifier, an intent of the action item, and updating a data store based on the determined intent, the identified entities, and the selected child entity.
    Type: Grant
    Filed: March 24, 2021
    Date of Patent: January 3, 2023
    Assignee: SALESFORCE.COM, INC.
    Inventors: Michael Machado, John Ball, Thomas Archie Cook, Jr., Shashank Harinath, Roojuta Lalani, Zineb Laraki, Qingqing Liu, Mike Rosenbaum, Karl Ryszard Skucha, Jean-Marc Soumet, Manju Vijayakumar
  • Publication number: 20210209305
    Abstract: Approaches to using unstructured input to update heterogeneous data stores include receiving unstructured text input, receiving a template for interpreting the unstructured text input, identifying, using an entity classifier, entities in the unstructured text input, identifying one or more potential parent entities from the identified entities based on the template, receiving a selection of a parent entity from the one or more potential parent entities, identifying one or more potential child entities from the identified entities based on the template and the selected parent entity, receiving a selection of a child entity from the one or more potential child entities, identifying an action item in the unstructured text input based on the identified entities and the template, determining, using an intent classifier, an intent of the action item, and updating a data store based on the determined intent, the identified entities, and the selected child entity.
    Type: Application
    Filed: March 24, 2021
    Publication date: July 8, 2021
    Inventors: Michael MACHADO, John BALL, Thomas Archie COOK, JR., Shashank HARINATH, Roojuta LALANI, Zineb LARAKI, Qingqing LIU, Mike ROSENBAUM, Karl Ryszard SKUCHA, Jean-Marc SOUMET, Manju VIJAYAKUMAR
  • Patent number: 11048684
    Abstract: Systems, methods, and computer-readable media for lazy tracking mechanisms for web caching systems are provided. The lazy tracking mechanism may track and perform asynchronous (async) computation of dirty records for client-side caching mechanisms. The async computation of dirty records may include tracking or accounting for invalidated records relevant to a particular client or user system. Invalidation messages may be sent to client/user systems in response to receipt of a request for updated records, or in response to a request for a particular item. Other embodiments may be described and/or claimed.
    Type: Grant
    Filed: January 16, 2018
    Date of Patent: June 29, 2021
    Assignee: SALESFORCE.COM, INC.
    Inventors: Vishal Motwani, Nick Hansen, Vivek Chauhan, Thomas Archie Cook, Jr., Thomas Keeney, Kamyar Seradjfar
  • Publication number: 20210141865
    Abstract: A multi-tenant system performs custom configuration of a tenant-specific chatbot to process and act upon natural language requests. The multi-tenant system configures the tenant-specific chatbots without requiring tenant-specific training. The multi-tenant system providing a user interface for configuring a tenant-specific set of permitted actions. The multi-tenant system determines a set of example phrases for each of the selected permitted actions. The multi-tenant system receives a natural language request from a user and identifies the action that the user wants to perform. The multi-tenant system uses a neural network to compare the natural language request with example phrases to identify an example phrase that matches the natural language request. The multi-tenant system performs the action corresponding to the matching example phrase.
    Type: Application
    Filed: November 11, 2019
    Publication date: May 13, 2021
    Inventors: Michael Machado, James Douglas Harrison, Caiming Xiong, Xinyi Yang, Thomas Archie Cook, Roojuta Lalani, Jean-Marc Soumet, Karl Ryszard Skucha, Juan Manuel Rodriguez, Manju Vijayakumar, Vishal Motwani, Tian Xie, Bryan McCann, Nitish Shirish Keskar, Armen Abrahamyan, Zhihao Zou, Chitra Gulabrani, Minal Khodani, Adarsha Badarinath, Rohiniben Thakar, Srikanth Kollu, Kevin Schoen, Qiong Liu, Amit Hetawal, Kevin Zhang, Kevin Zhang, Victor Brouk, Johnson Liu, Rafael Amsili
  • Patent number: 10970486
    Abstract: Approaches to using unstructured input to update heterogeneous data stores include receiving unstructured text input, receiving a template for interpreting the unstructured text input, identifying, using an entity classifier, entities in the unstructured text input, identifying one or more potential parent entities from the identified entities based on the template, receiving a selection of a parent entity from the one or more potential parent entities, identifying one or more potential child entities from the identified entities based on the template and the selected parent entity, receiving a selection of a child entity from the one or more potential child entities, identifying an action item in the unstructured text input based on the identified entities and the template, determining, using an intent classifier, an intent of the action item, and updating a data store based on the determined intent, the identified entities, and the selected child entity.
    Type: Grant
    Filed: September 18, 2018
    Date of Patent: April 6, 2021
    Assignee: salesforce.com, inc.
    Inventors: Michael Machado, John Ball, Thomas Archie Cook, Jr., Shashank Harinath, Roojuta Lalani, Zineb Laraki, Qingqing Liu, Mike Rosenbaum, Karl Ryszard Skucha, Jean-Marc Soumet, Manju Vijayakumar
  • Publication number: 20200210257
    Abstract: Embodiments regard deduplication of application program interface calls. An embodiment of an apparatus one or more processors to process data; a computer memory; and a network interface, wherein the apparatus includes an intermediary layer between one or more components of the apparatus and the network interface, the intermediary layer to perform deduplication of multiple server API calls from one or more components for the one or more APIs, wherein the deduplication includes one or more of preventing transmission of duplicated server calls from the one or more components to the one or more APIs; and generating one or more combined server calls based at least in part on the plurality of server API calls and transmitting the one or more combined server calls to the one or more APIs.
    Type: Application
    Filed: December 28, 2018
    Publication date: July 2, 2020
    Inventors: Thomas Archie Cook, Sahil Bhutani, Praveen Savur, Alan Mathias Hoffman, Ruthvik Krishna Murthy
  • Publication number: 20200201837
    Abstract: A database system supports live record invalidation at one or more client systems. As client system request database resources such as data objects from the database system, the database system registers entries at an object user map that indicates which objects are active and what client systems are viewing such objects. If one of the objects is changed, the database server utilizes the object user map to identify other client systems that are viewing the changed record. The database server may transmit change event indications to the client systems, and the client systems can request the updated data corresponding to the updated object.
    Type: Application
    Filed: December 21, 2018
    Publication date: June 25, 2020
    Inventors: Vishal Motwani, Thomas Michael Jason Keeney, Vivek Chauhan, Kevin Venkiteswaran, Kamyar Seradjfar, Jared Adam Pearson, Sheraz Khan, Sahil Bhutani, Mohamad Arabo, Naveen Jaunk, Chandrakant Yemparala, Alan Mathias Hoffman, Badal Chhatbar, Ruthvik Krishna Murthy, Praveen Savur, Christopher Douglas Seymour, Thomas Archie Cook, Shikha Soni, Kevin Schoen
  • Publication number: 20200089757
    Abstract: Approaches to using unstructured input to update heterogeneous data stores include receiving unstructured text input, receiving a template for interpreting the unstructured text input, identifying, using an entity classifier, entities in the unstructured text input, identifying one or more potential parent entities from the identified entities based on the template, receiving a selection of a parent entity from the one or more potential parent entities, identifying one or more potential child entities from the identified entities based on the template and the selected parent entity, receiving a selection of a child entity from the one or more potential child entities, identifying an action item in the unstructured text input based on the identified entities and the template, determining, using an intent classifier, an intent of the action item, and updating a data store based on the determined intent, the identified entities, and the selected child entity.
    Type: Application
    Filed: September 18, 2018
    Publication date: March 19, 2020
    Inventors: Michael MACHADO, John BALL, Thomas Archie COOK, JR., Shashank HARINATH, Roojuta LALANI, Zineb LARAKI, Qingqing LIU, Mike ROSENBAUM, Karl Ryszard SKUCHA, Jean-Marc SOUMET, Manju VIJAYAKUMAR
  • Patent number: 10585925
    Abstract: In accordance with embodiments, there are provided mechanisms and methods for facilitating management of user queries and dynamic filtration of responses based on group filters in an on-demand services environment in a multi-tenant environment according to one embodiment. In one embodiment and by way of example, a method includes receiving, at a first computing device, a query via an application programming interface (“API”) of a software application at a second computing device, where the query includes one or more filter parameters including a size filter parameter. The method may further include evaluating the query based on the one or more filter parameters including the size filter parameter, selecting a first response based on the size filter parameter, and communicating the first response to be viewed via the API at the second computing device.
    Type: Grant
    Filed: January 10, 2018
    Date of Patent: March 10, 2020
    Assignee: salesforce.com, inc.
    Inventors: Arthur Albert Louie, Christopher Douglas Seymour, Ethan Treber, Jason Schroeder, Jean Elie Bovet, Jody Elizabeth Bleyle, John Christopher Houston, Kamyar Seradjfar, Mohamad Arabo, Qingqing Liu, Thomas Archie Cook, Jr.
  • Publication number: 20190220530
    Abstract: Systems, methods, and computer-readable media for lazy tracking mechanisms for web caching systems are provided. The lazy tracking mechanism may track and perform asynchronous (async) computation of dirty records for client-side caching mechanisms. The async computation of dirty records may include tracking or accounting for invalidated records relevant to a particular client or user system. Invalidation messages may be sent to client/user systems in response to receipt of a request for updated records, or in response to a request for a particular item. Other embodiments may be described and/or claimed.
    Type: Application
    Filed: January 16, 2018
    Publication date: July 18, 2019
    Applicant: salesforce.com, inc.
    Inventors: Vishal MOTWANI, Nick Hansen, Vivek Chauhan, Thomas Archie Cook, JR., Thomas Keeney, Kamyar Seradjfar
  • Patent number: 10341279
    Abstract: The technology disclosed includes a method for initiating a web service through an action item within a post in a social media network. A request is received from a user for a post to a social network. The request includes a definition for an action-link-group, which comprises one or more action links. The post is created to include the action-link-group and is then uploaded to the network. Upon receiving a selection of an action link within the action-link-group, an action item associated with the action link is performed.
    Type: Grant
    Filed: September 30, 2015
    Date of Patent: July 2, 2019
    Assignee: salesforce.com, inc.
    Inventors: Christopher Douglas Seymour, Kamyar Seradjfar, Thomas Archie Cook, Jr., Jody Elizabeth Bleyle, Mohamad Arabo, John Christopher Houston
  • Publication number: 20180129737
    Abstract: In accordance with embodiments, there are provided mechanisms and methods for facilitating management of user queries and dynamic filtration of responses based on group filters in an on-demand services environment in a multi-tenant environment according to one embodiment. In one embodiment and by way of example, a method includes receiving, at a first computing device, a query via an application programming interface (“API”) of a software application at a second computing device, where the query includes one or more filter parameters including a size filter parameter. The method may further include evaluating the query based on the one or more filter parameters including the size filter parameter, selecting a first response based on the size filter parameter, and communicating the first response to be viewed via the API at the second computing device.
    Type: Application
    Filed: January 10, 2018
    Publication date: May 10, 2018
    Inventors: ARTHUR ALBERT LOUIE, CHRISTOPHER DOUGLAS SEYMOUR, ETHAN TREBER, JASON SCHROEDER, JEAN ELIE BOVET, JODY ELIZABETH BLEYLE, JOHN CHRISTOPHER HOUSTON, KAMYAR SERADJFAR, MOHAMAD ARABO, QINGQING LIU, THOMAS ARCHIE COOK, JR.
  • Patent number: 9881076
    Abstract: In accordance with embodiments, there are provided mechanisms and methods for facilitating management of user queries and dynamic filtration of responses based on group filters in an on-demand services environment in a multi-tenant environment according to one embodiment. In one embodiment and by way of example, a method includes receiving, at a first computing device, a query via an application programming interface (“API”) of a software application at a second computing device, where the query includes one or more filter parameters including a size filter parameter. The method may further include evaluating the query based on the one or more filter parameters including the size filter parameter, selecting a first response based on the size filter parameter, and communicating the first response to be viewed via the API at the second computing device.
    Type: Grant
    Filed: June 27, 2014
    Date of Patent: January 30, 2018
    Assignee: salesforce.com, Inc.
    Inventors: Arthur Albert Louie, Christopher Douglas Seymour, Ethan Treber, Jason Schroeder, Jean Elie Bovet, Jody Elizabeth Bleyle, John Christopher Houston, Kamyar Seradjfar, Mohamad Arabo, Qingqing Liu, Thomas Archie Cook, Jr.
  • Publication number: 20160105383
    Abstract: The technology disclosed includes a method for initiating a web service through an action item within a post in a social media network. A request is received from a user for a post to a social network. The request includes a definition for an action-link-group, which comprises one or more action links. The post is created to include the action-link-group and is then uploaded to the network. Upon receiving a selection of an action link within the action-link-group, an action item associated with the action link is performed.
    Type: Application
    Filed: September 30, 2015
    Publication date: April 14, 2016
    Applicant: SALESFORCE.COM, INC.
    Inventors: Christopher Douglas Seymour, Kamyar Seradjfar, Thomas Archie Cook, JR., Jody Elizabeth Bleyle, Mohamad Arabo, John Christopher Houston
  • Publication number: 20150026165
    Abstract: In accordance with embodiments, there are provided mechanisms and methods for facilitating management of user queries and dynamic filtration of responses based on group filters in an on-demand services environment in a multi-tenant environment according to one embodiment. In one embodiment and by way of example, a method includes receiving, at a first computing device, a query via an application programming interface (“API”) of a software application at a second computing device, where the query includes one or more filter parameters including a size filter parameter. The method may further include evaluating the query based on the one or more filter parameters including the size filter parameter, selecting a first response based on the size filter parameter, and communicating the first response to be viewed via the API at the second computing device.
    Type: Application
    Filed: June 27, 2014
    Publication date: January 22, 2015
    Inventors: Arthur Albert Louie, Christopher Douglas Seymour, Ethan Treber, Jason Schroeder, Jean Elie Bovet, Jody Elizabeth Bleyle, John Christopher Houston, Kamyar Seradjfar, Mohamad Arabo, Qingqing Liu, Thomas Archie Cook, JR.