Patents Assigned to salesforce.com, inc.
  • Publication number: 20190220326
    Abstract: Technologies are provided for synchronizing and joining multiple calls from a first thread and one or more second threads to execute a particular code segment. In response to a call from the first thread to execute the particular code segment, a task synchronizer module calls the particular code segment on behalf of the first thread. When execution of the particular code segment starts, and a call is received from a second thread to execute the particular code segment after receiving the call from the first thread, the task synchronizer module suspends execution of the particular code segment in response to the call from the second thread so that the second thread awaits for the execution of the particular code segment on behalf of the first thread to complete. When execution of the particular code segment completes, a result value or exception is stored in a task object, and the second thread can read the result value or the exception that is stored in the task object.
    Type: Application
    Filed: January 17, 2018
    Publication date: July 18, 2019
    Applicant: salesforce.com, inc.
    Inventors: WESLEY PETER, AVI BRENNER, JUSTIN HORST
  • Publication number: 20190220184
    Abstract: A computer-implemented method in an electronic device comprises: receiving a request to display a keyboard; in response, causing a touchscreen display to display, a multi-layer image comprising a virtual keyboard in a first layer and a text-box in a second layer; receiving a selection of a key from the virtual keyboard; and causing a character associated with the selected key to be displayed in the text-box. A keyboard module comprises one or more processors configured by programming instructions encoded on non-transient computer readable media and is configured to: provide a multi-layer image for display on a touchscreen display of the electronic device, the multi-layer image comprising a virtual keyboard in a first layer and a text-box in a second layer; receive a selection of a key from the virtual keyboard made via the touchscreen display; and cause a character associated with the selected key to be displayed in the text-box.
    Type: Application
    Filed: January 16, 2018
    Publication date: July 18, 2019
    Applicant: salesforce.com, inc.
    Inventor: Wojciech A. Koszek
  • 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
  • Publication number: 20190220154
    Abstract: In embodiments, a method may include displaying a user interface comprising at least two windows, a first window displaying a live chat with a first individual and at least one of the remaining windows displaying content related to the live chat. The method may further include receiving an indication to pop-out the first window, and in response, displaying the first window as a separate moveable window, and displaying, within an original area of the first window, additional content related to one of the live chat or the first individual. The method may further include receiving an indication from a user to change the live chat to be with a second individual, and in response to the indication: displaying the live chat with the second individual in the separate moveable window; and displaying content related to the second individual in the at least one of the remaining windows.
    Type: Application
    Filed: January 18, 2018
    Publication date: July 18, 2019
    Applicant: salesforce.com, Inc.
    Inventors: Kristen Muramoto, Patrick Beyries
  • Publication number: 20190220608
    Abstract: A method for securely sharing a common software package includes storing, within a database, a set of software packages associated with a first namespace, then storing, within the database, a common software package associated with the set of software packages. The common software package is obfuscated and includes an access modifier. A request to install a first software package selected from the set of software packages associated with the namespace is received by a subscriber. In response to the request from the subscriber, the system installs the first software package and the common software package in accordance with the access modifier.
    Type: Application
    Filed: January 17, 2018
    Publication date: July 18, 2019
    Applicant: salesforce.com, inc.
    Inventors: GANESH MATHRUBOOTHAM, JEFFREY M. BARTOLOTTA, REID A. ELLIOTT
  • Publication number: 20190220177
    Abstract: A computer-implemented method in a document editing module is provided. The document editing module comprises a processor configured by programming instructions encoded in non-transient computer readable media. The method comprises providing, by the processor, contents of a document to a user interface; providing via the user interface, by the processor, an object that when selected indicates a desire to lock the document from editing by another document editing module or another instance of the document editing module for a fixed time period; and modifying, by the processor, one or more attributes of the document that indicate that the document is locked for editing and a fixed length of time the document is locked for editing when the object has been selected.
    Type: Application
    Filed: January 16, 2018
    Publication date: July 18, 2019
    Applicant: Salesforce.Com, Inc.
    Inventors: Robin Guido, Joseph Andolina
  • Publication number: 20190222643
    Abstract: Methods and systems are provided for implementing session synchronization to synchronize applications at different user systems (e.g., mobile device, laptop, desktop, tablet) of a particular user. As will be explained in greater detail below, this platform level solution that can maintain session information received any number of different user systems of the particular user and share this collective session information with each of the other user systems as session-synchronization information that can be used, at any user system of that user, to ensure that when that user switches from using one user system to another user system that that applications at the “new” user system being switched to are synchronized with any other applications that were most recently in use at all of the other user systems of that user.
    Type: Application
    Filed: January 18, 2018
    Publication date: July 18, 2019
    Applicant: salesforce.com, inc.
    Inventors: Vijay Karani, Kongposh Sapru
  • Patent number: 10353723
    Abstract: In some database systems, a user device may query for data records using a procedural language extension to structured query language (PL/SQL) call. However, some databases may not be configured to process PL/SQL code. In these cases, a virtual machine may intercept the PL/SQL call, and may transform the call to a format usable by the database. For example, the virtual machine may deconstruct the PL/SQL call to determine the procedural and query functions that comprise the PL/SQL call. The virtual machine may then search a database for non-PL/SQL code snippets that correspond to these determined functions, and may generate non-PL/SQL code (e.g., Java code) that may perform the same functions as the PL/SQL call. The virtual machine, the database, or a combination of the two may execute the non-PL/SQL code to retrieve the data records from the database, and may return the records to the user device.
    Type: Grant
    Filed: January 30, 2018
    Date of Patent: July 16, 2019
    Assignee: salesforce.com, inc.
    Inventors: Raghavendran Hanumantharau, Yoram Tal
  • Patent number: 10356088
    Abstract: An ID service provisioned on a server interacts with a corresponding ID app installed on a user device such as a smart phone for secure user authentication (login). A user acquires two asymmetric encryption keys pairs. One of the private keys is secured on SIM on the user device, and the other one stored in the ID app on the user device. At login attempt, the ID service generates two random challenge messages, and encrypts each of them with one of the public keys. Decryption of one challenge is conducted by the SIM and decryption of the other is done by the ID app. A token based on the two decrypted challenge results is returned to the ID service. Alternatively, a single challenge can be double-wrapped with the two keys. The verifies the results and enables secure login without requiring a password.
    Type: Grant
    Filed: June 19, 2017
    Date of Patent: July 16, 2019
    Assignee: SALESFORCE.COM, INC.
    Inventors: Prasad Peddada, Taher Elgamal
  • Patent number: 10353912
    Abstract: Navigation of a data extraction graph is described. The data extraction graph may be a graph representation of data and metadata in an object-oriented database. In one example, a data extraction definition of metadata from a database system is presented in a graph format. The graph format is transformed into a linear object tree, and/or an object list. Navigation commands are received from a user to navigate the transformed graph format. Selections of objects are received from the user to select objects in the transformed graph format. A summary view of the selected objects is then provided in the transformed graph format.
    Type: Grant
    Filed: June 24, 2015
    Date of Patent: July 16, 2019
    Assignee: salesforce.com, inc.
    Inventors: Zuye Zheng, Amruta Moktali, Suyog Anil Deshpande
  • Patent number: 10353905
    Abstract: Identifying entities in semi-structured content is described. A system assigns a corresponding entity type based on a corresponding entity type score for each token in a sequence of tokens in semi-structured content, based on multiple entity types, wherein each token is a corresponding character set. The system assigns a corresponding boundary type based on a corresponding boundary type score for each token in the sequence of tokens, based on a begin boundary type or a continue boundary type. The system identifies an entity based on a corresponding entity type score and a corresponding boundary type for each token in the sequence of tokens. The system outputs the sequence of tokens as an identified set of entities based on the identified entity.
    Type: Grant
    Filed: April 24, 2015
    Date of Patent: July 16, 2019
    Assignee: salesforce.com, inc.
    Inventors: Govardana Sachithanandam Ramachandran, Hawro Mustafa
  • Patent number: 10354264
    Abstract: Contact recommendations based on purchase history are described. A system creates a directed graph of nodes in which at least some of the nodes are connected by directed arcs, wherein a directed arc from a first node to a second node represents a conditional probability that previous users who purchased a first contact also purchased a second contact. The system identifies a set of contacts purchased by a current user. The system estimates a prospective purchase probability based on a historical probability that previous users purchased a specific contact and a related probability that previous users who purchased the specific contact also purchased a contact in the set of contacts, for each candidate contact. The system outputs a recommendation for the current user to purchase a recommended candidate contact based on a corresponding prospective purchase probability.
    Type: Grant
    Filed: September 15, 2014
    Date of Patent: July 16, 2019
    Assignee: salesforce.com, inc.
    Inventors: Arun Jagota, Gregory Haardt, Govardana Sachithanandam Ramachandran, Lei Ming, Matthew Fuchs, George Vitchev, Fang Wong
  • Patent number: 10346386
    Abstract: Systems and methods provide multi-version concurrency control of database records with uncommitted transactions. The system and methods may include receiving a query regarding a transaction counter number. When a transaction header identifying data is updated with the assigned transaction counter number, the updated transaction header may be used in identifying data as an instance of multiversion concurrency control information by the received query. A key lookup may be performed, and when the key lookup encounters an uncommitted row for a transaction number, a corresponding transaction header identifying data to identify a data array element to determine whether the transaction number is committed, and determining the transaction counter number when the transaction number is committed. The transaction counter number may be stamped on the row version record when it is determined that the row is committed.
    Type: Grant
    Filed: November 4, 2016
    Date of Patent: July 9, 2019
    Assignee: salesforce.com, inc.
    Inventors: Subho Sanjay Chatterjee, Patrick James Helland, Nathaniel Wyatt, James E. Mace, Punit B. Shah
  • Patent number: 10346370
    Abstract: Some external users in a public on-line community may post excessive numbers of items, causing annoyance to others and unnecessary loading on database resources. A robust moderation framework enables an individual community moderator or admin to specify a set of rules and actions to mitigate this problem. Scalable, performant rate limiting rules employ windowed counters, separately for each rule, with the counters maintained in cache memory resources outside the main database.
    Type: Grant
    Filed: September 22, 2016
    Date of Patent: July 9, 2019
    Assignee: SALESFORCE.COM, INC.
    Inventors: Kenneth Chung Kay Ko, Joshua Luft-Glidden, Lucas Pfister
  • Patent number: 10346721
    Abstract: A computer system generates augmented training datasets to train neural network models. The computer system receives an initial training dataset comprising images for training a neural network model, and generates an augmented training dataset by modifying images from the first training dataset. The computer system identifies a representation of a target object against a background from the initial training dataset and extracts a portion of the image displaying the target object. The computer system generates samples for including in the augmented training dataset based on the image. For example, new images may be obtained by performing transformations on the portion of the image displaying the target object and/or by overlaying the transformed portion of the image over a different background. The modified images are included in the augmented training dataset used for training the neural network model to recognize the target object.
    Type: Grant
    Filed: November 1, 2017
    Date of Patent: July 9, 2019
    Assignee: salesforce.com, inc.
    Inventors: Evan Albright, Caiming Xiong
  • Patent number: 10346451
    Abstract: A conversation tool may display messages posted on a social media website. The conversation tool may receive selections of posts from the user interface to send associated reply messages and assign metadata for the selected posts to the associated reply messages. The conversation tool then may receive a request to display a conversation for a particular user. The conversation tool identifies the reply messages with assigned metadata associated with the user and identifies the posts associated with the identified reply messages. The conversation tool displays the identified posts with the identified reply messages as the message conversation. The conversation tool uses the reply messages as a trigger for identifying and tracking conversations between an agent and different users. The conversations allow the agent to more efficiently respond to and manage non-structured messages posted on social media websites.
    Type: Grant
    Filed: May 27, 2016
    Date of Patent: July 9, 2019
    Assignee: SALESFORCE.COM, INC.
    Inventor: Ian Frosst
  • Patent number: 10345995
    Abstract: A user of an application can affect the control structure of an application by changing a level of detail setting. When a level of detail is altered relative to a graphical region, additional information and functionality may become available, while previously displayed information and/or functionality for a different graphical region may become hidden or otherwise unavailable. A user may repeatedly enhance a level of detail at which a particular application region is shown by repeatedly using an appropriate user input command. The present disclosure does not simply change a user's view of an application, but changes the way the application itself functions in various embodiments when a level of detail is altered for a graphical region. Techniques described herein may apply to a web application, or to any other suitable computer application.
    Type: Grant
    Filed: December 10, 2015
    Date of Patent: July 9, 2019
    Assignee: salesforce.com, inc.
    Inventors: Shengze Yu, Shradha Kohli, Gautam Vasudev
  • Patent number: 10348671
    Abstract: A system and method and enables using a mobile number in conjunction with a non-telephony internet connected device. The system also facilitates SMS communication with Internet of Things devices and SMS communication in conjunction with over-the-top (OTT) services.
    Type: Grant
    Filed: July 11, 2017
    Date of Patent: July 9, 2019
    Assignee: SALESFORCE.COM, INC.
    Inventor: Eugene Lee Lew
  • Patent number: 10346763
    Abstract: Metadata and for posts originating from different social media sources and the posts themselves may be collected. A query specifying search criteria for the posts and filter criteria related to the metadata may be submitted to the system disclosed herein. The system may allow a client or tenant of the system to filter and search the metadata stored therein. The system may provide the posts in response to the query and permit a client or tenant to rapidly switch between social media sources and corresponding metadata types.
    Type: Grant
    Filed: October 3, 2014
    Date of Patent: July 9, 2019
    Assignee: SALESFORCE.COM, INC.
    Inventors: Derek Brian Hatchard, Jordan Patrick Lutes, Michael Gordon Luff
  • Patent number: 10346882
    Abstract: In an example, a processing system of a database system may be configured to, responsive to receiving a request originating from a member of a web clipping service, insert first data associated with a clip selection of the request into a personalized online space corresponding to the member and retain second data that is different than the first data into an aggregated pool of data associated with a plurality of members of the web clipping service. The processing device may be configured to pair an advertisement of a plurality of advertisements with a resource of a plurality of resources responsive to an analysis of the aggregated pool of data, and store an association between the advertisement of the pair and the resource of the pair in a memory device.
    Type: Grant
    Filed: December 2, 2014
    Date of Patent: July 9, 2019
    Assignee: SALESFORCE.COM, INC.
    Inventor: Gary Flake