US20190051285A1 - Link-based audio recording, collection, collaboration, embedding and delivery system - Google Patents
Link-based audio recording, collection, collaboration, embedding and delivery system Download PDFInfo
- Publication number
- US20190051285A1 US20190051285A1 US16/160,533 US201816160533A US2019051285A1 US 20190051285 A1 US20190051285 A1 US 20190051285A1 US 201816160533 A US201816160533 A US 201816160533A US 2019051285 A1 US2019051285 A1 US 2019051285A1
- Authority
- US
- United States
- Prior art keywords
- name
- participants
- information
- memory
- processor
- 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.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
-
- G06F17/2235—
-
- G06F17/289—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/134—Hyperlinking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
Definitions
- This invention relates generally to accessing information in computer networks. More particularly, this invention relates to textual name information and audio name information that is collected and accessed via computer networks.
- a machine has a processor and a memory connected to the processor.
- the memory stores instructions executed by the processor to supply a name page in response to a request from an administrator machine under the control of an organizer.
- Name page updates are received from the administrator machine.
- the name page updates include participants and associated network contact information for the participants.
- a code is utilized to form a link to the name page.
- Prompts for textual name information and audio name information are supplied to a client machine that activates the link to the name page.
- Textual name information and audio name information are received from the client machine.
- the textual name information and audio name information are stored in association with the name page.
- Navigation tools are supplied in response to a request from at least one of the administrator machine and the client machine. The navigation tools facilitate access to the textual name information and audio name information.
- FIG. 1 illustrates a system configured in accordance with an embodiment of the invention.
- FIG. 2 illustrates processing operations associated with an embodiment of the invention.
- FIG. 3 is an interface for creating, listing and editing name pages in accordance with an embodiment of the invention.
- FIG. 4 is an interface to invite additional administrators of a name page.
- FIG. 5 is an interface with a name page link and prompts for inviting an individual to record a name.
- FIG. 6 is an interface with prompts to record name information and collect text information about a name.
- FIG. 7 is an interface with prompts to record name information from a mobile device.
- FIG. 8 is an interface to coordinate the upload of name and related information.
- FIG. 9 is an interface to associate name information for a single individual with multiple name pages.
- FIG. 10 is an interface with navigation tools utilized in accordance with an embodiment of the invention.
- FIG. 11 is an interface to prompt a user to export name information to an external file format.
- FIG. 12 is an example of name information in an external file format.
- FIG. 1 illustrates a system 100 configured in accordance with an embodiment of the invention.
- the system 100 includes a first computer 102 which accesses a server 104 via a network 106 , which may be any combination of wired and wireless networks.
- the first computer 102 includes standard components, such as a central processing unit 110 and input/output devices 112 linked by a bus 114 .
- the input/output devices 112 may include a keyboard, mouse, touch display and the like.
- a network interface circuit 116 is also connected to bus 114 to supply connectivity to network 106 .
- a memory 120 is also connected to the bus 114 .
- the memory 120 stores instructions executed by central processing unit 110 .
- the memory 120 stores a name administrator module 122 , which includes instructions to support the administration of operations associated with textual and audio information about a name, as discussed below.
- a school administrator or employer may operate computer 102 .
- Server 104 also includes standard components, such as a central processing unit 130 , input/output devices 132 , bus 134 and network interface circuit 136 .
- a memory 140 is connected to bus 134 .
- the memory 140 stores instructions executed by central processing unit 130 .
- the memory 140 stores a name module 142 .
- the name module 142 is a repository of textual and audio information about a name.
- the name module also supports various operations to collect and provide access to this information, as discussed below.
- System 100 also includes a set of client machines 150 _ 1 through 150 _N.
- Each client machine (generically referenced as machine 150 ) includes standard components, such as a central processing unit 151 , input/output devices 152 , bus 154 , and network interface circuit 156 .
- a memory 160 is connected to bus 154 .
- the memory stores instructions executed by central processing unit 151 .
- the memory 160 stores a client module 162 .
- the client module may be a browser or simple application that supplies textual and audio name information to server 104 in response to an invitation.
- the client module 162 may also provide access to stored textual and audio information associated with the name module 142 , as discussed below.
- FIG. 2 illustrates an exemplary process flow associated with an embodiment of the invention. More particularly, the figure illustrates operations between client machine 150 , administrator (admin) machine 102 and host machine 104 .
- the admin machine 102 may initiate a request 200 to the host machine 104 .
- the host machine 104 supplies a name page 202 .
- the name page 202 may be a graduation name page, an employee name page, a new student name page and the like.
- the admin machine 102 populates the name page 204 .
- the admin machine 102 may upload a list of names and associated contact information.
- the host machine 104 receives updated name page information 205 .
- the host machine 104 may also supply such information as an event code.
- the admin machine 102 then distributes invitations with one or more links 206 .
- the invitations may be in the form of email communications, SMS text communications and the like.
- the invitations include one or more links to a name page.
- the name page supplies prompts for audio and textual name information.
- the invitations are sent from the host machine 104 .
- the client machine 150 receives an invitation and activates a link 208 within the invitation.
- the activation of the link 208 directs the client machine 150 to the host machine 104 , which supplies name text and audio prompts 210 , as demonstrated below.
- the client machine 150 supplies textual name information and audio name information 212 in response to the prompts.
- the textual and audio name information is added to the data store 214 associated with the name module 142 .
- a request 216 may be initiated at the admin machine 102 for data store navigation tools 218 , which enable a user to access textual and audio name information, as demonstrated below. For example, a speaker at a graduation may access a list of graduating students and associated textual and audio name information.
- Client machine 150 may initiate a request 220 for navigation tools 218 to allow a user to edit or re-record name information, as discussed below.
- FIG. 2 illustrates the host machine 104 supplying a name page 202 .
- FIG. 3 is an example interface 300 for creating, listing and editing a name page.
- the interface 300 includes prompts for an event title 302 , an event date 304 and an optional event code 306 .
- the interface 300 may also include a section 308 listing events administered by the user. If a unique event code is not supplied by the user, the name module 142 generates one. Any number of techniques may be used to generate a unique code.
- One example is a Hexdigest with a recursive uniqueness check, such as:
- FIG. 4 illustrates an interface 400 to support this operation.
- the interface 400 includes a section 402 listing event administrators.
- An invitation section includes a first name prompt 404 , a last name prompt 406 and an email address prompt 408 .
- the email invitation contains a link with a unique parameter.
- the unique parameter may be generated as follows:
- the original administrator has authority to revoke privileges of a subsequently designated administrator.
- the foregoing operations correspond to the populate name page action 204 of FIG. 2 .
- Name page population also includes specifying individuals to receive invitations to supply name information.
- FIG. 5 illustrates an interface 500 to coordinate the invitation operation.
- the interface 500 includes a unique link 502 for the event.
- the unique link 502 may be a Uniform Resource Locator (URL) generated by the name module 142 that is supplied to the name admin module 122 .
- the interface 500 may also include a section to collect invitee information. The information is subsequently used to send an invitation with a recording link specific to the individual being invited.
- the section may include a first name prompt 504 , a last name prompt 506 and an email address prompt 508 .
- the administrator may then share the link in a number of ways.
- the link may be published on a website, it may be sent in an email campaign or an SMS text campaign.
- This operation of sharing the link corresponds to the distribute invitations with links operation 206 of FIG. 2 .
- the activation of a link operation 208 of FIG. 2 may result in the interface 600 of FIG. 6 . That is, the host machine 104 supplies name text and audio prompts 210 , as shown in FIG. 2 .
- the user Prior to supplying the interface 600 of FIG. 6 , the user may be supplied with a registration page that includes the user's name information and prompts for collecting phonetic spelling of the name and other information about the name.
- FIG. 6 illustrates an interface 600 with prompts for supplying name information.
- a first prompt 602 requests a telephone number.
- a second prompt 604 coordinates a web recording.
- Another prompt 606 allows the specification of textual instructions (e.g., prompts the user to input a phonetic description of a name). Alternately or in addition, the textual instructions may be collected through a registration page.
- an automated telephone recording system is invoked.
- an additional server may be connected to network 106 to supply a telephone recording system that is accessed by the name module 142 via an Application Program Interface (API).
- API Application Program Interface
- Twilio® is used. Twilio is a cloud communications company based in San Francisco, Calif. Twilio facilitates the programmatic making and receiving of telephone calls. Services are accessed via the Twilio API.
- the automated telephone call prompts the user to record their name. For example, the user may be prompted to provide a name after a beep and then press # when completed. Keypad options may be supplied to allow a user to listen, record and end a call. Once the call ends, the recording is sent to the name module 142 .
- the web based recording may be based upon a Hypertext Markup Language (e.g., HTML5) audio recording. Alternately, an Adobe® Flash® audio recorder may be used.
- HTML5 Hypertext Markup Language
- Adobe® Flash® audio recorder may be used.
- Another embodiment of the invention utilizes the client device's native audio/video recorder. On devices where native audio recorder access is not granted to mobile web applications (such as iOS® devices), the user supplies a video. The video file is then processed to strip the audio.
- FIG. 7 is an exemplary interface 700 which may be used to collect an audio/video utilizing the client device's native audio/video recorder.
- Section 606 of interface 600 supplies prompts to a user.
- the prompts may relate to phonetic spellings, student identification number, graduation date and the like. Alternately or in addition, this information may be collected in a registration page.
- the collected textual information and voice recording (audio information) constitute a name guide.
- the user's name guide is associated with the name page to form a name guide.
- the user's name guide is associated with the name page using a model called a practice object, which associates a user id with an event id (where events are one-to-one mapped to name pages).
- the name guides/practice objects are the entries that appear on a name page.
- the recording link contains the code that uniquely identifies the name page. That code is read as a parameter with the following association: user/recording/nameguide/practiceobject with this particular name page.
- the voice recording and textual information is uploaded to server 104 .
- Prompts 504 , 506 and 508 of FIG. 5 are an example of an individual invite operation.
- a bulk invite operation may be coordinated through a file upload.
- FIG. 8 illustrates an interface 800 to coordinate the upload of a file with individual names and contact information.
- the file may be an Excel® spreadsheet containing email addresses and optionally other information (e.g., first name, middle name, last name, and other identifiers, such as school identification). Bulk email invitations may then be sent based upon the file information.
- the email may be originated from the name admin module 122 or the name module 142 .
- a ‘Practiceobject’ model object is created which references this name page using an event_id foreign key, and which contains a unique Hexdigest token.
- This token is used to identify the Practiceobject when the user signs up, and thus the Name Page for which this user was invited.
- This system allows identification of the email to which an invitation was sent, to prevent abuse (e.g., recording a misleading NameGuide for another person, recording an inappropriate message, etc.), and to allow Customers/Admins to track responses and send automated reminders to users to register, record and re-record as needed.
- the name module 142 is configured to identify if an email address is already in the system. If so, and if that email is associated with a registered user, that user's entry/NameGuide/recording will be copied to the relevant Name Page. If an email is just that of an invited user (for another Name Page) who has not yet registered, not only will an invitation be sent again, but when the user register and/or records, their entry/NameGuide/recording will be automatically coped to any Name Page for which the user was invited. This is useful because users might be invited for multiple Name Pages (different events, classes, businesses, etc). It is even more useful insofar as it allows seamless integration with the API/Directory Integration Service described below.
- Some customers may want all students or employees or organization members to record their names during matriculation/onboarding/recruitment, or in general. But specific users/Admins in the organization may want to have a Name Page with just the entries/NameGuides/recordings relevant to a particular event or purpose (e.g, for a graduation, for an awards ceremony, for given business team or meeting). Therefore, uploading an Excel/CSV file with just that set of user email addresses automatically creates a Name Page with just those entries for those users in that set who are already in the system, and invites any users needed for that Name Page (in that set) who are not already in the NameCoach system.
- a Name Page with just the entries/NameGuides/recordings relevant to a particular event or purpose (e.g, for a graduation, for an awards ceremony, for given business team or meeting). Therefore, uploading an Excel/CSV file with just that set of user email addresses automatically creates a Name Page with just those entries for those users in that set who are already in the system, and invites
- Interface 900 of FIG. 9 is one example.
- the interface 900 includes individual name guides 902 , 904 and 906 for different events. For example, a full name may be specified for a graduation or an awards ceremony. A short form name may be specified for a classroom setting or business meetings.
- FIG. 2 discloses an operation of supplying data store navigation tools 218 .
- FIG. 10 illustrates an interface 1000 corresponding to such an operation.
- the interface includes a column 1002 with names and email addresses.
- the column may also include other information, such as student or employee identification.
- a column 1004 has notes from the owner of the name (e.g., the “d” is soft).
- Column 1006 has audio information. That is, invoking the play button associated with a name results in an audio articulation of the name.
- Column 1008 has administrator notes.
- the administrator notes may include phonetic notes by the administrator.
- the notes may be entered after listening to the audio information. Such notes are often more useful to the administrator than the owner's own phonetic notes.
- column 1010 has prompts for actions, such as sending an email or deleting an entry. For example, an email may be sent requesting an individual to re-record a name.
- FIG. 10 may be exported to another file format.
- FIG. 11 illustrates an interface 1100 with a prompt 1102 to export information to an Excel® file.
- FIG. 12 illustrates the resulting file 1200 .
- An embodiment of the invention includes the name module 142 supporting an API to allow a customer to retrieve information about users on their Name Page(s) programmatically, and embed that information (including recordings) in their own systems or third party systems.
- a school can embed student name recordings into their Student Information System, so that teachers can get name recordings along with their class lists.
- a business can embed employee name recordings into their business directory by placing a speaker button next to the name of each employee on their profile.
- a website can embed name recordings on the profiles of each user, e.g., a job search website can embed name recordings on the profile of each job applicant.
- the name module 142 has a link associated with each individual.
- a user can embed her link in an email message, a social network, an SMS text, etc. Activation of the link results in a call to the name module 142 .
- the name module can then supply audio and textual name information.
- the name module 142 supports a search function that allows third parties to search for a name to access audio and textual name information.
- Embodiments of the invention allow the textual name information and audio name information to be supplemented with a photo of the user, information on the origin of the name, meaning of the name, story behind the name and the like.
- An embodiment of the name module 142 supports search, sort and pagination functionality with respect to the names in a name page.
- the name module 142 may also be configured to send automatic reminders to individuals that have not recorded a name.
- the name module 142 may also be configured to selectively supply locked or read-only versions of a name page to certain individuals.
- Appendix A Model Association for Customerkeys and Adminkeys (See Relevant Associations for Events and Users in Appendix B Below)
- An embodiment of the present invention relates to a computer storage product with a non-transitory computer readable storage medium having computer code thereon for performing various computer-implemented operations.
- the media and computer code may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well known and available to those having skill in the computer software arts.
- Examples of computer-readable media include, but are not limited to: magnetic media, optical media, magneto-optical media and hardware devices that are specially configured to store and execute program code, such as application-specific integrated circuits (“ASICs”), programmable logic devices (“PLDs”) and ROM and RAM devices.
- Examples of computer code include machine code, such as produced by a compiler, and files containing higher-level code that are executed by a computer using an interpreter.
- an embodiment of the invention may be implemented using JAVA®, C++, or other object-oriented programming language and development tools.
- Another embodiment of the invention may be implemented in hardwired circuitry in place of, or in combination with, machine-exe
Abstract
Description
- This application is a continuation of co-pending U.S. patent application Ser. No. 14/714,184, filed May 15, 2015, and claims the benefit of U.S. Provisional Application No. 61/994,022, filed May 15, 2014, which are incorporated herein by reference in their entireties, including but not limited to those portions that specifically appear hereinafter, the incorporation by reference being made with the following exception: In the event that any portion of the above-referenced applications are inconsistent with this application, this application supercedes said portion of said above-referenced applications.
- This invention relates generally to accessing information in computer networks. More particularly, this invention relates to textual name information and audio name information that is collected and accessed via computer networks.
- The United States and other heterogeneous societies have citizens from diverse cultures and associated languages. This may create challenges when a speaker of one language is forced to pronounce a name originating from a second language. Thus, there is a need to provide textual and audio guidance in such circumstances. More particularly, such guidance should be easily accessible via a computer network.
- A machine has a processor and a memory connected to the processor. The memory stores instructions executed by the processor to supply a name page in response to a request from an administrator machine under the control of an organizer. Name page updates are received from the administrator machine. The name page updates include participants and associated network contact information for the participants. A code is utilized to form a link to the name page. Prompts for textual name information and audio name information are supplied to a client machine that activates the link to the name page. Textual name information and audio name information are received from the client machine. The textual name information and audio name information are stored in association with the name page. Navigation tools are supplied in response to a request from at least one of the administrator machine and the client machine. The navigation tools facilitate access to the textual name information and audio name information.
- The invention is more fully appreciated in connection with the following detailed description taken in conjunction with the accompanying drawings, in which:
-
FIG. 1 illustrates a system configured in accordance with an embodiment of the invention. -
FIG. 2 illustrates processing operations associated with an embodiment of the invention. -
FIG. 3 is an interface for creating, listing and editing name pages in accordance with an embodiment of the invention. -
FIG. 4 is an interface to invite additional administrators of a name page. -
FIG. 5 is an interface with a name page link and prompts for inviting an individual to record a name. -
FIG. 6 is an interface with prompts to record name information and collect text information about a name. -
FIG. 7 is an interface with prompts to record name information from a mobile device. -
FIG. 8 is an interface to coordinate the upload of name and related information. -
FIG. 9 is an interface to associate name information for a single individual with multiple name pages. -
FIG. 10 is an interface with navigation tools utilized in accordance with an embodiment of the invention. -
FIG. 11 is an interface to prompt a user to export name information to an external file format. -
FIG. 12 is an example of name information in an external file format. - Like reference numerals refer to corresponding parts throughout the several views of the drawings.
-
FIG. 1 illustrates asystem 100 configured in accordance with an embodiment of the invention. Thesystem 100 includes afirst computer 102 which accesses aserver 104 via anetwork 106, which may be any combination of wired and wireless networks. Thefirst computer 102 includes standard components, such as acentral processing unit 110 and input/output devices 112 linked by abus 114. The input/output devices 112 may include a keyboard, mouse, touch display and the like. Anetwork interface circuit 116 is also connected tobus 114 to supply connectivity tonetwork 106. Amemory 120 is also connected to thebus 114. Thememory 120 stores instructions executed bycentral processing unit 110. In one embodiment, thememory 120 stores aname administrator module 122, which includes instructions to support the administration of operations associated with textual and audio information about a name, as discussed below. By way of example, a school administrator or employer may operatecomputer 102. -
Server 104 also includes standard components, such as acentral processing unit 130, input/output devices 132,bus 134 andnetwork interface circuit 136. A memory 140 is connected tobus 134. The memory 140 stores instructions executed bycentral processing unit 130. In one embodiment, the memory 140 stores aname module 142. Thename module 142 is a repository of textual and audio information about a name. The name module also supports various operations to collect and provide access to this information, as discussed below. -
System 100 also includes a set of client machines 150_1 through 150_N. Each client machine (generically referenced as machine 150) includes standard components, such as acentral processing unit 151, input/output devices 152,bus 154, andnetwork interface circuit 156. Amemory 160 is connected tobus 154. The memory stores instructions executed bycentral processing unit 151. In one embodiment, thememory 160 stores aclient module 162. The client module may be a browser or simple application that supplies textual and audio name information to server 104 in response to an invitation. Theclient module 162 may also provide access to stored textual and audio information associated with thename module 142, as discussed below. -
FIG. 2 illustrates an exemplary process flow associated with an embodiment of the invention. More particularly, the figure illustrates operations betweenclient machine 150, administrator (admin)machine 102 andhost machine 104. Theadmin machine 102 may initiate arequest 200 to thehost machine 104. In response to the request, thehost machine 104 supplies aname page 202. For example, thename page 202 may be a graduation name page, an employee name page, a new student name page and the like. - The
admin machine 102 populates thename page 204. For example, theadmin machine 102 may upload a list of names and associated contact information. Thehost machine 104 receives updatedname page information 205. Thehost machine 104 may also supply such information as an event code. - The
admin machine 102 then distributes invitations with one ormore links 206. The invitations may be in the form of email communications, SMS text communications and the like. The invitations include one or more links to a name page. As demonstrated below, the name page supplies prompts for audio and textual name information. In an alternate embodiment, the invitations are sent from thehost machine 104. - The
client machine 150 receives an invitation and activates alink 208 within the invitation. The activation of thelink 208 directs theclient machine 150 to thehost machine 104, which supplies name text andaudio prompts 210, as demonstrated below. Theclient machine 150 supplies textual name information andaudio name information 212 in response to the prompts. The textual and audio name information is added to thedata store 214 associated with thename module 142. Thereafter, arequest 216 may be initiated at theadmin machine 102 for datastore navigation tools 218, which enable a user to access textual and audio name information, as demonstrated below. For example, a speaker at a graduation may access a list of graduating students and associated textual and audio name information.Client machine 150 may initiate arequest 220 fornavigation tools 218 to allow a user to edit or re-record name information, as discussed below. - The following discussion relates to various specific embodiments associated with the apparatus and method discussed above.
FIG. 2 illustrates thehost machine 104 supplying aname page 202.FIG. 3 is anexample interface 300 for creating, listing and editing a name page. Theinterface 300 includes prompts for anevent title 302, anevent date 304 and anoptional event code 306. Theinterface 300 may also include asection 308 listing events administered by the user. If a unique event code is not supplied by the user, thename module 142 generates one. Any number of techniques may be used to generate a unique code. One example is a Hexdigest with a recursive uniqueness check, such as: -
def generate_event_code(x) y = Digest::SHA1.hexdigest([Time.now, rand].join)[4..8].upcase if Event.find_by_event_code(y) generate_event_code(x) else x.event_code = y end end - One administrator can invite another individual to be an administrator for the event.
FIG. 4 illustrates aninterface 400 to support this operation. Theinterface 400 includes asection 402 listing event administrators. An invitation section includes afirst name prompt 404, alast name prompt 406 and anemail address prompt 408. In one embodiment, the email invitation contains a link with a unique parameter. The unique parameter may be generated as follows: -
Hexdigest: def generate_token self.token = Digest::SHA1.hexdigest([Time.now, rand].join) end - In one embodiment, the original administrator has authority to revoke privileges of a subsequently designated administrator. The foregoing operations correspond to the populate
name page action 204 ofFIG. 2 . Name page population also includes specifying individuals to receive invitations to supply name information.FIG. 5 illustrates aninterface 500 to coordinate the invitation operation. Theinterface 500 includes aunique link 502 for the event. Theunique link 502 may be a Uniform Resource Locator (URL) generated by thename module 142 that is supplied to thename admin module 122. Theinterface 500 may also include a section to collect invitee information. The information is subsequently used to send an invitation with a recording link specific to the individual being invited. The section may include afirst name prompt 504, alast name prompt 506 and anemail address prompt 508. The administrator may then share the link in a number of ways. For example, the link may be published on a website, it may be sent in an email campaign or an SMS text campaign. This operation of sharing the link corresponds to the distribute invitations withlinks operation 206 ofFIG. 2 . The activation of alink operation 208 ofFIG. 2 may result in theinterface 600 ofFIG. 6 . That is, thehost machine 104 supplies name text andaudio prompts 210, as shown inFIG. 2 . Prior to supplying theinterface 600 ofFIG. 6 , the user may be supplied with a registration page that includes the user's name information and prompts for collecting phonetic spelling of the name and other information about the name. -
FIG. 6 illustrates aninterface 600 with prompts for supplying name information. A first prompt 602 requests a telephone number. Asecond prompt 604 coordinates a web recording. Another prompt 606 allows the specification of textual instructions (e.g., prompts the user to input a phonetic description of a name). Alternately or in addition, the textual instructions may be collected through a registration page. - In the event that the user enters a telephone number, an automated telephone recording system is invoked. For example, an additional server may be connected to network 106 to supply a telephone recording system that is accessed by the
name module 142 via an Application Program Interface (API). In one embodiment, the commercial service Twilio® is used. Twilio is a cloud communications company based in San Francisco, Calif. Twilio facilitates the programmatic making and receiving of telephone calls. Services are accessed via the Twilio API. After a telephone number is entered, the user receives an automated telephone call. The automated telephone call prompts the user to record their name. For example, the user may be prompted to provide a name after a beep and then press # when completed. Keypad options may be supplied to allow a user to listen, record and end a call. Once the call ends, the recording is sent to thename module 142. - The web based recording may be based upon a Hypertext Markup Language (e.g., HTML5) audio recording. Alternately, an Adobe® Flash® audio recorder may be used. Another embodiment of the invention utilizes the client device's native audio/video recorder. On devices where native audio recorder access is not granted to mobile web applications (such as iOS® devices), the user supplies a video. The video file is then processed to strip the audio.
FIG. 7 is anexemplary interface 700 which may be used to collect an audio/video utilizing the client device's native audio/video recorder. -
Section 606 ofinterface 600 supplies prompts to a user. The prompts may relate to phonetic spellings, student identification number, graduation date and the like. Alternately or in addition, this information may be collected in a registration page. The collected textual information and voice recording (audio information) constitute a name guide. The user's name guide is associated with the name page to form a name guide. The user's name guide is associated with the name page using a model called a practice object, which associates a user id with an event id (where events are one-to-one mapped to name pages). The name guides/practice objects are the entries that appear on a name page. The recording link contains the code that uniquely identifies the name page. That code is read as a parameter with the following association: user/recording/nameguide/practiceobject with this particular name page. As shown inoperation 212 ofFIG. 2 , the voice recording and textual information is uploaded toserver 104. -
Prompts FIG. 5 are an example of an individual invite operation. A bulk invite operation may be coordinated through a file upload.FIG. 8 illustrates aninterface 800 to coordinate the upload of a file with individual names and contact information. For example, the file may be an Excel® spreadsheet containing email addresses and optionally other information (e.g., first name, middle name, last name, and other identifiers, such as school identification). Bulk email invitations may then be sent based upon the file information. The email may be originated from thename admin module 122 or thename module 142. - When an email invitation is generated, a ‘Practiceobject’ model object is created which references this name page using an event_id foreign key, and which contains a unique Hexdigest token. The email contains a unique recording link for this user, which uses this token as a parameter, for example: http://localhost:3000/users/new?token=d347092b4cebe671 f249f398275eb320d3884a8c
- This token is used to identify the Practiceobject when the user signs up, and thus the Name Page for which this user was invited. This system allows identification of the email to which an invitation was sent, to prevent abuse (e.g., recording a misleading NameGuide for another person, recording an inappropriate message, etc.), and to allow Customers/Admins to track responses and send automated reminders to users to register, record and re-record as needed.
- The
name module 142 is configured to identify if an email address is already in the system. If so, and if that email is associated with a registered user, that user's entry/NameGuide/recording will be copied to the relevant Name Page. If an email is just that of an invited user (for another Name Page) who has not yet registered, not only will an invitation be sent again, but when the user register and/or records, their entry/NameGuide/recording will be automatically coped to any Name Page for which the user was invited. This is useful because users might be invited for multiple Name Pages (different events, classes, businesses, etc). It is even more useful insofar as it allows seamless integration with the API/Directory Integration Service described below. For example, some customers may want all students or employees or organization members to record their names during matriculation/onboarding/recruitment, or in general. But specific users/Admins in the organization may want to have a Name Page with just the entries/NameGuides/recordings relevant to a particular event or purpose (e.g, for a graduation, for an awards ceremony, for given business team or meeting). Therefore, uploading an Excel/CSV file with just that set of user email addresses automatically creates a Name Page with just those entries for those users in that set who are already in the system, and invites any users needed for that Name Page (in that set) who are not already in the NameCoach system. Since a given user can have multiple entries in thename module 142, for example, different entries associated with different Name Pages, an interface is provided that allows one to tailor their NameGuides for different purposes. Interface 900 ofFIG. 9 is one example. Theinterface 900 includes individual name guides 902, 904 and 906 for different events. For example, a full name may be specified for a graduation or an awards ceremony. A short form name may be specified for a classroom setting or business meetings. -
FIG. 2 discloses an operation of supplying datastore navigation tools 218.FIG. 10 illustrates aninterface 1000 corresponding to such an operation. The interface includes acolumn 1002 with names and email addresses. The column may also include other information, such as student or employee identification. Acolumn 1004 has notes from the owner of the name (e.g., the “d” is soft).Column 1006 has audio information. That is, invoking the play button associated with a name results in an audio articulation of the name.Column 1008 has administrator notes. The administrator notes may include phonetic notes by the administrator. The notes may be entered after listening to the audio information. Such notes are often more useful to the administrator than the owner's own phonetic notes. Finally,column 1010 has prompts for actions, such as sending an email or deleting an entry. For example, an email may be sent requesting an individual to re-record a name. - The information in
FIG. 10 may be exported to another file format.FIG. 11 illustrates aninterface 1100 with a prompt 1102 to export information to an Excel® file.FIG. 12 illustrates the resultingfile 1200. - An embodiment of the invention includes the
name module 142 supporting an API to allow a customer to retrieve information about users on their Name Page(s) programmatically, and embed that information (including recordings) in their own systems or third party systems. For example, a school can embed student name recordings into their Student Information System, so that teachers can get name recordings along with their class lists. A business can embed employee name recordings into their business directory by placing a speaker button next to the name of each employee on their profile. A website can embed name recordings on the profiles of each user, e.g., a job search website can embed name recordings on the profile of each job applicant. - The
name module 142 has a link associated with each individual. A user can embed her link in an email message, a social network, an SMS text, etc. Activation of the link results in a call to thename module 142. The name module can then supply audio and textual name information. In one embodiment, thename module 142 supports a search function that allows third parties to search for a name to access audio and textual name information. - Embodiments of the invention allow the textual name information and audio name information to be supplemented with a photo of the user, information on the origin of the name, meaning of the name, story behind the name and the like. An embodiment of the
name module 142 supports search, sort and pagination functionality with respect to the names in a name page. Thename module 142 may also be configured to send automatic reminders to individuals that have not recorded a name. Thename module 142 may also be configured to selectively supply locked or read-only versions of a name page to certain individuals. - The following is an example of code to enable functions disclosed herein.
- class Customerkey<ActiveRecord::Base
-
- attr_accessible :event_id, :user_id
- belongs_to :event
- belongs_to :user
- validates :event_id, presence: true
- validates :user_id, presence: true
end
class Adminkey<ActiveRecord::Base
- attr_accessible :user_id, :event_id
- belongs_to :event
- belongs_to :user
- validates :user_id, :uniqueness=>{:scope=>:event_id}
- # this is to prevent a user from having multiple admin keys for the same event—that admin_id/user_id combo can only exist once in the adminkey table
- before_create :make_user_an_admin
private
- t.integer “admin_id”
- t.string “token”
- t.string “recording”
- t.string “request”
- t.text “notes”
- t.boolean “hidden”
- t.integer “length”
- t.datetime “created_at”, :null=>false
- t.datetime “updated_at”, :null=>false
- end
end
- An embodiment of the present invention relates to a computer storage product with a non-transitory computer readable storage medium having computer code thereon for performing various computer-implemented operations. The media and computer code may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well known and available to those having skill in the computer software arts. Examples of computer-readable media include, but are not limited to: magnetic media, optical media, magneto-optical media and hardware devices that are specially configured to store and execute program code, such as application-specific integrated circuits (“ASICs”), programmable logic devices (“PLDs”) and ROM and RAM devices. Examples of computer code include machine code, such as produced by a compiler, and files containing higher-level code that are executed by a computer using an interpreter. For example, an embodiment of the invention may be implemented using JAVA®, C++, or other object-oriented programming language and development tools. Another embodiment of the invention may be implemented in hardwired circuitry in place of, or in combination with, machine-executable software instructions.
- The foregoing description, for purposes of explanation, used specific nomenclature to provide a thorough understanding of the invention. However, it will be apparent to one skilled in the art that specific details are not required in order to practice the invention. Thus, the foregoing descriptions of specific embodiments of the invention are presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the invention to the precise forms disclosed; obviously, many modifications and variations are possible in view of the above teachings. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications, they thereby enable others skilled in the art to best utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated. It is intended that the following claims and their equivalents define the scope of the invention.
Claims (21)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/160,533 US20190051285A1 (en) | 2014-05-15 | 2018-10-15 | Link-based audio recording, collection, collaboration, embedding and delivery system |
US17/068,130 US11715455B2 (en) | 2014-05-15 | 2020-10-12 | Link-based audio recording, collection, collaboration, embedding and delivery system |
US18/228,901 US20230386444A1 (en) | 2014-05-15 | 2023-08-01 | Link-based audio recording, collection, collaboration, embedding and delivery system |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461994022P | 2014-05-15 | 2014-05-15 | |
US14/714,184 US10147414B1 (en) | 2014-05-15 | 2015-05-15 | Link-based audio-recording, collection, collaboration, embedding and delivery system |
US16/160,533 US20190051285A1 (en) | 2014-05-15 | 2018-10-15 | Link-based audio recording, collection, collaboration, embedding and delivery system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/714,184 Continuation US10147414B1 (en) | 2014-05-15 | 2015-05-15 | Link-based audio-recording, collection, collaboration, embedding and delivery system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/068,130 Continuation US11715455B2 (en) | 2014-05-15 | 2020-10-12 | Link-based audio recording, collection, collaboration, embedding and delivery system |
Publications (1)
Publication Number | Publication Date |
---|---|
US20190051285A1 true US20190051285A1 (en) | 2019-02-14 |
Family
ID=64451950
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/714,184 Active US10147414B1 (en) | 2014-05-15 | 2015-05-15 | Link-based audio-recording, collection, collaboration, embedding and delivery system |
US16/160,533 Abandoned US20190051285A1 (en) | 2014-05-15 | 2018-10-15 | Link-based audio recording, collection, collaboration, embedding and delivery system |
US17/068,130 Active 2036-04-10 US11715455B2 (en) | 2014-05-15 | 2020-10-12 | Link-based audio recording, collection, collaboration, embedding and delivery system |
US18/228,901 Pending US20230386444A1 (en) | 2014-05-15 | 2023-08-01 | Link-based audio recording, collection, collaboration, embedding and delivery system |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/714,184 Active US10147414B1 (en) | 2014-05-15 | 2015-05-15 | Link-based audio-recording, collection, collaboration, embedding and delivery system |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/068,130 Active 2036-04-10 US11715455B2 (en) | 2014-05-15 | 2020-10-12 | Link-based audio recording, collection, collaboration, embedding and delivery system |
US18/228,901 Pending US20230386444A1 (en) | 2014-05-15 | 2023-08-01 | Link-based audio recording, collection, collaboration, embedding and delivery system |
Country Status (1)
Country | Link |
---|---|
US (4) | US10147414B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11943390B1 (en) * | 2022-10-06 | 2024-03-26 | Krishna Koravadi | System and methods for easy, secure, error free and controlled information sharing via audio communication |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5566272A (en) * | 1993-10-27 | 1996-10-15 | Lucent Technologies Inc. | Automatic speech recognition (ASR) processing using confidence measures |
US6144938A (en) * | 1998-05-01 | 2000-11-07 | Sun Microsystems, Inc. | Voice user interface with personality |
US6757362B1 (en) * | 2000-03-06 | 2004-06-29 | Avaya Technology Corp. | Personal virtual assistant |
US20050033582A1 (en) * | 2001-02-28 | 2005-02-10 | Michael Gadd | Spoken language interface |
US20050275505A1 (en) * | 1999-07-23 | 2005-12-15 | Himmelstein Richard B | Voice-controlled security system with smart controller |
US20060057545A1 (en) * | 2004-09-14 | 2006-03-16 | Sensory, Incorporated | Pronunciation training method and apparatus |
US20090106368A1 (en) * | 2007-10-18 | 2009-04-23 | Adpickles, Inc. | Injection advertising technology |
US20090190728A1 (en) * | 2008-01-24 | 2009-07-30 | Lucent Technologies Inc. | System and Method for Providing Audible Spoken Name Pronunciations |
US20090323906A1 (en) * | 2008-04-29 | 2009-12-31 | Peeyush Jaiswal | Secure voice transaction method and system |
US20100110489A1 (en) * | 2008-11-05 | 2010-05-06 | Yoshimichi Kanda | Image forming apparatus, method of controlling the same based on speech recognition, and computer program product |
US20100120011A1 (en) * | 2008-11-10 | 2010-05-13 | Imentor Interactive | Technology platform and methods for facilitating, cultivating and monitoring mentoring relationships |
US20120173251A1 (en) * | 2011-01-03 | 2012-07-05 | Relay Holdings, Llc | Method and apparatus for enrolling a customer in a service while providing limited required personal information |
US20130055357A1 (en) * | 2011-08-15 | 2013-02-28 | Uniloc Luxembourg S.A. | Personal control of personal information |
US8543407B1 (en) * | 2007-10-04 | 2013-09-24 | Great Northern Research, LLC | Speech interface system and method for control and interaction with applications on a computing system |
US20140019127A1 (en) * | 2012-07-12 | 2014-01-16 | Samsung Electronics Co., Ltd. | Method for correcting voice recognition error and broadcast receiving apparatus applying the same |
US8827712B2 (en) * | 2010-04-07 | 2014-09-09 | Max Value Solutions Intl., LLC | Method and system for name pronunciation guide services |
US9188456B2 (en) * | 2011-04-25 | 2015-11-17 | Honda Motor Co., Ltd. | System and method of fixing mistakes by going back in an electronic device |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5758322A (en) * | 1994-12-09 | 1998-05-26 | International Voice Register, Inc. | Method and apparatus for conducting point-of-sale transactions using voice recognition |
US6223156B1 (en) * | 1998-04-07 | 2001-04-24 | At&T Corp. | Speech recognition of caller identifiers using location information |
US6012030A (en) * | 1998-04-21 | 2000-01-04 | Nortel Networks Corporation | Management of speech and audio prompts in multimodal interfaces |
US20020194260A1 (en) * | 1999-01-22 | 2002-12-19 | Kent Lawrence Headley | Method and apparatus for creating multimedia playlists for audio-visual systems |
DE19956747C1 (en) * | 1999-11-25 | 2001-01-11 | Siemens Ag | Speech recognition method for telecommunications system |
US7321856B1 (en) * | 2005-08-03 | 2008-01-22 | Microsoft Corporation | Handling of speech recognition in a declarative markup language |
US8489729B2 (en) * | 2006-03-14 | 2013-07-16 | Sap Ag | System and method for social service event processing and management |
MX2009000753A (en) * | 2006-07-20 | 2009-03-16 | Lg Electronics Inc | Operation method of interactive refrigerator system. |
US9640175B2 (en) * | 2011-10-07 | 2017-05-02 | Microsoft Technology Licensing, Llc | Pronunciation learning from user correction |
US9305565B2 (en) * | 2012-05-31 | 2016-04-05 | Elwha Llc | Methods and systems for speech adaptation data |
US8873721B2 (en) | 2012-09-25 | 2014-10-28 | Linkedin Corporation | Methods and systems for name pronunciation |
US9449599B2 (en) * | 2013-05-30 | 2016-09-20 | Promptu Systems Corporation | Systems and methods for adaptive proper name entity recognition and understanding |
US9741339B2 (en) * | 2013-06-28 | 2017-08-22 | Google Inc. | Data driven word pronunciation learning and scoring with crowd sourcing based on the word's phonemes pronunciation scores |
US9837075B2 (en) * | 2014-02-10 | 2017-12-05 | Mitsubishi Electric Research Laboratories, Inc. | Statistical voice dialog system and method |
-
2015
- 2015-05-15 US US14/714,184 patent/US10147414B1/en active Active
-
2018
- 2018-10-15 US US16/160,533 patent/US20190051285A1/en not_active Abandoned
-
2020
- 2020-10-12 US US17/068,130 patent/US11715455B2/en active Active
-
2023
- 2023-08-01 US US18/228,901 patent/US20230386444A1/en active Pending
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5566272A (en) * | 1993-10-27 | 1996-10-15 | Lucent Technologies Inc. | Automatic speech recognition (ASR) processing using confidence measures |
US6144938A (en) * | 1998-05-01 | 2000-11-07 | Sun Microsystems, Inc. | Voice user interface with personality |
US20050275505A1 (en) * | 1999-07-23 | 2005-12-15 | Himmelstein Richard B | Voice-controlled security system with smart controller |
US6757362B1 (en) * | 2000-03-06 | 2004-06-29 | Avaya Technology Corp. | Personal virtual assistant |
US20050033582A1 (en) * | 2001-02-28 | 2005-02-10 | Michael Gadd | Spoken language interface |
US20060057545A1 (en) * | 2004-09-14 | 2006-03-16 | Sensory, Incorporated | Pronunciation training method and apparatus |
US8543407B1 (en) * | 2007-10-04 | 2013-09-24 | Great Northern Research, LLC | Speech interface system and method for control and interaction with applications on a computing system |
US20090106368A1 (en) * | 2007-10-18 | 2009-04-23 | Adpickles, Inc. | Injection advertising technology |
US20090190728A1 (en) * | 2008-01-24 | 2009-07-30 | Lucent Technologies Inc. | System and Method for Providing Audible Spoken Name Pronunciations |
US20090323906A1 (en) * | 2008-04-29 | 2009-12-31 | Peeyush Jaiswal | Secure voice transaction method and system |
US20100110489A1 (en) * | 2008-11-05 | 2010-05-06 | Yoshimichi Kanda | Image forming apparatus, method of controlling the same based on speech recognition, and computer program product |
US20100120011A1 (en) * | 2008-11-10 | 2010-05-13 | Imentor Interactive | Technology platform and methods for facilitating, cultivating and monitoring mentoring relationships |
US8827712B2 (en) * | 2010-04-07 | 2014-09-09 | Max Value Solutions Intl., LLC | Method and system for name pronunciation guide services |
US20120173251A1 (en) * | 2011-01-03 | 2012-07-05 | Relay Holdings, Llc | Method and apparatus for enrolling a customer in a service while providing limited required personal information |
US9188456B2 (en) * | 2011-04-25 | 2015-11-17 | Honda Motor Co., Ltd. | System and method of fixing mistakes by going back in an electronic device |
US20130055357A1 (en) * | 2011-08-15 | 2013-02-28 | Uniloc Luxembourg S.A. | Personal control of personal information |
US20140019127A1 (en) * | 2012-07-12 | 2014-01-16 | Samsung Electronics Co., Ltd. | Method for correcting voice recognition error and broadcast receiving apparatus applying the same |
Also Published As
Publication number | Publication date |
---|---|
US20230386444A1 (en) | 2023-11-30 |
US10147414B1 (en) | 2018-12-04 |
US20210142780A1 (en) | 2021-05-13 |
US11715455B2 (en) | 2023-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9449305B2 (en) | Method of organizing a database according to an event for a web-based conference collaboration tool with dynamic content and roles | |
US8353012B2 (en) | Internet-based group website technology for content management and exchange (system and methods) | |
US9712569B2 (en) | Method and apparatus for timeline-synchronized note taking during a web conference | |
US8312091B2 (en) | Methods and systems for organizing meetings | |
US20130067302A1 (en) | Integrating a calendaring system with a mashup page containing widgets to provide information regarding the calendared event | |
KR100521297B1 (en) | System for communication and computer-readable recording medium | |
US20120084286A1 (en) | Method and apparatus for group coordination of calendar events | |
US20090171690A1 (en) | System and method for a web-based people directory | |
JPH1125099A (en) | Electronic conference system | |
US7787489B2 (en) | Mobile data distribution | |
US20230386444A1 (en) | Link-based audio recording, collection, collaboration, embedding and delivery system | |
EP3206142B1 (en) | Information processing system and information processing method | |
CN105205757A (en) | Android-based elective system | |
US20130197902A1 (en) | System, method and computer program for sharing audible word tags | |
CN108737249B (en) | Method for adjusting group business card, electronic equipment and computer readable storage medium | |
CN110163577B (en) | Form dynamic management method and system based on authority management | |
Wang et al. | The application of SaaS model in network education-take google apps for example | |
CN109886586A (en) | Meeting cloud system | |
CN110555201B (en) | Knowledge document generation method, device, electronic equipment and storage medium | |
DeFebbo et al. | Microblogging for medical libraries and librarians | |
US11763258B2 (en) | Workflows for documents | |
US11688492B1 (en) | Method and system for automated population outreach | |
US10820163B1 (en) | Method and system for automated population outreach | |
TWI328785B (en) | Learning system and method with the agent | |
CN114448924B (en) | User group upgrading method, device, equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: NAMECOACH, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SHANBHAG, PRAVEEN;REEL/FRAME:047343/0169 Effective date: 20181029 |
|
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: NON FINAL ACTION MAILED |
|
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: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONMENT FOR FAILURE TO CORRECT DRAWINGS/OATH/NONPUB REQUEST |