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 PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 31
- 238000004590 computer program Methods 0.000 claims abstract description 12
- 230000004044 response Effects 0.000 claims description 12
- 238000013500 data storage Methods 0.000 abstract description 8
- 238000012545 processing Methods 0.000 description 15
- 230000015654 memory Effects 0.000 description 14
- 230000008569 process Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 230000008859 change Effects 0.000 description 5
- 230000003068 static effect Effects 0.000 description 5
- 238000013501 data transformation Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 229910000078 germane Inorganic materials 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9558—Details of hyperlinks; Management of linked annotations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9538—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation 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
Description
- 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.
- 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.
- 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.
- 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. - 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 anexample system 100 utilized in creating custom system generated hyperlinks for predefined search queries. Thesystem 100 may include a User Profile Module 104, aData Acquisition Module 106, aURL 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 asreference 156. - While the
databases database URL template data 122 andsimilar 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 thesystem 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. Thesystem 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). Thesystem 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, thesystem 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, thesystem 100 includes asimilar 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, thesystem 100 may additional alternate names by comparing a user provided first name and evaluate the name against asimilar names database 124 to identify other possible associated names. Thesimilar 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). Thedatabase 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 thedatabase 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, thesystem 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, thesystem 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, thesystem 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. Thesystem 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. Thesystem 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). Thesystem 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, thesystem 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, thesystem 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, thesystem 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}}
- Current Primary Address (Required)
- D. Relatives and Associates Names
- (Optional): —First Name {{first_name}}
- Middle Name {{middle_name}}
- Last Name {{last_name}}
- A. Basic User Information (Required and Optional):
- 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, thesystem 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, thesystem 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. Thesystem 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. Thesystem 100 begins generating custom system generated hyperlinks. Thesystem 100 accesses the custom URL templates stored in theURL Template data 122 database, and the custom URL templates are retrieved. Thesystem 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. Thesystem 100 then generates, via the similar names generation module, similar names to the names of the user. Thesystem 100 maps retrieved and/or the generated similar names to the retrieved custom URL templates. Thesystem 100 generates custom URLs and evaluates the system generated custom URLs and determines a matched profile confidence score. Thesystem 100 caches the results of the custom URLs. Thesystem 100 presents via a user interface those custom URLs where the matched profile confidence score is above a predetermined value. Thesystem 100 receives a selection of one or more of the custom URLs. When clicked on by the user, thesystem 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, thesystem 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). Thesystem 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). Thesystem 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). Thesystem 100 may display one or more website links based on the generated custom URL links. - Example Custom URL Template
- The
system 100, via theURL 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 theURL 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, thesystem 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. Thesystem 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 anexample user interface 600 according to one embodiment of the present disclosure. Thesystem 100 generates theuser 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. Thesystem 100 stores the obtained data values in the user profile data database 120. Thesystem 100 may use the information the information input by the user, and received viauser interface 600, for generating custom URL links. -
FIG. 6B illustrates anexample user interface 610 according to one embodiment of the present disclosure. Thesystem 100 generates theuser interface 610 after the user has provided initial user information requested in theuser 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. Thesystem 100 may use the information input by the user, and received viauser interface 610, for generating custom URL links. -
FIG. 7 illustrates anexample user interface 700 according to one embodiment of the present disclosure. Thesystem 100 generates theuser 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. Thesystem 100 may use the information input by the user, and received viauser interface 700, for generating custom URL links. -
FIG. 8 illustrates anexample user interface 800 according to one embodiment of the present disclosure. Thesystem 100 generates theuser 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. Thesystem 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. Thesystem 100 may use the information input by the user, and received viauser interface 800, for generating custom URL links. -
FIG. 9 illustrates anexample user interface 900 according to one embodiment of the present disclosure. Thesystem 100 generates theuser 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. Thesystem 100 may use the information input by the user, and received viauser interface 900, for generating custom URL links. -
FIG. 10 illustrates anexample user interface 1000 according to one embodiment of the present disclosure. Thesystem 100 generates theuser 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. Thesystem 100 would update the user profile data database 120 with the added additional information. Thesystem 100 may use the information input by the user, and received viauser interface 1000, for generating custom URL links. -
FIG. 11 illustrates anexample user interface 1100 according to one embodiment of the present disclosure. Thesystem 100 generates theuser interface 1100 allowing a user to view and select the dynamic URL links that were generated by thesystem 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.). Theuser 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, thesystem 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, thesystem 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 thesystem 100 may have generated other similar first names for “Richard” such as “Rich”, “Rickie”, or “Richie”. When generating a dynamic URL for the user, thesystem 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 ). Theuser interface 1100 may display a listing representing the generated URLs. Theuser interface 1100 includes a section for displaying automatically generated links for relatives and associates. Similar to the generation for the primary user, thesystem 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. Thesystem 100 may periodically generate custom URL links for the user, and then thesystem 100 may scan the content residing at the output of the custom URL links at their respective websites. Thesystem 100 may optionally then store some or part of the returned information received from the websites and processed by the system. Thesystem 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 thesystem 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 aprocessing 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 adata storage device 1218, which communicate with each other via abus 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. Theprocessing device 1202 is configured to executeinstructions 1226 for performing the operations and steps discussed herein. - The
computer system 1200 may further include a network interface device 1108 to communicate over thenetwork 1220. Thecomputer 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), agraphics processing unit 1222, a signal generation device 1216 (e.g., a speaker), graphics processing unit 1122,video processing unit 1228, andaudio 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 orsoftware 1226 embodying any one or more of the methodologies or functions described herein. Theinstructions 1226 may also reside, completely or at least partially, within themain memory 1204 and/or within theprocessing device 1202 during execution thereof by thecomputer system 1200, themain memory 1204 and theprocessing 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)
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)
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)
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)
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)
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 |
-
2021
- 2021-03-05 US US17/194,181 patent/US11132415B1/en active Active
- 2021-09-27 US US17/486,847 patent/US12026206B2/en active Active
-
2024
- 2024-07-01 US US18/761,150 patent/US20240354351A1/en not_active Abandoned
Patent Citations (18)
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)
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 |