Patents Assigned to Branch Metrics, Inc.
  • Patent number: 11392589
    Abstract: A method includes generating vertical-specific (VS) records from data sources. Each VS record includes a vertical identifier and a set of VS data fields. The method further comprises generating, for each VS record, an entity partial (EP) record that includes EP data fields populated from the VS data fields. The EP data fields include an entity ID that indicates an entity for the EP record, a source data field that identifies a data source, and an EP searchable data field including data that is descriptive of the entity. The method further comprises generating a search record for each entity ID by combining data from EP records. The data from the EP records is combined based on the source data included in the EP records. Each search record includes a search record searchable data field that includes data from one or more of the EP searchable data fields.
    Type: Grant
    Filed: June 12, 2020
    Date of Patent: July 19, 2022
    Assignee: Branch Metrics, Inc.
    Inventors: Eric Glover, Jonas Bauer, Rishi Khaitan, Matthew Dale, Dmitri Gaskin, Charles Gilliam, Pavan Achanta, Zachary Joel Rivest, Nicholas Chen
  • Patent number: 11341141
    Abstract: A method includes receiving a search query from a user device and generating an application name stream query and an original stream query based on the search query. The application name stream query indicates an application name. The original stream query includes the search query. The method includes generating stream metadata for each of the stream queries that indicates a type of the stream query. The application name stream query is an application name type. The original stream query is an original stream type. The method includes, for each stream query, identifying a set of search records and generating a stream result score for each set of search records based on the type of stream query used in identifying the set of search records. Additionally, the method includes selecting a set of search records based on the stream result scores and generating search results based on the selected search records.
    Type: Grant
    Filed: August 4, 2020
    Date of Patent: May 24, 2022
    Assignee: Branch Metrics, Inc.
    Inventors: Eric J. Glover, Charles Gilliam, Sarah Jane Burns
  • Publication number: 20220159022
    Abstract: A method includes acquiring first aggregate event data for a first sub-publisher. The first aggregate event data indicates aggregate user activity across a plurality of applications associated with the first sub-publisher. The method further includes acquiring second aggregate event data for a plurality of additional sub-publishers. The method further includes determining a plurality of anomaly metric values for the first sub-publisher based on the first aggregate event data and the second aggregate event data. The method further includes determining an anomaly function value for the first sub-publisher based on the anomaly metric values for the first sub-publisher. The anomaly function value indicates a likelihood that the first sub-publisher is associated with fraudulent user activity.
    Type: Application
    Filed: November 17, 2021
    Publication date: May 19, 2022
    Applicant: Branch Metrics, Inc.
    Inventors: Behdad Aghamirzaei, Thomas Stevenson, Bo-hyung Son
  • Publication number: 20220114187
    Abstract: A user device includes a processing unit that executes a search application. Executing the search application causes the processing unit to receive a user search query, send the user search query to a plurality of target applications, and receive a set of search results from each of the target applications. Each search result includes application state access data configured to access an application state of the target application associated with the search result. Executing the search application causes the processing unit to rank the search results, display the ranked search results, and detect user selection of one of the displayed search results. Additionally, executing the search application causes the processing unit to send the application state access data associated with the selected search result to the target application associated with the selected search result and display the application state accessed using the application state access data.
    Type: Application
    Filed: December 21, 2021
    Publication date: April 14, 2022
    Applicant: Branch Metrics, Inc.
    Inventors: Sojan Ponthanplavil Razallian, Eric J. Glover, Alexander Austin, Kan Yu
  • Publication number: 20220083686
    Abstract: A method includes sequentially generating fragment records for a user device according to fragment generation rules specifying that each subsequent fragment record be generated for user device events that occur within a defined period of time. Each fragment record includes event data for a series of user device events and includes a fragment ID generated using a non-deterministic ID generation algorithm. The method includes generating an ID-fragment record associating a chain ID with the fragment IDs. The chain ID is associated with device IDs that identify the user device. The method includes removing associations between the chain ID and fragment IDs according to removal parameters indicating that associations be removed based on an age of the fragment records. The method includes generating at least one of search results and advertisements for the user device based on the event data in the fragment records that remain associated with the chain ID.
    Type: Application
    Filed: August 18, 2021
    Publication date: March 17, 2022
    Applicant: Branch Metrics, Inc.
    Inventors: Jonas Bauer, Dmitri Gaskin, Eric J. Glover, Charles Gilliam
  • Publication number: 20220083610
    Abstract: A user device stores a local application including initial search records and an initial search function. Each initial search record includes an application link that opens an application page and search data that describes the application page. The initial search function is configured to select from the initial search records. The user device executes the local application to request and receive search update data from a remote system. The search update data includes updated search records and an updated search function. The user device updates the initial search records and the initial search function with the updated search records and the updated search function. The user device receives a search query from a requesting application, selects a set of updated search records based on the search query and the updated search function, and provides a response to the requesting application including application links from the set of updated search records.
    Type: Application
    Filed: August 15, 2021
    Publication date: March 17, 2022
    Applicant: Branch Metrics, Inc.
    Inventors: Charles Gilliam, Eric J. Glover, Jonas Bauer, Dmitri Gaskin, Nicholas Chen, Rishi Khaitan, Suvir Jain, Behdad Aghamirzaei, Robert Simon, Antonio Garcia-Martinez, You Yoon, Christopher Leung, Lila Strominger, Deepika Kumar, Akshay Mahajan, Jing Du, Benas Klastaitis, Fabiana Prabhakar
  • Patent number: 11216471
    Abstract: A user device includes a processing unit that executes a search application. Executing the search application causes the processing unit to receive a user search query, send the user search query to a plurality of target applications, and receive a set of search results from each of the target applications. Each search result includes application state access data configured to access an application state of the target application associated with the search result. Executing the search application causes the processing unit to rank the search results, display the ranked search results, and detect user selection of one of the displayed search results. Additionally, executing the search application causes the processing unit to send the application state access data associated with the selected search result to the target application associated with the selected search result and display the application state accessed using the application state access data.
    Type: Grant
    Filed: April 16, 2019
    Date of Patent: January 4, 2022
    Assignee: Branch Metrics, Inc.
    Inventors: Sojan Ponthanplavil Razallian, Eric J. Glover, Alexander Austin, Kan Yu
  • Publication number: 20210377351
    Abstract: A method includes receiving first event data from a device, the first event data including a first identifier (ID) that identifies the device, web browser metadata, and data associated with an application state. The method includes generating a first persona including the first ID and a first event identifier that identifies a first user action. The method includes receiving second event data, the second event data including device metadata and a second ID that identifies the device. The method includes generating a second persona based on the second event data, the second persona including the second ID and a second event identifier that identifies a second user action. Additionally, the method includes determining that the first and second personas are associated with the device based on matches between the browser metadata and device metadata and transmitting a response to the device configured to route the device to the application state.
    Type: Application
    Filed: August 15, 2021
    Publication date: December 2, 2021
    Applicant: Branch Metrics, Inc.
    Inventors: Sofus Attila Macskassy, Dmitri Ariel Gaskin, Eric J. Glover, Kan Yu, Wenchang Yan
  • Patent number: 11113315
    Abstract: A method includes acquiring application data for applications. The application data specifies an application category and includes application words that describe the application. The method includes determining, for each application word, a global fraction value that indicates the fraction of applications with the application word, a category fraction value that indicates the fraction of applications in the category with the application word, and a ratio value that indicates the ratio of the category fraction value to the global fraction value. The method includes classifying application words as categorical words when the ratio value is greater than a ratio threshold. The method includes identifying similar applications and setting categorical words as categorical search keywords for applications when the categorical words are in greater than a threshold number of similar applications.
    Type: Grant
    Filed: April 26, 2019
    Date of Patent: September 7, 2021
    Assignee: Branch Metrics, Inc.
    Inventors: Eric J. Glover, Jyotsna Jayaraman
  • Patent number: 11095732
    Abstract: A method includes receiving first event data from a device, the first event data including a first identifier (ID) that identifies the device, web browser metadata, and data associated with an application state. The method includes generating a first persona including the first ID and a first event identifier that identifies a first user action. The method includes receiving second event data, the second event data including device metadata and a second ID that identifies the device. The method includes generating a second persona based on the second event data, the second persona including the second ID and a second event identifier that identifies a second user action. Additionally, the method includes determining that the first and second personas are associated with the device based on matches between the browser metadata and device metadata and transmitting a response to the device configured to route the device to the application state.
    Type: Grant
    Filed: May 7, 2018
    Date of Patent: August 17, 2021
    Assignee: Branch Metrics, Inc.
    Inventors: Sofus Attila Macskassy, Dmitri Ariel Gaskin, Eric J. Glover, Kan Yu, Wenchang Yan
  • Publication number: 20210118008
    Abstract: A method includes receiving a first request from a user device. The first request includes a partial search query sent from the user device while a user is typing a search query. The method includes generating one or more suggested search queries based on the partial search query and selecting a query advertisement record based on the partial search query. The query advertisement record includes an advertised search query and a bid price associated with the advertised search query. The method further includes sending a first response to the user device that includes the advertised search query and the one or more suggested search queries. The method further includes receiving a second request that includes the advertised search query, generating search results based on the advertised search query included in the second request, and sending the search results to the user device.
    Type: Application
    Filed: October 19, 2020
    Publication date: April 22, 2021
    Applicant: Branch Metrics, Inc.
    Inventors: Eric J. Glover, Colin Nathan Behr, Antonio Garcia-Martinez
  • Publication number: 20210042315
    Abstract: A method includes receiving a search query from a user device and generating an application name stream query and an original stream query based on the search query. The application name stream query indicates an application name. The original stream query includes the search query. The method includes generating stream metadata for each of the stream queries that indicates a type of the stream query. The application name stream query is an application name type. The original stream query is an original stream type. The method includes, for each stream query, identifying a set of search records and generating a stream result score for each set of search records based on the type of stream query used in identifying the set of search records. Additionally, the method includes selecting a set of search records based on the stream result scores and generating search results based on the selected search records.
    Type: Application
    Filed: August 4, 2020
    Publication date: February 11, 2021
    Applicant: Branch Metrics, Inc.
    Inventors: Eric J. Glover, Charles Gilliam, Sarah Jane Burns
  • Publication number: 20200394194
    Abstract: A method includes generating vertical-specific (VS) records from data sources. Each VS record includes a vertical identifier and a set of VS data fields. The method further comprises generating, for each VS record, an entity partial (EP) record that includes EP data fields populated from the VS data fields. The EP data fields include an entity ID that indicates an entity for the EP record, a source data field that identifies a data source, and an EP searchable data field including data that is descriptive of the entity. The method further comprises generating a search record for each entity ID by combining data from EP records. The data from the EP records is combined based on the source data included in the EP records. Each search record includes a search record searchable data field that includes data from one or more of the EP searchable data fields.
    Type: Application
    Filed: June 12, 2020
    Publication date: December 17, 2020
    Applicant: Branch Metrics, Inc.
    Inventors: Eric Glover, Jonas Bauer, Rishi Khaitan, Matthew Dale, Dmitri Gaskin, Charles Gilliam, Pavan Achanta, Zachary Joel Rivest, Nicholas Chen
  • Publication number: 20200380203
    Abstract: A method includes receiving a request from a user device accessing a webpage, the request including a webpage uniform resource locator (URL) and a user device identifier. The method includes retrieving a list of events associated with the user device based on the device identifier. The method further includes retrieving sets of rules. Each set of rules indicates events and URLs that satisfy the set of rules. Each set of rules is associated with a template that includes link rendering data for rendering a link on the user device. The method includes identifying a set of rules that is satisfied by the received URL and events, transmitting link rendering data associated with the identified set of rules to the user device, and transmitting link routing data to the user device. The link routing data is configured to route the user device to an application state corresponding to the webpage.
    Type: Application
    Filed: August 20, 2020
    Publication date: December 3, 2020
    Applicant: Branch Metrics, Inc.
    Inventors: Alexander Austin, William Lindemann, Cheng-chao Yang, Eric J. Glover, Dmitri Gaskin, Kan Yu, Sofus Macskassy
  • Patent number: 10769364
    Abstract: A method includes receiving a request from a user device accessing a webpage, the request including a webpage uniform resource locator (URL) and a user device identifier. The method includes retrieving a list of events associated with the user device based on the device identifier. The method further includes retrieving sets of rules. Each set of rules indicates events and URLs that satisfy the set of rules. Each set of rules is associated with a template that includes link rendering data for rendering a link on the user device. The method includes identifying a set of rules that is satisfied by the received URL and events, transmitting link rendering data associated with the identified set of rules to the user device, and transmitting link routing data to the user device. The link routing data is configured to route the user device to an application state corresponding to the webpage.
    Type: Grant
    Filed: June 8, 2018
    Date of Patent: September 8, 2020
    Assignee: Branch Metrics, Inc.
    Inventors: Alexander Austin, William Lindemann, Cheng-chao Yang, Eric J. Glover, Dmitri Gaskin, Kan Yu, Sofus Macskassy
  • Patent number: 10667101
    Abstract: A contextual deep linking server receives a request associated with a valid contextual deep link from a client device, the contextual deep link associated with link data indicating a particular configuration of an application. The server also receives, after determining that the client device has stored a previously generated fingerprint, stored contextual information for the client device identified by a locally stored fingerprint that matches the previously generated fingerprint. The server then generates, after determining that the client device does not have the previously generated fingerprint, a unique fingerprint of the client device based on a plurality of characteristics of the client device and determining contextual information of the request based on a characteristic of the client device. The server also transmits a response to the client device that is selected based on the contextual information of the client device such that the response is operable on the client device.
    Type: Grant
    Filed: July 23, 2018
    Date of Patent: May 26, 2020
    Assignee: Branch Metrics, Inc.
    Inventors: Michael Charles Molinet, Maria Madalina Seghete, Alexander John Austin, Dmitri Gaskin
  • Patent number: 10616736
    Abstract: A contextual deep linking server receives a request associated with a valid contextual deep link from a client device, the contextual deep link associated with link data indicating a particular configuration of an application. The server also receives, after determining that the client device has stored a previously generated fingerprint, stored contextual information for the client device identified by a locally stored fingerprint that matches the previously generated fingerprint. The server then generates, after determining that the client device does not have the previously generated fingerprint, a unique fingerprint of the client device based on a plurality of characteristics of the client device and determining contextual information of the request based on a characteristic of the client device. The server also transmits a response to the client device that is selected based on the contextual information of the client device such that the response is operable on the client device.
    Type: Grant
    Filed: July 23, 2018
    Date of Patent: April 7, 2020
    Assignee: Branch Metrics, Inc.
    Inventors: Michael Charles Molinet, Maria Madalina Seghete, Alexander John Austin, Dmitri Gaskin
  • Publication number: 20200081930
    Abstract: A method includes storing entity records that include entity information that describes an entity and an application link that accesses an application state associated with the entity. The method includes receiving event data from user devices that indicates a number of times each of the application states was accessed by the user devices. The method includes determining a popularity score for each entity record based on the received event data, wherein the popularity score indicates the number of times the application state for the entity record was accessed relative to the number of times other application states were accessed. The method includes identifying a set of preliminary result entity records based on a search request, generating result scores for each of the preliminary result entity records based on the popularity scores, and generating search results that include application links from the preliminary result entity records.
    Type: Application
    Filed: September 5, 2019
    Publication date: March 12, 2020
    Applicant: Branch Metrics, Inc.
    Inventors: Zeesha Currimbhoy, Alexander Austin, Eric J. Glover, Jyotsna Jayaraman, Jonas Frederick Bauer, Kan Yu, Charles Currin Gilliam, Rishi Khaitan
  • Publication number: 20190332612
    Abstract: A method includes acquiring application data for applications. The application data specifies an application category and includes application words that describe the application. The method includes determining, for each application word, a global fraction value that indicates the fraction of applications with the application word, a category fraction value that indicates the fraction of applications in the category with the application word, and a ratio value that indicates the ratio of the category fraction value to the global fraction value. The method includes classifying application words as categorical words when the ratio value is greater than a ratio threshold. The method includes identifying similar applications and setting categorical words as categorical search keywords for applications when the categorical words are in greater than a threshold number of similar applications.
    Type: Application
    Filed: April 26, 2019
    Publication date: October 31, 2019
    Applicant: Branch Metrics, Inc.
    Inventors: Eric J. Glover, Jyotsna Jayaraman
  • Publication number: 20190317941
    Abstract: A user device includes a processing unit that executes a search application. Executing the search application causes the processing unit to receive a user search query, send the user search query to a plurality of target applications, and receive a set of search results from each of the target applications. Each search result includes application state access data configured to access an application state of the target application associated with the search result. Executing the search application causes the processing unit to rank the search results, display the ranked search results, and detect user selection of one of the displayed search results. Additionally, executing the search application causes the processing unit to send the application state access data associated with the selected search result to the target application associated with the selected search result and display the application state accessed using the application state access data.
    Type: Application
    Filed: April 16, 2019
    Publication date: October 17, 2019
    Applicant: Branch Metrics, Inc.
    Inventors: Sojan Ponthanplavil Razallian, Eric J. Glover, Alexander Austin, Kan Yu