US20220284065A1 - Dynamically creating custom hyperlinks for predefined search queries for multiple websites - Google Patents

Dynamically creating custom hyperlinks for predefined search queries for multiple websites Download PDF

Info

Publication number
US20220284065A1
US20220284065A1 US17/486,847 US202117486847A US2022284065A1 US 20220284065 A1 US20220284065 A1 US 20220284065A1 US 202117486847 A US202117486847 A US 202117486847A US 2022284065 A1 US2022284065 A1 US 2022284065A1
Authority
US
United States
Prior art keywords
user
received
value
name
website
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US17/486,847
Other versions
US12026206B2 (en
Inventor
Lawrence Robert Gentilello
Chen Atlas
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Optery Inc
Original Assignee
Optery Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Optery Inc filed Critical Optery Inc
Priority to US17/486,847 priority Critical patent/US12026206B2/en
Assigned to Optery, Inc. reassignment Optery, Inc. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ATLAS, CHEN, GENTILELLO, LAWRENCE ROBERT
Publication of US20220284065A1 publication Critical patent/US20220284065A1/en
Priority to US18/761,150 priority patent/US20240354351A1/en
Application granted granted Critical
Publication of US12026206B2 publication Critical patent/US12026206B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9558Details of hyperlinks; Management of linked annotations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking

Definitions

  • methods, systems, and apparatus include computer programs encoded on computer storage media provide for creating custom system generated hyperlinks for predefined search queries.
  • the system stores, in a data storage device, a set of custom URL templates, the custom URL template defining required data fields to concatenate as parameters for a website link.
  • the system obtains user information about a user where the information includes at least a first name and last name of the user.
  • the system retrieves from the data storage device the set of custom URL templates.
  • the system generates multiple website links based on the retrieved custom URL templates, where the generated website link includes a domain name of a website, and concatenated fields that are parameter specific to the website.
  • the system displays, via a user interface, a representation of the generated website links for selection by a user.
  • FIG. 1 illustrates a diagram of an example system utilized in creating custom system generated hyperlinks for predefined search queries.
  • FIG. 2A illustrates an example process of creating custom system generated hyperlinks for predefined search queries.
  • FIG. 2B illustrates an example process of creating custom system generated hyperlinks for predefined search queries.
  • FIG. 3 illustrates an example system flow diagram for creating custom system generated hyperlinks for predefined search queries.
  • FIG. 4 illustrates a sequence diagram for creating custom system generated hyperlinks for predefined search queries.
  • FIG. 5 illustrates an example of process of creating custom system generated hyperlinks for predefined search queries.
  • FIGS. 6A-6B illustrate example user interface according to embodiments of the present disclosure.
  • FIG. 7 illustrates an example user interface according to one embodiment of the present disclosure.
  • FIG. 8 illustrates an example user interface according to one embodiment of the present disclosure.
  • FIG. 9 illustrates an example user interface according to one embodiment of the present disclosure.
  • FIG. 10 illustrates an example user interface according to one embodiment of the present disclosure.
  • FIG. 11 illustrates an example user interface according to one embodiment of the present disclosure.
  • FIG. 12 illustrates a diagram of an exemplary environment in which some embodiments may operate.
  • steps of the exemplary methods set forth in this exemplary patent can be performed in different orders than the order presented in this specification. Furthermore, some steps of the exemplary methods may be performed in parallel rather than being performed sequentially. Also, the steps of the exemplary methods may be performed in a network environment in which some steps are performed by different computers in the networked environment.
  • a computer system may include a processor, a memory, and a non-transitory computer-readable medium.
  • the memory and non-transitory medium may store instructions for performing methods and steps described herein.
  • FIG. 1 illustrates a diagram of an example system 100 utilized in creating custom system generated hyperlinks for predefined search queries.
  • the system 100 may include a User Profile Module 104 , a Data Acquisition Module 106 , a URL Generation Module 108 , a Similar Names Generation Match Module 110 , Match Confidence Module 112 and a User Interface Generation Module 116 .
  • a system generated URL for a website is generally shown as reference 156 .
  • databases 120 , 122 , 124 are displayed separately, the databases and information maintained in a database 120 , 122 , 124 may be combined together or further separated in a manner that promotes retrieval and storage efficiency and/or data security.
  • the databases may include information related to user profile data 120 , custom URL template data 122 and similar names data 124 .
  • the User Profile Module 104 may perform functionality related to a storing and retrieving data to the user profile data database 120 .
  • the Data Acquisition Module 106 may perform functionality related to handling communication and receipt and transfer of data received by the system via user interfaces, and for obtaining data from websites.
  • the URL Generation Module 108 may perform functionality related to dynamically generating URL based on templates for a particular website with user data obtained from the user profile data database 120 , and/or from a user interface where data is input by a user.
  • the Similar Names Generation Module 110 may perform functionality related to generating similar names to a primary name.
  • the Match Confidence Module 112 may perform functionality related to determining a matched profile confidence score.
  • the User Interface Module 116 may perform functionality related to rendering and display of information as described herein.
  • the User Device 140 may have an Application Engine 142 and a User Interface 144 . It is understood that the system 100 may further include one or more additional modules for performing, or supporting performance of, any operation(s), step(s), act(s), instruction(s) and process(es) described herein.
  • the system 100 creates an account by receiving an input via a user interface from a user.
  • the user provides account information such as primary email and password, and submits user profile information such as first name, last name, current city, current state, age, and the profile information of relatives, friends, associates, and other people (Act 210 ).
  • the system 1100 provides navigation to a results dashboard (e.g., a user interface listing the dynamically generated URLs) (Act 212 ).
  • the system 100 then begins generating custom system generated hyperlinks (Act 214 ).
  • the system 100 retrieves user data from a user interface with parameters input by a user (Act 215 ). For example, the system retrieves user profile information, such as first name, last name, city, state and year of birth.
  • the system 100 retrieves user data from a user's stored profile (Act 216 ). For example, the system 100 retrieves user profile information from the database, such as first name, last name, city, state and year of birth.
  • the system 100 generates similar names via the Similar Names Module 110 (Act 218 ).
  • the system 100 includes a similar names database 124 which provides a mapping table for generating similar names for a given name (e.g., similar names for “Johnathan” would be “John”, “Jon”, Johnny”, “Jonathan”, similar names for “Christina” would be “Christy”, “Chris”, “Christy”, “Kristina”, “Kris”, and “Krissy”, and similar names for “Smith” would be “Smithe”, “Smyth”, and “Smythe”).
  • the system 100 may additional alternate names by comparing a user provided first name and evaluate the name against a similar names database 124 to identify other possible associated names.
  • the similar names database 124 may have records with a lookup name and names associated with the lookup name. For example, the system may query on the name “Johnathan” and return a results list of “John”, ‘Jon”, “Johnny”, “Jonathan”, etc. Based on the results list, the system may automatically associate the alternative first names for later use by the system when dynamically generating URLs as described herein.
  • the system 100 retrieves one or more custom Uniform Resource Locator (URL) templates from the URL Template Data database 122 (Act 220 ).
  • the database 122 includes records with parameters for required data fields that are combined to create a dynamic link for a particular website. These records serve as a template for the generation of the dynamic link to a website.
  • the records in the database 122 each have a unique custom URL template that is created according to the pattern utilized by the corresponding individual people search websites.
  • the system 100 maps retrieved user data and similar names to the custom URL templates (Act 222 ). For example, before generating a user interface for a user-facing Results Dashboard, the system 100 populates the retrieved user data and corresponding similar names from the database into each people search directory URL template to create custom URLs for locating that user's profile at each people search website.
  • the system 100 scans system-generated custom URL destinations and generates matched profile confidence scores (Act 224 ). For example, the system 100 scans the output response content of each system-generated custom URL destination and generates a matched profile confidence score. If the output response content indicates a “Profile Not Found” or “404 Page Not Found” response, the system 100 would generate a Matched profile confidence score of 0. For example, this situation may occur if the first name and last name of the person is not found on a respective website.
  • the system 100 may review the returned data from the website after sending the dynamically generated URL link, and then scan the returned data for the occurrence of text indicating a low confidence score (such as “Profile Not Found” or “404 Page Not Found, etc.) If the output response content contains a perfect match for a singular profile with the exact same first name, middle name, last name, current city, current state, and age for the user, that would produce a matched profile confidence score of 100.
  • a low confidence score such as “Profile Not Found” or “404 Page Not Found, etc.
  • the matched profile confidence score may be reduced from 100 as the number of profiles in the results at the people search websites increases, and as the number of exact match fails increases at the people search websites for the User Data (e.g. matches for first name, middle name, last name, current city, current state, age, etc.). For example, if a website returns a large number of matches (e.g., as would be expected when using a common name such as John Smith residing in a large population city such as New York, N.Y.), then the system 100 may determine a lower confidence score. The system 100 reduce the score based on the number of returned matches.
  • the system 100 caches the results of the customer URL destination scans (Act 226 ).
  • the system 100 stores and caches the results of the custom URL destination scans for display the next time the user requests the Results Dashboard. This functionality prevents the user from having to wait for the custom URL destination scans and the matched Profile Confidence Scoring processes to execute. Results are pre-processed and caches refreshed at regular intervals or whenever the user updates their profile information, whichever occurs first.
  • the system 100 displays, via user interface, dynamically generated custom URLs to a user based on a matched profile confidence score threshold (Act 228 ).
  • a matched profile confidence score threshold e.g., score greater than 60.
  • the system 100 displays cached custom URLs to user based on a matched profile confidence score threshold (Act 230 ). For example, the system generated cached custom URLs are presented, via a user interface, to the user as clickable hyperlinks for each people search website in the system database whose matched profile confidence score exceeds a chosen threshold (e.g., greater than 60).
  • a chosen threshold e.g. 60
  • the system 100 receives via a user interface a user input to select a particular link (act 232 ). For example, a user clicks View link from the Results Dashboard to view the profile at the people search website.
  • the system 100 redirects the user to the system generated URL (Act 234 ).
  • the system 100 sends the user to the system generated custom URL via a user interface, or externally to a web browser page and passes the system generated custom URL to the web browser.
  • Information for the third-party people search website is then presented to the user (Act 236 ).
  • the user may view personalized profile information at the linked-to third-party people search website via clickthrough to the custom deep link.
  • FIG. 3 illustrates an example system flow diagram 300 for creating custom system generated hyperlinks for predefined search queries.
  • a user initiates an application where the user can create account or login to an existing account ( 302 ).
  • the user enters into a user interface, the user's credentials, such as user name and password to gain access to the system ( 304 ).
  • a user needs to register ( 306 ) or create a new account, the user provides required information, including: First Name ⁇ first_name ⁇ , Last Name ⁇ last_name ⁇ Email Address ⁇ email ⁇ , and a password.
  • the system 100 provides functionality allowing a user to add or change additional profile information via user interface ( 308 ). After registration the user is prompted to add profile information including: Required: City ⁇ city ⁇ ⁇ , Required: State ⁇ state ⁇ state_full ⁇ , Required: Birth Year ⁇ birth_year ⁇ ⁇ , Optional: birth day, Optional: birth month, Optional: Middle Name ⁇ middle_name ⁇ .
  • the system 100 generates an application dashboard ( 310 ). After creating an account, logging in, or submitting a user profile search, the system 100 displays an application dashboard with a list of all people search websites in the system database and corresponding View links to custom system generated profile results pages at people search websites.
  • the system 101 provides functionality to manage a user profile ( 312 ).
  • a user may view and update profile information for themselves and others from the manage profiles page, which accepts the following information fields.
  • the system 100 may require certain input of various data fields and optionally require input.
  • the system 100 provides functionality where registered users may view and update their Account information related to system Plans & Billing, Notification Preferences, Login & Security, Account Deletion ( 314 ).
  • the system 100 provides functionality where registered users may also view, upgrade, or downgrade paid subscription plans ( 316 ).
  • the system 100 provides functionality where a user can search for profiles at people search directories by submitting pre-defined search queries ( 318 ), including the following fields:
  • the system 100 provides functionality to generate custom system generated hyperlinks (e.g., customized URL links) ( 320 ).
  • custom system generated hyperlinks e.g., customized URL links
  • the system 100 provides functionality to generate similar names ( 322 ).
  • the Similar names Generation Module 110 may utilize a mapping table to produce similar names for a given name, e.g., similar names for “Johnathan” would be “John”, “Jon”, Johnny”, “Jonathan”, similar names for “Christina” would be “Christy”, “Chris”, “Christy”, “Kristina”, “Kris”, and “Krissy”, and similar names for “Smith” would be “Smithe”, “Smyth”, and “Smythe”.
  • the system 100 includes functionality for management and storage of custom URL templates ( 324 ).
  • each people search website record in the system database has a unique URL template that may be customized according to the pattern utilized on each individual people search website.
  • the system 100 maps retrieved user data and similar names to custom URL templates ( 326 ). For example, prior to rendering the user-facing Results Dashboard, the System populates the retrieved user data and corresponding similar names from the database, or from the pre-defined search query, into each people search directory URL template to create custom URLs for locating that user's profile at each people search website.
  • the system 100 provides functionality to scan custom URL destinations and generate matched profile confidence scores ( 328 ). For example, the system 100 scans an output response content of each system generated custom URL destination and generates a matched profile confidence score, e.g. if the output response content indicates a “Profile Not Found” or “404 Page Not Found” response, that would produce a matched profile confidence score of 0, if the output response content contains a perfect match content for a singular profile with the exact same first name, middle name, last name, current city, current state, and age for the user, that would produce a matched profile confidence score of 100.
  • a matched profile confidence score e.g. if the output response content indicates a “Profile Not Found” or “404 Page Not Found” response, that would produce a matched profile confidence score of 0.
  • the matched profile confidence score is reduced from 100 as the quantity of profiles in the results at the people search websites increases, and as exact match fails increase at the people search websites for the user information (e.g., matches for first name, middle name, last name, current city, current state, age, etc.).
  • the system 100 provides functionality to store and cache custom URLs ( 330 ). For example, the system 100 stores and caches the results of the custom URL destination scans for immediate display the next time the user requests the Results Dashboard. This prevents the user from having to wait for the custom URL destination scans and the matched profile.
  • the system 100 performs a confidence scoring processes. The results are re-processed and the system caches are refreshed at regular intervals or whenever the user updates their profile information, whichever occurs first.
  • the system 100 provides functionality to display custom URLs based on the generated confidence score ( 332 ).
  • the system generated custom URLs are presented to the user as clickable hyperlinks for each people search website in the System database whose matched profile confidence score exceeds a chosen threshold (e.g., score greater than 60).
  • the system 100 provides functionality for a user to click and/or select a custom URL link ( 334 ). For example, a user may click on a link presented via a user interface, such as a Results Dashboard to view the profile at the people search website. The user is redirected to the custom URL ( 336 ).
  • the system 100 provides functionality to view a website where the custom URL has been used to access the website ( 338 ). For example, a user may view personalized profile information at the linked-to third-party people search website via a custom deep link.
  • FIG. 4 illustrates a sequence diagram for creating custom system generated hyperlinks for predefined search queries.
  • a user navigates to a results dashboard.
  • the system 100 begins generating custom system generated hyperlinks.
  • the system 100 accesses the custom URL templates stored in the URL Template data 122 database, and the custom URL templates are retrieved.
  • the system 100 obtains user data from either the user profile data database 120 , or from a user interface where a user has input various required data describing the user.
  • the system 100 then generates, via the similar names generation module, similar names to the names of the user.
  • the system 100 maps retrieved and/or the generated similar names to the retrieved custom URL templates.
  • the system 100 generates custom URLs and evaluates the system generated custom URLs and determines a matched profile confidence score.
  • the system 100 caches the results of the custom URLs.
  • the system 100 presents via a user interface those custom URLs where the matched profile confidence score is above a predetermined value.
  • the system 100 receives a selection of one or more of the custom URLs. When clicked on by the user, the system 100 directs the user to the website pertaining to the custom URL link.
  • FIG. 5 illustrates another example of process of creating personalized hyperlinks for predefined search queries.
  • the system 100 may store, in a data storage device, a set of custom URL templates, the URL templates defining required data fields to concatenate as parameters for a website link (act 510 ).
  • Each custom URL template may be composed of a string of text in which the parameters of the required data fields are concatenated as parameters to form a website link.
  • the custom URL templates may include a domain name (or an IP Address) of a website, one or more macros, one or more functions, and other static text.
  • Each URL template may include a single required data field.
  • each URL template may include a plurality of required data fields.
  • the required data fields that are included in each URL template may vary based on the URL template.
  • a first URL template may include a first required data field and a second URL template may include a second required data field different from the first required data field.
  • the syntax of each parameter concatenated into the URL template may vary based on the URL template. For example, if a required data field is a user's birthday (i.e., Dec. 14, 1975), then a parameter of the required data field of the user's birthday may be concatenated with a first syntax for a first URL template (i.e., “12141975”) or may be concatenated with a second syntax for a second URL template (i.e., “121475”).
  • the system 100 may obtain user information for a user where the information includes at least a first name and last name of the user (act 520 ).
  • the user information may be obtained from a local storage device.
  • the user information may be obtained directly from a user inputting the user information into an input device (e.g., a keyboard).
  • the system 100 may generate various user interfaces to receive data from a user about name and other information associated with the user, and the system may prompt the user to input and submit the user information.
  • the system 100 generates similar names to the obtained user information, for at least the first name (act 530 ).
  • the system 100 may use, for example, an input first name of the user and determine additional related first names (e.g., nick names or alternative spellings).
  • the system 100 may associate the alternative names with the user and then later use these alternative first names when generating a custom URL link. For example, if the obtained user information is a first name of “Phillip”, then similar names, such as “Phil” and “Philip” may be generated.
  • the system 100 may retrieve the from the data storage device the set of custom URL templates (act 540 ).
  • the URL templates may be retrieved in response to a user selection. Alternatively, the URL templates may automatically be retrieved once the user information is obtained.
  • the user may identify particular websites to retrieve URL templates that correspond to the particular websites identified by the user.
  • the system 100 may generate multiple website links based on the retrieved custom URL templates, where the website links each include a domain name (or an IP Address) of a website, and one or more concatenated fields generated by macros, functions, and/or static text that are parameter specific to the website (act 550 ).
  • the website links each include a domain name (or an IP Address) of a website, and one or more concatenated fields generated by macros, functions, and/or static text that are parameter specific to the website (act 550 ).
  • a first generated website link may include a domain name of a first website (e.g., “spokeo.com”) and a parameter concatenated field specific to the first website (e.g., a birthday of “12141975”)
  • a second generated website link may include a domain name of a second website (i.e., “mylife.com”) and a parameter concatenated field specific to the second website (i.e., a birthday of “121475”).
  • system 100 may determine a confidence score for the generated custom
  • the system 100 may generate a confidence score for the generated custom URL link by processing the link from the system to the respective website and then evaluating the return data from the website, such as indications that the user's name was not found, and/or based on the number of distinct user results listings returned by the website.
  • the system 100 displays via a user interface the generated website links for selection by a user (act 560 ).
  • the system 100 may display one or more website links based on the generated custom URL links.
  • the system 100 via the URL Generation Module 108 , may perform the URL generation process using macros for various fields.
  • Table 1 illustrates various macro functions that may performed on user data for a custom URL template.
  • State ⁇ state ⁇ Populates the two-character symbol for state from the user profile or search query, e.g.. NY, CA, TX, IL.
  • the system 100 may perform data transformation functions on the user data.
  • Table 2 illustrates various data transformation functions that may performed on the user data.
  • title Transform user data to title case characters (e.g., transforms “north Carolina” to “North Carolina”).
  • upper Transforms user data to upper case characters e.g., transforms “North Carolina” to “NORTH CAROLINA”).
  • trip_phone Removes non-numerical characters from a phone number (e.g., transforms “(646)-123-4567” to “6461234567”).
  • Table 3 illustrates examples of URL templates and dynamically custom generated URLs for a user for different websites.
  • the received query data or stored user profile data retrieved from the user profile data database 120 includes the First Name “Richard”, the Last Name “Smith”, and the Age “44” and the city “Chapel Hill”, and the State “NC”.
  • Custom URL Template System Generated Custom URL Link https://www.411.com/name/ ⁇ first_name ⁇ - https://www.411.com/name/Richard- ⁇ last_name ⁇ / ⁇ city
  • dash ⁇ - Smith/Chapel-Hill- ⁇ state ⁇ ?minAge ⁇ age
  • plus ⁇ C&city Chapel+Hill https://www.usphonebook.com/ ⁇ first_name ⁇ - https://www.usphonebook.com/Richar ⁇ last_name ⁇ /North%20Carolina/Chapel%20Hill
  • the system 100 via the URL Generation Module 108 generates URLs by using the information entered via the various user interfaces of the system.
  • a custom URL template may include the domain name (or an IP Address) of a web site and then include macros from Table 1 and functions from Table 2.
  • the system 100 may read a data field from the User Profile Data database 120 and map the data value of respective fields of the database to the macros identified in Table 1 with respect to macro requirements as defined for a particular custom URL template.
  • the system 100 uses the input user data and applies a respective field to a corresponding macro name(s) that are part of the custom URL template. For example, the user may input a first name and a last name via a user interface. The system 100 either may store the input information in a database, or temporarily use the information (such as through a search or query interface). The input first name would be mapped to the macro ⁇ first_name ⁇ and the input last name would be mapped to the macro ⁇ last_name ⁇ .
  • the system 100 may use functions to perform data transformation on a macro or combined macros. For example, the function ⁇ macro1 ⁇
  • FIG. 6A illustrates an example user interface 600 according to one embodiment of the present disclosure.
  • the system 100 generates the user interface 600 when a user creates an account.
  • the user profile module 104 obtains information about a user including a data value for each of the fields: first name, last name, email address and a password. In the example embodiment, each of the fields are required to be input by the user.
  • the system 100 stores the obtained data values in the user profile data database 120 .
  • the system 100 may use the information the information input by the user, and received via user interface 600 , for generating custom URL links.
  • FIG. 6B illustrates an example user interface 610 according to one embodiment of the present disclosure.
  • the system 100 generates the user interface 610 after the user has provided initial user information requested in the user interface 600 .
  • the user profile module 104 obtains additional information about a user including a data value for each of the following fields: city, state, birth year, birth day, birth month and middle name. In the example embodiment, the fields for birth day, birth month, and middle name or middle initial are optional fields.
  • the system 100 may use the information input by the user, and received via user interface 610 , for generating custom URL links.
  • FIG. 7 illustrates an example user interface 700 according to one embodiment of the present disclosure.
  • the system 100 generates the user interface 700 allowing a user to update or change profile information about the user.
  • the user may add or modify data values for their first name, middle name or initial, last name and birth date.
  • the system 100 may use the information input by the user, and received via user interface 700 , for generating custom URL links.
  • FIG. 8 illustrates an example user interface 800 according to one embodiment of the present disclosure.
  • the system 100 generates the user interface 800 allowing a user to update or change profile information about the user.
  • the user may add or modify information about relatives, significant others and/or people with whom the user has shared an address.
  • the user interface allows for the addition of multiple relatives or associates.
  • the system 100 would update the user profile data database 120 with the added relative and/or associates information.
  • the relative and/or associates information may include for example, the relatives first name and last name and current or past city and state.
  • the system 100 may use the information input by the user, and received via user interface 800 , for generating custom URL links.
  • FIG. 9 illustrates an example user interface 900 according to one embodiment of the present disclosure.
  • the system 100 generates the user interface 900 allowing a user to update or change profile information about the user.
  • the user may add or modify information about their address.
  • the user may add a current primary address and may add other addresses where the user has lived and/or has received mail.
  • the system 100 may use the information input by the user, and received via user interface 900 , for generating custom URL links.
  • FIG. 10 illustrates an example user interface 1000 according to one embodiment of the present disclosure.
  • the system 100 generates the user interface 100 allowing a user to update or change profile information about the user.
  • the user may add or modify additional information about the user.
  • the user may add their gender, other names or spellings of their name, email address and/or phone numbers.
  • the system 100 would update the user profile data database 120 with the added additional information.
  • the system 100 may use the information input by the user, and received via user interface 1000 , for generating custom URL links.
  • FIG. 11 illustrates an example user interface 1100 according to one embodiment of the present disclosure.
  • the system 100 generates the user interface 1100 allowing a user to view and select the dynamic URL links that were generated by the system 100 .
  • the user interface may include a section that displays a listing of various people search websites (e.g., Spokeo.com, MyLife.com, InstantCheckmate.com, BeenVerified.com, Intelius.com, Radaris.com, etc.).
  • the user interface 1100 may include a corresponding graphical affordance (such as an embedded link) for the respective websites where a user may select the graphical affordance which then directs the user to the particular website using the website link with concatenated fields that are germane to the particular website.
  • the system 100 allows for the input by a user, via a user interface, additional names of the user (e.g., FIG. 10 ). Also, the system 100 , via the similar names generation module 110 , may determine additional first names that are similar to the first name as input by the user. For each similar first name and the same last name associated with the user, the system 100 may generate a dynamic URL Link using a custom URL template for a respective website. For example, a user may have input a first name of “Richard”. The user may have optionally entered in an alternative first name “Rick” and/or the system 100 may have generated other similar first names for “Richard” such as “Rich”, “Rickie”, or “Richie”. When generating a dynamic URL for the user, the system 100 may create multiple dynamic URLs for a website. In the example table below, a dynamic URL is created for “Richard”, “Rick” and “Richie”.
  • Custom URL Template System Generated Custom URL Link https://www.411.com/name/ ⁇ first_name ⁇ - https://www.411.com/name/Richard- ⁇ last_name ⁇ / ⁇ city
  • dash ⁇ - Smith/Chapel-Hill- ⁇ state ⁇ ?minAge ⁇ age
  • dash ⁇ - Smith/Chapel-Hill- ⁇ state ⁇ ?minAge ⁇ age
  • the user interface 1100 may display a listing representing the system generated custom URLs.
  • the user interface may receive a user input indicating whether or not the link listed is associated with the user (e.g., receiving a selection via button “YES, THAT'S ME”, or “NO, THAT'S NOT ME”).
  • the system 100 may also generate dynamic URLs for identified individuals (e.g., FIG. 8 ).
  • the user interface 1100 may display a listing representing the generated URLs.
  • the user interface 1100 includes a section for displaying automatically generated links for relatives and associates. Similar to the generation for the primary user, the system 100 using the custom URL template may generate custom URL links for other identified individuals that are related.
  • the Data Acquisition Module 106 may be configured to periodically generate custom URL links for one or more users. For example, a user may be scheduled for a periodic update of information.
  • the system 100 may periodically generate custom URL links for the user, and then the system 100 may scan the content residing at the output of the custom URL links at their respective websites.
  • the system 100 may optionally then store some or part of the returned information received from the websites and processed by the system.
  • the system 100 may also perform match confidence scoring as described above, and store in a system database the confidence scores for the respective website in association with the displayed user information. The generated scoring results may then be accessed and presented to the user via a user interface of the system 100 .
  • FIG. 12 illustrates an example machine of a computer system within which a set of instructions, for causing the machine to perform any one or more of the methodologies discussed herein, may be executed.
  • the machine may be connected (e.g., networked) to other machines in a LAN, an intranet, an extranet, and/or the Internet.
  • the machine may operate in the capacity of a server or a client machine in client-server network environment, as a peer machine in a peer-to-peer (or distributed) network environment, or as a server or a client machine in a cloud computing infrastructure or environment.
  • the machine may be a personal computer (PC), a tablet PC, a set-top box (STB), a Personal Digital Assistant (PDA), a cellular telephone, a web appliance, a server, a network router, a switch or bridge, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine.
  • PC personal computer
  • PDA Personal Digital Assistant
  • STB set-top box
  • STB set-top box
  • a cellular telephone a web appliance
  • server a server
  • network router a network router
  • switch or bridge any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine.
  • machine shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.
  • the example computer system 1200 includes a processing device 1202 , a main memory 1204 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM) or Rambus DRAM (RDRAM), etc.), a static memory 1206 (e.g., flash memory, static random access memory (SRAM), etc.), and a data storage device 1218 , which communicate with each other via a bus 1230 .
  • main memory 1204 e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM) or Rambus DRAM (RDRAM), etc.
  • DRAM dynamic random access memory
  • SDRAM synchronous DRAM
  • RDRAM Rambus DRAM
  • static memory 1206 e.g., flash memory, static random access memory (SRAM), etc.
  • SRAM static random access memory
  • Processing device 1202 represents one or more general-purpose processing devices such as a microprocessor, a central processing unit, or the like. More particularly, the processing device may be a complex instruction set computing (CISC) microprocessor, reduced instruction set computing (RISC) microprocessor, very long instruction word (VLIW) microprocessor, or processor implementing other instruction sets, or processors implementing a combination of instruction sets. Processing device 1202 may also be one or more special-purpose processing devices such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), network processor, or the like. The processing device 1202 is configured to execute instructions 1226 for performing the operations and steps discussed herein.
  • CISC complex instruction set computing
  • RISC reduced instruction set computing
  • VLIW very long instruction word
  • ASIC application specific integrated circuit
  • FPGA field programmable gate array
  • DSP digital signal processor
  • network processor or the like.
  • the processing device 1202 is configured to execute instructions 1226 for performing the operations and steps
  • the computer system 1200 may further include a network interface device 1108 to communicate over the network 1220 .
  • the computer system 1200 also may include a 2video display unit 1210 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)), an alphanumeric input device 1212 (e.g., a keyboard), a cursor control device 1214 (e.g., a mouse), a graphics processing unit 1222 , a signal generation device 1216 (e.g., a speaker), graphics processing unit 1122 , video processing unit 1228 , and audio pro2cessing unit 1232 .
  • a 2video display unit 1210 e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)
  • an alphanumeric input device 1212 e.g., a keyboard
  • a cursor control device 1214 e.g., a mouse
  • graphics processing unit 1222 e.g., a
  • the data storage device 1218 may include a machine-readable storage medium 1224 (also known as a computer-readable medium) on which is stored one or more sets of instructions or software 1226 embodying any one or more of the methodologies or functions described herein.
  • the instructions 1226 may also reside, completely or at least partially, within the main memory 1204 and/or within the processing device 1202 during execution thereof by the computer system 1200 , the main memory 1204 and the processing device 1202 also constituting machine-readable storage media.
  • the present disclosure also relates to an apparatus for performing the operations herein.
  • This apparatus may be specially constructed for the intended purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer.
  • a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any type of media suitable for storing electronic instructions, each coupled to a computer system bus.
  • the present disclosure may be provided as a computer program product, or software, that may include a machine-readable medium having stored thereon instructions, which may be used to program a computer system (or other electronic devices) to perform a process according to the present disclosure.
  • a machine-readable medium includes any mechanism for storing information in a form readable by a machine (e.g., a computer).
  • a machine-readable (e.g., computer-readable) medium includes a machine (e.g., a computer) readable storage medium such as a read only memory (“ROM”), random access memory (“RAM”), magnetic disk storage media, optical storage media, flash memory devices, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media for creating custom system generated hyperlinks for predefined search queries at an external website. The system stores, in a data storage device, a set of custom URL templates, the custom URL templates defining required data fields to concatenate as parameters for a website link. The system obtains user information about a user where the information includes at least a first name and last name of the user. The system retrieves from the data storage device the set of custom URL templates. The system generates multiple website links based on the retrieved custom URL templates, where the generated website link includes a domain name of a website, and concatenated fields that are parameter specific to the website. The system then displays, via a user interface, a representation of the generated website links for selection by a user.

Description

    CROSS REFERENCE TO RELATED APPLICATIONS
  • This application is a continuation of U.S. patent application Ser. No. 17/194,181, filed on Mar. 5, 2021, the entirety of which is incorporated by reference.
  • BACKGROUND
  • Many websites collect and display personal information about individuals. Each of these people search websites require different fields to access data stored by the website. For example, some of the websites may only require a first and last name, others may require a first and last name and age, and others may require a first and last name, and a current city and state of residence to access the information stored by the website. Due to the significant number of the people search websites, a need exists to easily access each website in an efficient manner.
  • SUMMARY
  • Described herein is an innovative system and methods directed toward creating dynamic hyperlinks for passing parameters to a website. In one embodiment, methods, systems, and apparatus, include computer programs encoded on computer storage media provide for creating custom system generated hyperlinks for predefined search queries. The system stores, in a data storage device, a set of custom URL templates, the custom URL template defining required data fields to concatenate as parameters for a website link. The system obtains user information about a user where the information includes at least a first name and last name of the user. The system retrieves from the data storage device the set of custom URL templates. The system generates multiple website links based on the retrieved custom URL templates, where the generated website link includes a domain name of a website, and concatenated fields that are parameter specific to the website. The system then displays, via a user interface, a representation of the generated website links for selection by a user.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The present disclosure will become better understood from the detailed description and the drawings, wherein:
  • FIG. 1 illustrates a diagram of an example system utilized in creating custom system generated hyperlinks for predefined search queries.
  • FIG. 2A illustrates an example process of creating custom system generated hyperlinks for predefined search queries.
  • FIG. 2B illustrates an example process of creating custom system generated hyperlinks for predefined search queries.
  • FIG. 3 illustrates an example system flow diagram for creating custom system generated hyperlinks for predefined search queries.
  • FIG. 4 illustrates a sequence diagram for creating custom system generated hyperlinks for predefined search queries.
  • FIG. 5 illustrates an example of process of creating custom system generated hyperlinks for predefined search queries.
  • FIGS. 6A-6B illustrate example user interface according to embodiments of the present disclosure.
  • FIG. 7 illustrates an example user interface according to one embodiment of the present disclosure.
  • FIG. 8 illustrates an example user interface according to one embodiment of the present disclosure.
  • FIG. 9 illustrates an example user interface according to one embodiment of the present disclosure.
  • FIG. 10 illustrates an example user interface according to one embodiment of the present disclosure.
  • FIG. 11 illustrates an example user interface according to one embodiment of the present disclosure.
  • FIG. 12 illustrates a diagram of an exemplary environment in which some embodiments may operate.
  • DETAILED DESCRIPTION
  • In this specification, reference is made in detail to specific embodiments of the invention. Some of the embodiments or their aspects are illustrated in the drawings.
  • For clarity in explanation, the invention has been described with reference to specific embodiments, however it should be understood that the invention is not limited to the described embodiments. On the contrary, the invention covers alternatives, modifications, and equivalents as may be included within its scope as defined by any patent claims. The following embodiments of the invention are set forth without any loss of generality to, and without imposing limitations on, the claimed invention. In the following description, specific details are set forth in order to provide a thorough understanding of the present invention. The present invention may be practiced without some or all of these specific details. In addition, well known features may not have been described in detail to avoid unnecessarily obscuring the invention.
  • In addition, it should be understood that steps of the exemplary methods set forth in this exemplary patent can be performed in different orders than the order presented in this specification. Furthermore, some steps of the exemplary methods may be performed in parallel rather than being performed sequentially. Also, the steps of the exemplary methods may be performed in a network environment in which some steps are performed by different computers in the networked environment.
  • Some embodiments are implemented by a computer system. A computer system may include a processor, a memory, and a non-transitory computer-readable medium. The memory and non-transitory medium may store instructions for performing methods and steps described herein.
  • Example System Diagram
  • FIG. 1 illustrates a diagram of an example system 100 utilized in creating custom system generated hyperlinks for predefined search queries. The system 100 may include a User Profile Module 104, a Data Acquisition Module 106, a URL Generation Module 108, a Similar Names Generation Match Module 110, Match Confidence Module 112 and a User Interface Generation Module 116. A system generated URL for a website is generally shown as reference 156.
  • While the databases 120, 122, 124 are displayed separately, the databases and information maintained in a database 120, 122, 124 may be combined together or further separated in a manner that promotes retrieval and storage efficiency and/or data security. The databases may include information related to user profile data 120, custom URL template data 122 and similar names data 124.
  • The User Profile Module 104 may perform functionality related to a storing and retrieving data to the user profile data database 120.
  • The Data Acquisition Module 106 may perform functionality related to handling communication and receipt and transfer of data received by the system via user interfaces, and for obtaining data from websites.
  • The URL Generation Module 108 may perform functionality related to dynamically generating URL based on templates for a particular website with user data obtained from the user profile data database 120, and/or from a user interface where data is input by a user.
  • The Similar Names Generation Module 110 may perform functionality related to generating similar names to a primary name.
  • The Match Confidence Module 112 may perform functionality related to determining a matched profile confidence score.
  • The User Interface Module 116 may perform functionality related to rendering and display of information as described herein.
  • The User Device 140 may have an Application Engine 142 and a User Interface 144. It is understood that the system 100 may further include one or more additional modules for performing, or supporting performance of, any operation(s), step(s), act(s), instruction(s) and process(es) described herein.
  • Example Process
  • Referring now to FIGS. 2A and 2B, the figures illustrate an example process for generating custom system generated hyperlinks. The system 100 creates an account by receiving an input via a user interface from a user. The user provides account information such as primary email and password, and submits user profile information such as first name, last name, current city, current state, age, and the profile information of relatives, friends, associates, and other people (Act 210).
  • The system 1100 provides navigation to a results dashboard (e.g., a user interface listing the dynamically generated URLs) (Act 212). The system 100 then begins generating custom system generated hyperlinks (Act 214).
  • The system 100 retrieves user data from a user interface with parameters input by a user (Act 215). For example, the system retrieves user profile information, such as first name, last name, city, state and year of birth.
  • The system 100 retrieves user data from a user's stored profile (Act 216). For example, the system 100 retrieves user profile information from the database, such as first name, last name, city, state and year of birth.
  • The system 100 generates similar names via the Similar Names Module 110 (Act 218). For example, the system 100 includes a similar names database 124 which provides a mapping table for generating similar names for a given name (e.g., similar names for “Johnathan” would be “John”, “Jon”, Johnny”, “Jonathan”, similar names for “Christina” would be “Christy”, “Chris”, “Christy”, “Kristina”, “Kris”, and “Krissy”, and similar names for “Smith” would be “Smithe”, “Smyth”, and “Smythe”). For example, the system 100 may additional alternate names by comparing a user provided first name and evaluate the name against a similar names database 124 to identify other possible associated names. The similar names database 124 may have records with a lookup name and names associated with the lookup name. For example, the system may query on the name “Johnathan” and return a results list of “John”, ‘Jon”, “Johnny”, “Jonathan”, etc. Based on the results list, the system may automatically associate the alternative first names for later use by the system when dynamically generating URLs as described herein.
  • The system 100 retrieves one or more custom Uniform Resource Locator (URL) templates from the URL Template Data database 122 (Act 220). The database 122 includes records with parameters for required data fields that are combined to create a dynamic link for a particular website. These records serve as a template for the generation of the dynamic link to a website. The records in the database 122 each have a unique custom URL template that is created according to the pattern utilized by the corresponding individual people search websites.
  • The system 100 maps retrieved user data and similar names to the custom URL templates (Act 222). For example, before generating a user interface for a user-facing Results Dashboard, the system 100 populates the retrieved user data and corresponding similar names from the database into each people search directory URL template to create custom URLs for locating that user's profile at each people search website.
  • The system 100 scans system-generated custom URL destinations and generates matched profile confidence scores (Act 224). For example, the system 100 scans the output response content of each system-generated custom URL destination and generates a matched profile confidence score. If the output response content indicates a “Profile Not Found” or “404 Page Not Found” response, the system 100 would generate a Matched profile confidence score of 0. For example, this situation may occur if the first name and last name of the person is not found on a respective website. The system 100 may review the returned data from the website after sending the dynamically generated URL link, and then scan the returned data for the occurrence of text indicating a low confidence score (such as “Profile Not Found” or “404 Page Not Found, etc.) If the output response content contains a perfect match for a singular profile with the exact same first name, middle name, last name, current city, current state, and age for the user, that would produce a matched profile confidence score of 100.
  • The matched profile confidence score may be reduced from 100 as the number of profiles in the results at the people search websites increases, and as the number of exact match fails increases at the people search websites for the User Data (e.g. matches for first name, middle name, last name, current city, current state, age, etc.). For example, if a website returns a large number of matches (e.g., as would be expected when using a common name such as John Smith residing in a large population city such as New York, N.Y.), then the system 100 may determine a lower confidence score. The system 100 reduce the score based on the number of returned matches.
  • The system 100 caches the results of the customer URL destination scans (Act 226). The system 100 stores and caches the results of the custom URL destination scans for display the next time the user requests the Results Dashboard. This functionality prevents the user from having to wait for the custom URL destination scans and the matched Profile Confidence Scoring processes to execute. Results are pre-processed and caches refreshed at regular intervals or whenever the user updates their profile information, whichever occurs first.
  • The system 100 displays, via user interface, dynamically generated custom URLs to a user based on a matched profile confidence score threshold (Act 228). For example, the system 100 generated custom URLs are presented to the user as clickable hyperlinks for each people search website in the system database whose matched profile confidence score exceeds a chosen threshold (e.g., score greater than 60).
  • The system 100 displays cached custom URLs to user based on a matched profile confidence score threshold (Act 230). For example, the system generated cached custom URLs are presented, via a user interface, to the user as clickable hyperlinks for each people search website in the system database whose matched profile confidence score exceeds a chosen threshold (e.g., greater than 60).
  • The system 100 receives via a user interface a user input to select a particular link (act 232). For example, a user clicks View link from the Results Dashboard to view the profile at the people search website.
  • The system 100 redirects the user to the system generated URL (Act 234). For example, the system 100 sends the user to the system generated custom URL via a user interface, or externally to a web browser page and passes the system generated custom URL to the web browser.
  • Information for the third-party people search website is then presented to the user (Act 236). For example, the user may view personalized profile information at the linked-to third-party people search website via clickthrough to the custom deep link.
  • Example System Flow
  • FIG. 3 illustrates an example system flow diagram 300 for creating custom system generated hyperlinks for predefined search queries. A user initiates an application where the user can create account or login to an existing account (302). The user enters into a user interface, the user's credentials, such as user name and password to gain access to the system (304).
  • If a user needs to register (306) or create a new account, the user provides required information, including: First Name {{first_name}}, Last Name {{last_name}} Email Address {{email}}, and a password.
  • The system 100 provides functionality allowing a user to add or change additional profile information via user interface (308). After registration the user is prompted to add profile information including: Required: City {{city} }, Required: State {{state}}{{state_full}}, Required: Birth Year {{birth_year} }, Optional: Birth day, Optional: Birth month, Optional: Middle Name {{middle_name}}.
  • The system 100 generates an application dashboard (310). After creating an account, logging in, or submitting a user profile search, the system 100 displays an application dashboard with a list of all people search websites in the system database and corresponding View links to custom system generated profile results pages at people search websites.
  • The system 101 provides functionality to manage a user profile (312). A user may view and update profile information for themselves and others from the manage profiles page, which accepts the following information fields. In one embodiment, the system 100 may require certain input of various data fields and optionally require input.
      • A. Basic User Information (Required and Optional):
        • Required: First Name {{first_name}}
        • Required: Last Name {{last_name} }
        • Optional: Middle Name {{middle_name}}−Required: Birth Year {{birth_year}}
        • Optional: Birth day
        • Optional: Birth month
        • Optional: Date of birth {{dob} }
      • B. Additional Info (Optional):
        • Gender
        • Nickname/Other names {{first_name}} {{last_name}} {{middle_name}}
        • Additional Emails {{email}}
        • Phone numbers {{phone}}
      • C. Addresses:
        • Current Primary Address (Required)
          • Optional: Address 1
          • Optional: Address 2
          • Required: City {{city}}
          • Required: State {{state}} {{state_full}}
          • Optional: Zip {{zipcode}}
        • Additional addresses (Optional)
          • Address 1
          • Address 2
        • City {{city}}
        • State {{state}} {{state_full}}
        • Zip {{zipcode}}
      • D. Relatives and Associates Names
        • (Optional): —First Name {{first_name}}
        • Middle Name {{middle_name}}
        • Last Name {{last_name}}
  • The system 100 provides functionality where registered users may view and update their Account information related to system Plans & Billing, Notification Preferences, Login & Security, Account Deletion (314).
  • The system 100 provides functionality where registered users may also view, upgrade, or downgrade paid subscription plans (316).
  • The system 100 provides functionality where a user can search for profiles at people search directories by submitting pre-defined search queries (318), including the following fields:
      • First Name {{first_name} }
      • Last Name {{last_name}}
      • Email {{email}}
      • City {{city} }
      • State {{state} } {{state_full}}
      • Birth Year {{birth_year}}
      • Birth day
      • Birth month
      • Date of birth {{dob} }
      • Middle Name {{middle_name} }
  • The system 100 provides functionality to generate custom system generated hyperlinks (e.g., customized URL links) (320).
  • The system 100 provides functionality to generate similar names (322). For example, the Similar names Generation Module 110 may utilize a mapping table to produce similar names for a given name, e.g., similar names for “Johnathan” would be “John”, “Jon”, Johnny”, “Jonathan”, similar names for “Christina” would be “Christy”, “Chris”, “Christy”, “Kristina”, “Kris”, and “Krissy”, and similar names for “Smith” would be “Smithe”, “Smyth”, and “Smythe”.
  • The system 100 includes functionality for management and storage of custom URL templates (324). For example, each people search website record in the system database has a unique URL template that may be customized according to the pattern utilized on each individual people search website.
  • The system 100 maps retrieved user data and similar names to custom URL templates (326). For example, prior to rendering the user-facing Results Dashboard, the System populates the retrieved user data and corresponding similar names from the database, or from the pre-defined search query, into each people search directory URL template to create custom URLs for locating that user's profile at each people search website.
  • The system 100 provides functionality to scan custom URL destinations and generate matched profile confidence scores (328). For example, the system 100 scans an output response content of each system generated custom URL destination and generates a matched profile confidence score, e.g. if the output response content indicates a “Profile Not Found” or “404 Page Not Found” response, that would produce a matched profile confidence score of 0, if the output response content contains a perfect match content for a singular profile with the exact same first name, middle name, last name, current city, current state, and age for the user, that would produce a matched profile confidence score of 100. The matched profile confidence score is reduced from 100 as the quantity of profiles in the results at the people search websites increases, and as exact match fails increase at the people search websites for the user information (e.g., matches for first name, middle name, last name, current city, current state, age, etc.).
  • The system 100 provides functionality to store and cache custom URLs (330). For example, the system 100 stores and caches the results of the custom URL destination scans for immediate display the next time the user requests the Results Dashboard. This prevents the user from having to wait for the custom URL destination scans and the matched profile. The system 100 performs a confidence scoring processes. The results are re-processed and the system caches are refreshed at regular intervals or whenever the user updates their profile information, whichever occurs first.
  • The system 100 provides functionality to display custom URLs based on the generated confidence score (332). The system generated custom URLs are presented to the user as clickable hyperlinks for each people search website in the System database whose matched profile confidence score exceeds a chosen threshold (e.g., score greater than 60).
  • The system 100 provides functionality for a user to click and/or select a custom URL link (334). For example, a user may click on a link presented via a user interface, such as a Results Dashboard to view the profile at the people search website. The user is redirected to the custom URL (336).
  • The system 100 provides functionality to view a website where the custom URL has been used to access the website (338). For example, a user may view personalized profile information at the linked-to third-party people search website via a custom deep link.
  • Example Sequence Diagram
  • FIG. 4 illustrates a sequence diagram for creating custom system generated hyperlinks for predefined search queries. As illustrated in the diagram, a user navigates to a results dashboard. The system 100 begins generating custom system generated hyperlinks. The system 100 accesses the custom URL templates stored in the URL Template data 122 database, and the custom URL templates are retrieved. The system 100 obtains user data from either the user profile data database 120, or from a user interface where a user has input various required data describing the user. The system 100 then generates, via the similar names generation module, similar names to the names of the user. The system 100 maps retrieved and/or the generated similar names to the retrieved custom URL templates. The system 100 generates custom URLs and evaluates the system generated custom URLs and determines a matched profile confidence score. The system 100 caches the results of the custom URLs. The system 100 presents via a user interface those custom URLs where the matched profile confidence score is above a predetermined value. The system 100 receives a selection of one or more of the custom URLs. When clicked on by the user, the system 100 directs the user to the website pertaining to the custom URL link.
  • Example Process
  • FIG. 5 illustrates another example of process of creating personalized hyperlinks for predefined search queries.
  • The system 100 may store, in a data storage device, a set of custom URL templates, the URL templates defining required data fields to concatenate as parameters for a website link (act 510). Each custom URL template may be composed of a string of text in which the parameters of the required data fields are concatenated as parameters to form a website link. For example, the custom URL templates may include a domain name (or an IP Address) of a website, one or more macros, one or more functions, and other static text. Each URL template may include a single required data field. Alternatively, each URL template may include a plurality of required data fields. In addition, the required data fields that are included in each URL template may vary based on the URL template. For example, a first URL template may include a first required data field and a second URL template may include a second required data field different from the first required data field. In addition, the syntax of each parameter concatenated into the URL template may vary based on the URL template. For example, if a required data field is a user's birthday (i.e., Dec. 14, 1975), then a parameter of the required data field of the user's birthday may be concatenated with a first syntax for a first URL template (i.e., “12141975”) or may be concatenated with a second syntax for a second URL template (i.e., “121475”).
  • The system 100 may obtain user information for a user where the information includes at least a first name and last name of the user (act 520). The user information may be obtained from a local storage device. Alternatively, the user information may be obtained directly from a user inputting the user information into an input device (e.g., a keyboard). For example, the system 100 may generate various user interfaces to receive data from a user about name and other information associated with the user, and the system may prompt the user to input and submit the user information.
  • Optionally, the system 100 generates similar names to the obtained user information, for at least the first name (act 530). The system 100 may use, for example, an input first name of the user and determine additional related first names (e.g., nick names or alternative spellings). The system 100 may associate the alternative names with the user and then later use these alternative first names when generating a custom URL link. For example, if the obtained user information is a first name of “Phillip”, then similar names, such as “Phil” and “Philip” may be generated.
  • The system 100 may retrieve the from the data storage device the set of custom URL templates (act 540). The URL templates may be retrieved in response to a user selection. Alternatively, the URL templates may automatically be retrieved once the user information is obtained. In addition, the user may identify particular websites to retrieve URL templates that correspond to the particular websites identified by the user.
  • The system 100 may generate multiple website links based on the retrieved custom URL templates, where the website links each include a domain name (or an IP Address) of a website, and one or more concatenated fields generated by macros, functions, and/or static text that are parameter specific to the website (act 550). For example, a first generated website link may include a domain name of a first website (e.g., “spokeo.com”) and a parameter concatenated field specific to the first website (e.g., a birthday of “12141975”), and a second generated website link may include a domain name of a second website (i.e., “mylife.com”) and a parameter concatenated field specific to the second website (i.e., a birthday of “121475”).
  • Optionally, the system 100 may determine a confidence score for the generated custom
  • URL links. The system 100 may generate a confidence score for the generated custom URL link by processing the link from the system to the respective website and then evaluating the return data from the website, such as indications that the user's name was not found, and/or based on the number of distinct user results listings returned by the website.
  • The system 100 displays via a user interface the generated website links for selection by a user (act 560). The system 100 may display one or more website links based on the generated custom URL links.
  • Example Custom URL Template
  • The system 100, via the URL Generation Module 108, may perform the URL generation process using macros for various fields. Table 1 illustrates various macro functions that may performed on user data for a custom URL template.
  • TABLE 1
    Macro Functions
    Field Macro Description
    First {{first_name}} Populates the first name from the user profile or search
    Name query.
    Last {{last_name}} Populates the last name from the user profile or search query.
    Name
    Middle {{middle_name}} Populates the middle name from the user profile or search
    Name query.
    Middle {{middle_initial}} Populates the middle initial from the user profile or search
    Initial query.
    State {{state}} Populates the two-character symbol for state from the user
    profile or search query, e.g.. NY, CA, TX, IL.
    Full State {{state_full}} Populates full state name from the user profile or search
    Name query, e.g., New York, California, Texas, Illinois.
    City {{city}} Populates city from the user profile or search query.
    Zip Code {{zipcode}} Populates zip code from the user profile or search query.
    Age {{age}} Populates age from the user profile or search query. The age
    is calculated using the current date and the birth date. If only
    the birth year is provided, an approximate age is calculated
    by subtracting the birth year from the current year.
    Birth {{birth_year}} Populates birth year from the user profile or search query.
    Year
    Email {{email}} Populates the primary email address from the user profile or
    search query.
    Email {{email_optout}} Populates a System-generated proprietary email address that
    Opt-out is used for submitting opt out requests and creating accounts
    on behalf of users at third party data brokers.
    Phone {{phone}} Populates phone number from the user profile or search
    Number query.
  • The system 100 may perform data transformation functions on the user data. Table 2 illustrates various data transformation functions that may performed on the user data.
  • TABLE 2
    Example Data Transformation Functions
    Function Description
    |plus Replaces spaces in user data with the plus symbol (e.g., transforms “North
    Carolina” to “North+Carolina”).
    |dash Replaces spaces in user data with the dash symbol (e.g., transforms “North
    Carolina” to “North-Carolina”).
    |underscore Replaces spaces in user data with the underscore symbol (e.g., transforms
    “North Carolina” to “North_Carolina”).
    |htmlspace Replaces spaces in user data with the URL encoded space character (e.g.,
    transforms “North Carolina” to “North %20Carolina”).
    |lower Transforms user data to lower case characters (e.g., transforms “North
    Carolina” to “north Carolina”).
    |title Transforms user data to title case characters (e.g., transforms “north
    Carolina” to “North Carolina”).
    |upper Transforms user data to upper case characters (e.g., transforms “North
    Carolina” to “NORTH CAROLINA”).
    |strip_phone Removes non-numerical characters from a phone number (e.g., transforms
    “(646)-123-4567” to “6461234567”).
  • Table 3 illustrates examples of URL templates and dynamically custom generated URLs for a user for different websites. In the examples, the received query data or stored user profile data retrieved from the user profile data database 120 includes the First Name “Richard”, the Last Name “Smith”, and the Age “44” and the city “Chapel Hill”, and the State “NC”.
  • TABLE 3
    Example Custom URL Templates and Generated URLs
    Custom URL Template System Generated Custom URL Link
    https://www.411.com/name/{{first_name}}- https://www.411.com/name/Richard-
    {{last_name}}/{{city|dash}}- Smith/Chapel-Hill-
    {{state}}?minAge={{age|add:- NC?minAge=42&maxAge=46
    2}}&maxAge={{age|add:2}}
    https://veripages.com/profile/search?fname={{first_n https://veripages.com/profile/search?fn
    ame)}&lname={{last_name}}&state={{state}}&cit ame=Richard&lname=Smith&state=N
    y={{city|plus}} C&city=Chapel+Hill
    https://www.usphonebook.com/}{first_name}}- https://www.usphonebook.com/Richar
    {{last_name}}/North%20Carolina/Chapel%20Hill d-
    Smith/North%20Carolina/Chapel%20
    Hill
    https://www.intelius.com/results/?firstName={{first https://www.intelius.com/results/?first
    name}}&middleInitial={{middle_initial}}&lastNam Name=Richard&middleInitial=S&last
    e={{last_name}}&city={{city|plus}}&state={{state Name=Smith&city=Chapel+Hill&state
    }}&age={{age}} =NC&age=44
    https://www.beenverified.com/app/search/person?ag https://www.beenverified.com/app/sear
    e={{age}}&city={{city}}&fname={{first_name}}& ch/person?age=44&city=Chapel%20Hi
    ln={{last_name}}&mn={{middle_initial}}&state={ ll&fname=Richard&ln=Smith&mn=S
    {state}} &state=NC
  • The system 100 via the URL Generation Module 108 generates URLs by using the information entered via the various user interfaces of the system. A custom URL template may include the domain name (or an IP Address) of a web site and then include macros from Table 1 and functions from Table 2. For example, the system 100 may read a data field from the User Profile Data database 120 and map the data value of respective fields of the database to the macros identified in Table 1 with respect to macro requirements as defined for a particular custom URL template.
  • When generating a custom URL link, the system 100 uses the input user data and applies a respective field to a corresponding macro name(s) that are part of the custom URL template. For example, the user may input a first name and a last name via a user interface. The system 100 either may store the input information in a database, or temporarily use the information (such as through a search or query interface). The input first name would be mapped to the macro {{first_name}} and the input last name would be mapped to the macro {{last_name}}.
  • The system 100 may use functions to perform data transformation on a macro or combined macros. For example, the function {{macro1}}|plus{{macro2}} would add a “+” symbol between the fields represented by {{macro1}} and {{macro2}} to generate a concatenated text string. Additionally, the URL template may include other static text in the template that may be needed for generating the custom URL.
  • FIG. 6A illustrates an example user interface 600 according to one embodiment of the present disclosure. The system 100 generates the user interface 600 when a user creates an account. The user profile module 104 obtains information about a user including a data value for each of the fields: first name, last name, email address and a password. In the example embodiment, each of the fields are required to be input by the user. The system 100 stores the obtained data values in the user profile data database 120. The system 100 may use the information the information input by the user, and received via user interface 600, for generating custom URL links.
  • FIG. 6B illustrates an example user interface 610 according to one embodiment of the present disclosure. The system 100 generates the user interface 610 after the user has provided initial user information requested in the user interface 600. The user profile module 104 obtains additional information about a user including a data value for each of the following fields: city, state, birth year, birth day, birth month and middle name. In the example embodiment, the fields for birth day, birth month, and middle name or middle initial are optional fields. The system 100 may use the information input by the user, and received via user interface 610, for generating custom URL links.
  • FIG. 7 illustrates an example user interface 700 according to one embodiment of the present disclosure. The system 100 generates the user interface 700 allowing a user to update or change profile information about the user. In this example, the user may add or modify data values for their first name, middle name or initial, last name and birth date. The system 100 may use the information input by the user, and received via user interface 700, for generating custom URL links.
  • FIG. 8 illustrates an example user interface 800 according to one embodiment of the present disclosure. The system 100 generates the user interface 800 allowing a user to update or change profile information about the user. In this example, the user may add or modify information about relatives, significant others and/or people with whom the user has shared an address. The user interface allows for the addition of multiple relatives or associates. The system 100 would update the user profile data database 120 with the added relative and/or associates information. The relative and/or associates information may include for example, the relatives first name and last name and current or past city and state. The system 100 may use the information input by the user, and received via user interface 800, for generating custom URL links.
  • FIG. 9 illustrates an example user interface 900 according to one embodiment of the present disclosure. The system 100 generates the user interface 900 allowing a user to update or change profile information about the user. In this example, the user may add or modify information about their address. The user may add a current primary address and may add other addresses where the user has lived and/or has received mail. The system 100 may use the information input by the user, and received via user interface 900, for generating custom URL links.
  • FIG. 10 illustrates an example user interface 1000 according to one embodiment of the present disclosure. The system 100 generates the user interface 100 allowing a user to update or change profile information about the user. In this example, the user may add or modify additional information about the user. For example, the user may add their gender, other names or spellings of their name, email address and/or phone numbers. The system 100 would update the user profile data database 120 with the added additional information. The system 100 may use the information input by the user, and received via user interface 1000, for generating custom URL links.
  • FIG. 11 illustrates an example user interface 1100 according to one embodiment of the present disclosure. The system 100 generates the user interface 1100 allowing a user to view and select the dynamic URL links that were generated by the system 100. For example, the user interface may include a section that displays a listing of various people search websites (e.g., Spokeo.com, MyLife.com, InstantCheckmate.com, BeenVerified.com, Intelius.com, Radaris.com, etc.). The user interface 1100 may include a corresponding graphical affordance (such as an embedded link) for the respective websites where a user may select the graphical affordance which then directs the user to the particular website using the website link with concatenated fields that are germane to the particular website.
  • As described above, the system 100 allows for the input by a user, via a user interface, additional names of the user (e.g., FIG. 10). Also, the system 100, via the similar names generation module 110, may determine additional first names that are similar to the first name as input by the user. For each similar first name and the same last name associated with the user, the system 100 may generate a dynamic URL Link using a custom URL template for a respective website. For example, a user may have input a first name of “Richard”. The user may have optionally entered in an alternative first name “Rick” and/or the system 100 may have generated other similar first names for “Richard” such as “Rich”, “Rickie”, or “Richie”. When generating a dynamic URL for the user, the system 100 may create multiple dynamic URLs for a website. In the example table below, a dynamic URL is created for “Richard”, “Rick” and “Richie”.
  • TABLE 4
    Example Custom URL Templates and Generated URLs (Similar Names)
    Custom URL Template System Generated Custom URL Link
    https://www.411.com/name/{{first_name}}- https://www.411.com/name/Richard-
    {{last_name}}/{{city|dash}}- Smith/Chapel-Hill-
    {{state}}?minAge={{age|add:- NC?minAge=42&maxAge=46
    2}}&maxAge={{age|add:2}}
    https://www.411.com/name/{{first_name}}- https://www.411.com/name/Rick-
    {{last_name}}/{{city|dash}}- Smith/Chapel-Hill-
    {{state}}?minAge={{age|add:- NC?minAge=42&maxAge=46
    2}}&maxAge={{age|add:2}}
    https://www.411.com/name/{{first_name}}- https://www.411.com/name/Richie-
    {{last_name}}/{{city|dash}}- Smith/Chapel-Hill-
    {{state}}?minAge={{age|add:- NC?minAge=42&maxAge=46
    2}}&maxAge={{age|add:2}}
  • The user interface 1100 may display a listing representing the system generated custom URLs. The user interface may receive a user input indicating whether or not the link listed is associated with the user (e.g., receiving a selection via button “YES, THAT'S ME”, or “NO, THAT'S NOT ME”).
  • The system 100 may also generate dynamic URLs for identified individuals (e.g., FIG. 8). The user interface 1100 may display a listing representing the generated URLs. The user interface 1100 includes a section for displaying automatically generated links for relatives and associates. Similar to the generation for the primary user, the system 100 using the custom URL template may generate custom URL links for other identified individuals that are related.
  • In one embodiment, the Data Acquisition Module 106 may be configured to periodically generate custom URL links for one or more users. For example, a user may be scheduled for a periodic update of information. The system 100 may periodically generate custom URL links for the user, and then the system 100 may scan the content residing at the output of the custom URL links at their respective websites. The system 100 may optionally then store some or part of the returned information received from the websites and processed by the system. The system 100 may also perform match confidence scoring as described above, and store in a system database the confidence scores for the respective website in association with the displayed user information. The generated scoring results may then be accessed and presented to the user via a user interface of the system 100.
  • Example Computer System
  • FIG. 12 illustrates an example machine of a computer system within which a set of instructions, for causing the machine to perform any one or more of the methodologies discussed herein, may be executed. In alternative implementations, the machine may be connected (e.g., networked) to other machines in a LAN, an intranet, an extranet, and/or the Internet. The machine may operate in the capacity of a server or a client machine in client-server network environment, as a peer machine in a peer-to-peer (or distributed) network environment, or as a server or a client machine in a cloud computing infrastructure or environment.
  • The machine may be a personal computer (PC), a tablet PC, a set-top box (STB), a Personal Digital Assistant (PDA), a cellular telephone, a web appliance, a server, a network router, a switch or bridge, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while a single machine is illustrated, the term “machine” shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.
  • The example computer system 1200 includes a processing device 1202, a main memory 1204 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM) or Rambus DRAM (RDRAM), etc.), a static memory 1206 (e.g., flash memory, static random access memory (SRAM), etc.), and a data storage device 1218, which communicate with each other via a bus 1230.
  • Processing device 1202 represents one or more general-purpose processing devices such as a microprocessor, a central processing unit, or the like. More particularly, the processing device may be a complex instruction set computing (CISC) microprocessor, reduced instruction set computing (RISC) microprocessor, very long instruction word (VLIW) microprocessor, or processor implementing other instruction sets, or processors implementing a combination of instruction sets. Processing device 1202 may also be one or more special-purpose processing devices such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), network processor, or the like. The processing device 1202 is configured to execute instructions 1226 for performing the operations and steps discussed herein.
  • The computer system 1200 may further include a network interface device 1108 to communicate over the network 1220. The computer system 1200 also may include a 2video display unit 1210 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)), an alphanumeric input device 1212 (e.g., a keyboard), a cursor control device 1214 (e.g., a mouse), a graphics processing unit 1222, a signal generation device 1216 (e.g., a speaker), graphics processing unit 1122, video processing unit 1228, and audio pro2cessing unit 1232.
  • The data storage device 1218 may include a machine-readable storage medium 1224 (also known as a computer-readable medium) on which is stored one or more sets of instructions or software 1226 embodying any one or more of the methodologies or functions described herein. The instructions 1226 may also reside, completely or at least partially, within the main memory 1204 and/or within the processing device 1202 during execution thereof by the computer system 1200, the main memory 1204 and the processing device 1202 also constituting machine-readable storage media.
  • Some portions of the preceding detailed descriptions have been presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the ways used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of operations leading to a desired result. The operations are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
  • It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the above discussion, it is appreciated that throughout the description, discussions utilizing terms such as “identifying” or “determining” or “executing” or “performing” or “collecting” or “creating” or “sending” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage devices.
  • The present disclosure also relates to an apparatus for performing the operations herein. This apparatus may be specially constructed for the intended purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any type of media suitable for storing electronic instructions, each coupled to a computer system bus.
  • Various general purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct a more specialized apparatus to perform the method. The structure for a variety of these systems will appear as set forth in the description above. In addition, the present disclosure is not described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the teachings of the disclosure as described herein.
  • The present disclosure may be provided as a computer program product, or software, that may include a machine-readable medium having stored thereon instructions, which may be used to program a computer system (or other electronic devices) to perform a process according to the present disclosure. A machine-readable medium includes any mechanism for storing information in a form readable by a machine (e.g., a computer). For example, a machine-readable (e.g., computer-readable) medium includes a machine (e.g., a computer) readable storage medium such as a read only memory (“ROM”), random access memory (“RAM”), magnetic disk storage media, optical storage media, flash memory devices, etc.
  • In the foregoing disclosure, implementations of the disclosure have been described with reference to specific example implementations thereof. It will be evident that various modifications may be made thereto without departing from the broader spirit and scope of implementations of the disclosure as set forth in the following claims. The disclosure and drawings are, accordingly, to be regarded in an illustrative sense rather than a restrictive sense.

Claims (21)

What is claimed is:
1. A system comprising one or more processors, and a non-transitory computer-readable medium including one or more sequences of instructions that, when executed by the one or more processors, cause the system to perform operations comprising:
receiving a first name value via a first name input, a last name value via a last name input, a city value via a city input, a state value via a state input, and a year value via a year input;
determining, based on the received first name value, the received last name value, the received city value, the received state value and the received year value, a list of different websites that include information about one or more persons matching the received user first name value, the received last name value, the received city value, the received state value and the received year value; and
displaying, via a user interface, the list of different websites comprising a website link for selection by a user.
2. The system of claim 1, further comprising the operations of:
displaying a listing of one or more persons associated with the at least one web site; and
displaying an option for confirming whether a respective one or more persons associated with the at least one website is the user or is not the user.
3. The system of claim 1, further comprising the operations of:
receiving one or more values of other names of the user via an input for other names of the user; and
determining, based on the received one or more values of other names of the user, a list of websites that include information about a person matching the received other names of the user.
4. The system of claim 1, further comprising the operations of:
in response to an input for a selection of a website link, directing an application to transmit a customized URL with concatenated fields to the least one website, the concatenated fields comprising at least the received user first name and the received user last name.
5. The system of claim 1, wherein the user interface includes a portion listing multiple web sites and for each listed web site the representation of a corresponding generated web site link is displayed.
6. The system of claim 1, further comprising the operations of:
generating a set of alternative similar first names to the received first name value; and
determining, based on the generated set of alternative first names and the received last name value, a list of websites that include information about a person matching the generated alternative similar first names and the received last name value.
7. The system of claim 1, further comprising the operations of:
displaying custom URLs as clickable hyperlinks for each website whose matched profile confidence score exceeds a predetermined threshold value.
8. A computer-implemented method, comprising the operations of:
receiving a first name value via a first name input, a last name value via a last name input, a city value via a city input, a state value via a state input, and a year value via a year input;
determining, based on the received first name value, the received last name value, the received city value, the received state value and the received year value, a list of different web sites that include information about one or more persons matching the received user first name value, the received last name value, the received city value, the received state value and the received year value; and
displaying, via a user interface, the list of different websites comprising a website link for selection by a user.
9. The method of claim 8, further comprising the operations of:
displaying a listing of one or more persons associated with the at least one web site; and
displaying an option for confirming whether a respective one or more persons associated with the at least one website is the user or is not the user.
10. The method of claim 8, further comprising the operations of:
receiving one or more values of other names of the user via an input for other names of the user; and
determining, based on the received one or more values of other names of the user, a list of websites that include information about a person matching the received other names of the user.
11. The method of claim 8, further comprising the operations of:
in response to an input for a selection of a website link, directing an application to transmit a customized URL with concatenated fields to the least one website, the concatenated fields comprising at least the received user first name and the received user last name.
12. The method of claim 8, wherein the user interface includes a portion listing multiple websites and for each listed website the representation of a corresponding generated website link is displayed.
13. The method of claim 8, further comprising the operations of:
generating a set of alternative similar first names to the received first name value; and
determining, based on the generated set of alternative first names and the received last name value, a list of websites that include information about a person matching the generated alternative similar first names and the received last name value.
14. The method of claim 8, further comprising the operations of:
displaying custom URLs as clickable hyperlinks for each website whose matched profile confidence score exceeds a predetermined threshold value.
15. A computer program product comprising a non-transitory computer-readable medium having a computer-readable program code embodied therein to be executed by one or more processors, the program code including instructions to perform the operations of:
receiving a first name value via a first name input, a last name value via a last name input, a city value via a city input, a state value via a state input, and a year value via a year input;
determining, based on the received first name value, the received last name value, the received city value, the received state value and the received year value, a list of different websites that include information about one or more persons matching the received user first name value, the received last name value, the received city value, the received state value and the received year value; and
displaying, via a user interface, the list of different websites comprising a website link for selection by a user.
16. The computer program product of claim 15, further comprising the operations of:
displaying a listing of one or more persons associated with the at least one web site; and
displaying an option for confirming whether a respective one or more persons associated with the at least one website is the user or is not the user.
17. The computer program product of claim 15, further comprising the operations of:
receiving one or more values of other names of the user via an input for other names of the user; and
determining, based on the received one or more values of other names of the user, a list of websites that include information about a person matching the received other names of the user.
18. The computer program product of claim 15, further comprising the operations of:
in response to an input for a selection of a website link, directing an application to transmit a customized URL with concatenated fields to the least one website, the concatenated fields comprising the received user first name and the received user last name.
19. The computer program product of claim 15, wherein the user interface includes a portion listing multiple websites and for each listed website the representation of a corresponding generated website link is displayed.
20. The computer program product of claim 15, further comprising the operations of:
generating a set of alternative similar first names to the received first name value; and
determining, based on the generated set of alternative first names and the received last name value, a list of websites that include information about a person matching the generated alternative similar first names and the received last name value.
21. The computer program product of claim 15, further comprising the operations of:
displaying custom URLs as clickable hyperlinks for each website whose matched profile confidence score exceeds a predetermined threshold value.
US17/486,847 2021-03-05 2021-09-27 Dynamically creating custom hyperlinks for predefined search queries for multiple websites Active US12026206B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US17/486,847 US12026206B2 (en) 2021-03-05 2021-09-27 Dynamically creating custom hyperlinks for predefined search queries for multiple websites
US18/761,150 US20240354351A1 (en) 2021-03-05 2024-07-01 Dynamically creating custom hyperlinks for predefined search queries for multiple websites

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/194,181 US11132415B1 (en) 2021-03-05 2021-03-05 Dynamically creating custom hyperlinks for predefined search queries for multiple websites
US17/486,847 US12026206B2 (en) 2021-03-05 2021-09-27 Dynamically creating custom hyperlinks for predefined search queries for multiple websites

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US17/194,181 Continuation US11132415B1 (en) 2021-03-05 2021-03-05 Dynamically creating custom hyperlinks for predefined search queries for multiple websites

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/761,150 Continuation US20240354351A1 (en) 2021-03-05 2024-07-01 Dynamically creating custom hyperlinks for predefined search queries for multiple websites

Publications (2)

Publication Number Publication Date
US20220284065A1 true US20220284065A1 (en) 2022-09-08
US12026206B2 US12026206B2 (en) 2024-07-02

Family

ID=77887753

Family Applications (3)

Application Number Title Priority Date Filing Date
US17/194,181 Active US11132415B1 (en) 2021-03-05 2021-03-05 Dynamically creating custom hyperlinks for predefined search queries for multiple websites
US17/486,847 Active US12026206B2 (en) 2021-03-05 2021-09-27 Dynamically creating custom hyperlinks for predefined search queries for multiple websites
US18/761,150 Abandoned US20240354351A1 (en) 2021-03-05 2024-07-01 Dynamically creating custom hyperlinks for predefined search queries for multiple websites

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US17/194,181 Active US11132415B1 (en) 2021-03-05 2021-03-05 Dynamically creating custom hyperlinks for predefined search queries for multiple websites

Family Applications After (1)

Application Number Title Priority Date Filing Date
US18/761,150 Abandoned US20240354351A1 (en) 2021-03-05 2024-07-01 Dynamically creating custom hyperlinks for predefined search queries for multiple websites

Country Status (1)

Country Link
US (3) US11132415B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11954167B1 (en) * 2022-12-21 2024-04-09 Google Llc Techniques for presenting graphical content in a search result

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240152568A1 (en) * 2022-11-03 2024-05-09 Bubblr Limited Contextual enveloping of dynamic hyperlinks

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6931591B1 (en) * 1999-10-15 2005-08-16 Saepio Technologies, Inc. Publishing layout wizard
US20100010993A1 (en) * 2008-03-31 2010-01-14 Hussey Jr Michael P Distributed personal information aggregator
US20110015995A1 (en) * 2009-07-17 2011-01-20 Scott Ellingboe Method and System for Digital Media Distribution
US8185558B1 (en) * 2010-04-19 2012-05-22 Facebook, Inc. Automatically generating nodes and edges in an integrated social graph
US8250065B1 (en) * 2004-05-28 2012-08-21 Adobe Systems Incorporated System and method for ranking information based on clickthroughs
US20130124538A1 (en) * 2010-04-19 2013-05-16 Yofay Kari Lee Structured Search Queries Based on Social-Graph Information
US20130191372A1 (en) * 2010-04-19 2013-07-25 Yofay Kari Lee Personalized Structured Search Queries for Online Social Networks
US20130191416A1 (en) * 2010-04-19 2013-07-25 Yofay Kari Lee Detecting Social Graph Elements for Structured Search Queries
US20140025702A1 (en) * 2012-07-23 2014-01-23 Michael Curtiss Filtering Structured Search Queries Based on Privacy Settings
US8706762B1 (en) * 2011-05-16 2014-04-22 Intuit Inc. System and method for automated web site information retrieval scripting using untrained users
US20150206177A1 (en) * 2013-10-18 2015-07-23 Google Inc. Using content selection urls
US20170046127A1 (en) * 2014-10-09 2017-02-16 Splunk Inc. Automatic event group actions
US20180024901A1 (en) * 2015-09-18 2018-01-25 Splunk Inc. Automatic entity control in a machine data driven service monitoring system
US20180288070A1 (en) * 2017-04-04 2018-10-04 Zerofox, Inc. Social media rule engine
US20190036960A1 (en) * 2017-07-31 2019-01-31 Zerofox, Inc. Organizational social threat reporting
US20190095443A1 (en) * 2017-09-27 2019-03-28 International Business Machines Corporation Passively managed loyalty program using customer images and behaviors
US20210028998A1 (en) * 2019-07-25 2021-01-28 Vmware, Inc. Visual overlays for network insights
US20210117478A1 (en) * 2017-05-10 2021-04-22 Agora Intelligence, Inc. Method, apparatus, and computer-readable medium for generating categorical and criterion-based search results from a search query

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10305758B1 (en) * 2014-10-09 2019-05-28 Splunk Inc. Service monitoring interface reflecting by-service mode

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6931591B1 (en) * 1999-10-15 2005-08-16 Saepio Technologies, Inc. Publishing layout wizard
US8250065B1 (en) * 2004-05-28 2012-08-21 Adobe Systems Incorporated System and method for ranking information based on clickthroughs
US20100010993A1 (en) * 2008-03-31 2010-01-14 Hussey Jr Michael P Distributed personal information aggregator
US20110015995A1 (en) * 2009-07-17 2011-01-20 Scott Ellingboe Method and System for Digital Media Distribution
US8185558B1 (en) * 2010-04-19 2012-05-22 Facebook, Inc. Automatically generating nodes and edges in an integrated social graph
US20130124538A1 (en) * 2010-04-19 2013-05-16 Yofay Kari Lee Structured Search Queries Based on Social-Graph Information
US20130191372A1 (en) * 2010-04-19 2013-07-25 Yofay Kari Lee Personalized Structured Search Queries for Online Social Networks
US20130191416A1 (en) * 2010-04-19 2013-07-25 Yofay Kari Lee Detecting Social Graph Elements for Structured Search Queries
US8706762B1 (en) * 2011-05-16 2014-04-22 Intuit Inc. System and method for automated web site information retrieval scripting using untrained users
US20140025702A1 (en) * 2012-07-23 2014-01-23 Michael Curtiss Filtering Structured Search Queries Based on Privacy Settings
US20150206177A1 (en) * 2013-10-18 2015-07-23 Google Inc. Using content selection urls
US20170046127A1 (en) * 2014-10-09 2017-02-16 Splunk Inc. Automatic event group actions
US20180024901A1 (en) * 2015-09-18 2018-01-25 Splunk Inc. Automatic entity control in a machine data driven service monitoring system
US20180288070A1 (en) * 2017-04-04 2018-10-04 Zerofox, Inc. Social media rule engine
US20210117478A1 (en) * 2017-05-10 2021-04-22 Agora Intelligence, Inc. Method, apparatus, and computer-readable medium for generating categorical and criterion-based search results from a search query
US20190036960A1 (en) * 2017-07-31 2019-01-31 Zerofox, Inc. Organizational social threat reporting
US20190095443A1 (en) * 2017-09-27 2019-03-28 International Business Machines Corporation Passively managed loyalty program using customer images and behaviors
US20210028998A1 (en) * 2019-07-25 2021-01-28 Vmware, Inc. Visual overlays for network insights

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11954167B1 (en) * 2022-12-21 2024-04-09 Google Llc Techniques for presenting graphical content in a search result
US12197525B2 (en) 2022-12-21 2025-01-14 Google Llc Techniques for presenting graphical content in a search result

Also Published As

Publication number Publication date
US12026206B2 (en) 2024-07-02
US11132415B1 (en) 2021-09-28
US20240354351A1 (en) 2024-10-24

Similar Documents

Publication Publication Date Title
US20240354351A1 (en) Dynamically creating custom hyperlinks for predefined search queries for multiple websites
US10075423B2 (en) Provisioning for smart navigation services
US8423610B2 (en) User interface for web comments
US8280879B2 (en) System and method for quantifying visibility within search engines
US10678858B2 (en) Method and system for generating search shortcuts and inline auto-complete entries
US20240346052A1 (en) Knowledge search system
KR101708448B1 (en) Predictive query suggestion caching
US10185741B2 (en) Smart navigation services
US10019526B2 (en) Systems and methods for creating and using keyword navigation on the internet
US8788479B2 (en) Method and system to update user activities from the world wide web to subscribed social media web sites after approval
US20090006646A1 (en) System and Method of Auto Populating Forms on Websites With Data From Central Database
US7599915B2 (en) Portal linking tool
US20130036344A1 (en) Intelligent link population and recommendation
US20120166182A1 (en) Autocompletion for Partially Entered Query
US20200104427A1 (en) Personalized neural query auto-completion pipeline
WO2007044549A2 (en) Social discovery systems and methods
US7970758B2 (en) Automatic completion with LDAP
US6950861B1 (en) System and method for searching websites associated with bookmarks
US11086884B2 (en) Automatically updating a remote database using a client-side word processor
US7895337B2 (en) Systems and methods of generating a content aware interface
US20180365302A1 (en) System for interactively searching for and displaying information on a webpage
US6959295B1 (en) System and method for providing news updates
JP2007072596A (en) Information sharing system and information sharing method
KR20150140298A (en) Smart Navigation Services
CN1922606A (en) Dynamic keyword processing system and method for user oriented internet navigation

Legal Events

Date Code Title Description
AS Assignment

Owner name: OPTERY, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GENTILELLO, LAWRENCE ROBERT;ATLAS, CHEN;REEL/FRAME:057615/0833

Effective date: 20210304

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STPP Information on status: patent application and granting procedure in general

Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED

STCF Information on status: patent grant

Free format text: PATENTED CASE