Source: https://insight.rpxcorp.com/pat/US6404876B1
Timestamp: 2020-02-21 20:50:53
Document Index: 370523596

Matched Legal Cases: ['arty 1', 'arty 2', 'arty 126', 'arty 112', 'arty 126', 'arty 112']

Patent US 6,404,876 B1
Issued: 06/11/2002
Est. Priority Date: 09/25/1997
1. A method for connecting a calling party in a telecommunications network according to one or more utterances of the calling party during a call, said method comprising:
pre-storing a unique callname for each of a plurality of terminating parties, each of the callnames being independent of the calling party;
associating pointer words with combinations of the callnames;
receiving a signal from the calling party, said signal including signal information that includes the calling party'"'"'s utterances and non-speech data;
compartmentalizing the plurality of stored callnames at the time of the call to identify a subset of at least two of the stored callnames based on the non-speech data;
recognizing one of the stored callnames in the subset based on the calling party'"'"'s utterances, and connecting the calling party to the terminating party corresponding to the recognized callname.
AUTOMATIC CREATION OF COMPLEX CONVERSATIONAL NATURAL LANGUAGE CALL ROUTING SYSTEM FOR CALL CENTERS
US 20110069822A1
Efficient presentation of correction options in a speech interface based upon user selection probability
US 7,885,816 B2
Karen L. Johnson, Timothy A. Timmins, Christopher A. Huey, John S. Miller, Philip A. Ljubicich
US 7,940,906 B2
RE42539E1
US 20110211496A1
US 7,991,150 B2
Computer generated prompting
US 8,064,573 B2
METHOD AND APPARATUS FOR USER ASSOCIATION AND COMMUNICATION IN A WIDE AREA NETWORK ENVIRONMENT
US 20100315480A1
Phone number replace code system and method
US 7,489,950 B2
SYSTEM AND METHOD FOR PROCESSING TELECOMMUNICATION CALLS
US 20090136017A1
System and method for star code dialing
US 7,555,111 B2
US 20090164214A1
Methods and systems for selecting a buddy from a buddy list and for placing call to a buddy
US 20080013699A1
Voice Activated Communication Using Automatically Updated Address Books
US 20080037720A1
Voice extensible markup language enhancements of intelligent network services
US 7,336,771 B2
Voice extensible markup language-based announcements for use with intelligent network services
US 7,340,043 B2
Method and apparatus for voice-over IP services triggered by off-hook event
US 7,343,005 B2
TELEPHONE COMMUNICATION SYSTEM AND METHODS
US 20080091612A1
Kirk Joseph Witecha
Methods for Voice Activated Dialing
US 20080095328A1
Methods and systems for voice activated dialing
US 7,356,131 B2
US 20080101555A1
METHOD AND DEVICE TO DISTINGUISH BETWEEN VOICE CONVERSATION AND AUTOMATED SPEECH RECOGNITION
US 20080140418A1
Directory assistance utilizing a personalized cache
US 7,386,110 B2
US 7,415,415 B2
US 20080273674A1
Methods, Systems, and Products for Billing Calls
US 20080310614A1
US 7,206,389 B1
US 20070121882A1
US 20070116212A1
US 20070096947A1
US 20070171098A1
US 7,239,895 B2
Voice response apparatus and method of providing automated voice responses with silent prompting
US 7,260,187 B1
US 20070258572A1
US 6,947,539 B2
LYRIX INC.
US 6,654,451 B1
US 6,895,083 B1
Multimedia data transmission system
US 6,985,564 B1
MAVENIR FRANCE SA
Enhanced directory assistance automation
US 6,999,563 B1
Integrated call completion based upon call transfer rules
US 20060062370A1
US 20060093120A1
Method and apparatus for Web direct-dialing connection
US 7,072,459 B2
US 20060183468A1
Wireless device to access network-based voice-activated services using distributed speech recognition
US 20060235684A1
US 7,149,301 B2
US 20050018829A1
US 20050036601A1
US 20050063526A1
Cross section for a supersonic airplane
US 20050061916A1
US 20050123104A1
US 20050131684A1
US 20050125270A1
Method and system for adaptively directing incoming telephone calls
US 20050152511A1
SCANSOFT CANADA INC.
Caller independent disambiguation for interactive voice response systems
US 20050226396A1
US 20040032941A1
Voice dialing methods and apparatus implemented using AIN techniques
US 6,744,861 B1
Voice extensible markup language-based web interface with intelligent network services
US 20040141595A1
US 20040247094A1
System and method for making calls to vanity numbers using voice dialing
US 20030007608A1
US 20030048892A1
US 20030063612A1
Public telephone name server network
US 20030198338A1
Li Kun Bai
US 20030223403A1
US 20020126819A1
System and method for making telecommunication calls
US 20020164978A1
US 8,081,739 B2
US 8,135,000 B2
US 8,150,001 B2
Generating reference variations
US 8,149,999 B1
US 8,379,803 B2
US 8,509,396 B2
US 8,515,026 B2
US 8,553,875 B2
US 8,611,515 B2
Method and Apparatus for Identifying an Active Participant in a Conferencing Event
US 20130339455A1
US 8,761,352 B2
METHOD AND SYSTEM FOR AUTOMATICALLY IDENTIFYING VOICE TAGS THROUGH USER OPERATION
US 20140207466A1
US 8,964,949 B2
US 9,036,798 B2
US 9,148,499 B2
Dynamic inference of voice command for software operation from help information
US 9,583,097 B2
US 5,003,584 A
Method for automatic speech recognition of arbitrary spoken words
US 5,724,481 A
Speaker verification with cohort normalized scoring
US 5,675,704 A
Adaptive decision directed speech recognition bias equalization method and apparatus
US 5,812,972 A
Apparatus and method for transparent telephony utilizing speech-based signaling for initiating and handling calls
US 5,594,784 A
US 6,208,713 B1
Automated directory assistance system utilizing priori advisor for predicting the most likely requested locality
US 6,122,361 A
Voice-operated services
US 5,940,793 A
Method for processing collect calls
US 5,627,887 A
Method and apparatus for facilitating the completing of telephone regional toll-free calls from outside the region
US 5,563,933 A
US 5,452,340 A
2. The method of claim 1, in which the step of compartmentalizing further includes:
compartmentalizing said subset based on one or more of the pointer words recognized in the calling party'"'"'s utterances.
3. The method of claim 1, in which the step of associating includes the substep of associating callname categories with combinations of said callnames, and in which the step of compartmentalizing further includes:
compartmentalizing said subset based on one or more callname categories recognized in the calling party'"'"'s utterances.
4. The method of claim 1, in which the step of associating includes the substep of associating callname categories with combinations of said callnames, and in which the step of recognizing includes the substep of identifying a stored callname or a callname category that matches the calling party'"'"'s utterances within a predetermined threshold minimum fit.
when no stored callname or callname category in the subset matches utterances of the calling party within the predetermined threshold minimum fit, sequentially playing back a preselected number of playback candidates to the calling party, said playback candidates consisting of stored callnames or callname categories in the subset that match the calling party'"'"'s utterances with less than the predetermined threshold minimum fit; and
after each playback candidate thus played back, confirming with the calling party whether the playback candidate that was just played back corresponds to the calling party'"'"'s utterances.
7. The method of claim 6, in which the preselected number of playback candidates played back is no more than 5.
8. The method of claim 6, in which playback candidates are sequentially played back in decreasing degree of fit with the calling party'"'"'s utterances.
upon confirmation by the calling party of a playback candidate, determining whether said confirmed playback candidate is a stored callname or a callname category;
if a callname category, listing a predetermined number of preselected callnames from the subset within the confirmed callname category; and
after each stored callname thus listed, confirming with the calling party whether the callname that was just played back corresponds with a terminating party to which the calling party desires to be connected.
10. The method of claim 9, in which the predetermined number of preselected callnames is no more than 5.
12. The method of claim 1, in which the calling party'"'"'s utterances include a callname but not a callname category, and in which the step of recognizing includes the substep of:
suggesting to the calling party to further utter a desired callname category upon failure to match one of the stored callnames in the subset to said uttered callname with better than a predetermined threshold minimum fit.
13. The method of claim 12, in which the predetermined threshold minimum fit is 98%.
21. The method of claim 1, in which the step of compartmentalizing includes the substep of adapting said subset according to speech characteristics recognized in the calling party'"'"'s utterances.
(a) tongue;
(b) dialect;
(c) accent; and
(d) communications device signature.
23. The method of claim 21, in which the step of recognizing includes the substep of filtering out said recognized speech characteristics in comparing stored callnames with said received signal information.
means for pre-storing a unique callname for each of a plurality of terminating parties, each of the callnames being independent of the calling party;
means for associating pointer words with combinations of the callnames;
means for receiving a signal from the calling party, said signal including signal information that includes the calling party'"'"'s utterances and non-speech data;
means for compartmentalizing the plurality of stored callnames at the time of the call to identify a subset of at least two of the stored callnames based on the non-speech data;
means for recognizing one of the stored callnames in the subset based on the calling party'"'"'s utterances; and
means for connecting the calling party to the terminating party corresponding to the recognized callname.
View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 65, 66)
25. The computer program product of claim 24, in which the means for compartmentalizing further includes:
means for subsequently compartmentalizing said subset based on one or more of the pointer words recognized in the calling party'"'"'s utterances.
26. The computer program product of claim 24, in which the means for associating includes means for associating callname categories with combinations of said callnames, and in which the means for compartmentalizing further includes:
means for subsequently compartmentalizing said subset based on one or more callname categories recognized in the calling party'"'"'s utterances.
27. The computer program product of claim 24, in which the means for associating includes means for associating callname categories with combinations of said callnames, and in which the means for recognizing includes means for identifying a stored callname or a callname category that matches the calling party'"'"'s utterances within a predetermined threshold minimum fit.
means for sequentially playing back a preselected number of playback candidates to the calling party when no stored callname or callname category in the subset matches utterances of the calling party within the predetermined threshold minimum fit;
said playback candidates consisting of stored callnames or callname categories in the subset that match the calling party'"'"'s utterances with less than the predetermined threshold minimum fit; and
means for confirming with the calling party after each playback candidate thus played back whether the playback candidate that was just played back corresponds to the calling party'"'"'s utterances.
30. The computer program product of claim 29, in which the preselected number of playback candidates played back is no more than 5.
31. The computer program product of claim 29, in which playback candidates are sequentially played back in decreasing degree of fit with the calling party'"'"'s utterances.
means for determining, upon confirmation by the calling party of a playback candidate, whether said confirmed playback candidate is a stored callname or a callname category;
means for listing a predetermined number of preselected callnames from the subset within the confirmed callname category, said means for listing responsive to a determination that said confirmed playback candidate is a callname category; and
means for confirming with the calling party after each stored callname thus listed whether the callname that was just played back corresponds with a terminating party to which the calling party desires to be connected.
33. The computer program product of claim 32, in which the predetermined number of preselected callnames is no more than 5.
35. The computer program product of claim 24, in which the calling party'"'"'s utterances include a call name but not a callname category, and in which the means for recognizing includes:
means for suggesting to the calling party to further utter a desired callname category upon failure to match one of the stored callnames in the subset to said uttered callname with better than a predetermined threshold minimum fit.
36. The computer program product of claim 35, in which the predetermined threshold minimum fit is 98%.
44. The computer program product of claim 24, in which the means for compartmentalizing includes means for adapting said subset according to speech characteristics recognized in the calling party'"'"'s utterances.
46. The computer program product of claim 44, in which the means for recognizing includes means for filtering out said recognized speech characteristics in comparing stored callnames with said received signal information.
a resource platform, the resource platform including means for interactive speech recognition and response;
an intelligent peripheral controller;
means for maintaining the switch, the resource platform and the intelligent peripheral controller in data communication with each other; and
the switch, the resource platform and the intelligent peripheral controller in combination further comprising;
means for pre-storing a unique callname for each of a plurality of terminating parties, each of the callnames being independent of tie calling party;
means for receiving said incoming signals;
means for recognizing one of the stored callnames in the subset based on the received calling party'"'"'s utterances; and
View Dependent Claims (48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 67, 68, 69, 70)
48. The service control point of claim 47, in which the means for compartmentalizing further includes:
49. The service control point of claim 47, in which the means for associating includes means for associating callname categories with combinations of said callnames, and in which the means for compartmentalizing further includes:
50. The service control point of claim 47, in which the means for associating includes means for associating callname categories with combinations of said callnames, and in which the means for recognizing includes means for identifying a stored callname or a callname category that matches the calling party'"'"'s utterances within a predetermined threshold minimum fit.
means for sequentially playing back a preselected number of playback candidates to the calling party when no stored callname or callname category in the subset matches utterances of the calling party within the predetermined threshold minimum fit, said playback candidates consisting of stored callnames or callname categories in the subset that match the calling party'"'"'s utterances with less than the predetermined threshold minimum fit; and
means for confirming with the calling party after each playback candidate thus played back whether the playback candidate that was just played back corresponds to the calling part'"'"'s utterances.
53. The service control point of claim 52, in which the preselected number of playback candidates played back is no more than 5.
54. The service control point of claim 52, in which playback candidates are sequentially played back in decreasing degree of fit with the calling party'"'"'s utterances.
56. The service control point of claim 55, in which the predetermined number of preselected callnames is no more than 5.
58. The service control point of claim 47, in which the calling party'"'"'s utterances include a callname but not a callname category, and in which the means for recognizing includes:
59. The service control point of claim 58, in which the predetermined threshold minimum fit is 98%.
67. The service control point of claim 47, in which the means for compartmentalizing includes means for adapting said subset according to speech characteristics recognized in the calling party'"'"'s utterances.
69. The service control point of claim 47, in which the means for recognizing includes means for filtering out said recognized speech characteristics in comparing stored callnames with said received signal information.
pre-storing a unique H e for each of a plurality of terminating parties, each of the callnames being independent of the calling party;
receiving a signal that includes the calling party'"'"'s utterances from the calling party;
screening the calling party based on prior interaction by the calling party to determine whether to permit the calling party to proceed;
recognizing one of the stored callnames in the calling party'"'"'s utterances when the calling party is permitted to proceed; and
connecting the calling party to the terminating party corresponding to the recognized callname.
72. A method for connecting a calling party in a telecommunications network according to one or more utterances of the calling party during a call, said method comprising:
recognizing one of the stored callnames in the calling party'"'"'s utterances when the calling party is permitted to proceed;
determining that the recognized callname corresponds to multiple locations of the terminating party;
determining a location of the terminating party closest to the calling part; and
connecting the calling party to the terminating party corresponding to the recognized callname at the determined location.
Prior art voice activated dialing utilizes voice recognition technology to allow the caller to subscribe to a service and then be able to call other parties by speaking a key word or phrase into their receiver such as the called party'"'"'s name, title or a location (e.g., “call Mike,” “call doctor,” or “call home.”) This can be done as soon as the phone is off hook, but may also be activated via an access or activation number or code. Typically a stand alone voice recognition processor is located in a local central office near the subscriber as an adjunct to the switch. A unique file is set up for each calling subscriber who is at liberty to populate it with key words of the subscriber'"'"'s choosing. Except for system maintenance, no one but the subscriber has access and control of the calling file in the data base. While most current applications of voice activated dialing involve a data base housed in a local central office, there are also technologies that place this function either in the customer'"'"'s telephone equipment, or in a central open access network location.
Moreover, existing voice activated dialing services are generally limited in the number of terminating locations that can be reached, based on the set of names per subscriber. Currently, a typical subscriber data file has a limited capacity of approximately 60 names for initiating voice activated calls. The number of businesses that will benefit from open access network control voice activated dialing exceeds this current 60 name per subscriber capacity within existing technology. In all probability, only a small fraction of a business'"'"'s market or potential customers will actually be subscribed to voice activated dialing. In fact, most businesses will hope to generate business from customer prospects who, even if they are voice activated dialing subscribers, will most likely not have programmed the business'"'"'s name into their personal voice dialing file. Businesses will want to be in control of making their name accessible to their entire market. Thus, unless voice activated dialing is made available to all potential customers, it is of little value to businesses trying to attract telephone commerce.
Further, by being under network control, the service is not dependent on a designated line and is thus available to users anywhere on the Public Switched Telephone Network (“PSTN”). Generally, the system solicits callers to speak the name of a desired terminating party, which advantageously is the name of a subscribing business. The system will then run the caller'"'"'s voice signals against records in one or more databases, and when a match is made, will connect the caller to the matched terminating party. Advantageously, the subscribing business (or other entity interested in receiving calls) pays for the service much the way that the toll charges on “800” calls are paid for. The present invention nonetheless also contemplates and discloses an embodiment in which the calling party may pay for calls. The quantity of word-to-routing number translations, or call completions using CVD is recorded for billing. Callers may access the service using an 800 number, a common access code, or an abbreviated number. CVD involves network control voice activated call routing using one or several common central service control point(s) and data base(s).
A still further technical advantage of CVD is that it features intelligence in the IN that analyzes speech characteristics of the calling party, the geographic location of the calling party, and the geographic location of the terminating party against stored data. This intelligence then uses the results to identify sets of businesses most likely to be of interest to the caller, and also adapts voice recognition to interpret the caller'"'"'s utterances more accurately. As a result, the effective performance of the system is optimized, because the caller'"'"'s utterances will be compared against a smaller vocabulary of entries, and with more precision. This may in turn reduce the amount of input and interaction expected of the calling party in identifying and being connected to the desired terminating party. Examples of this intelligence, to be described more fully below, include:
(b) Identifying “pointer” words within a calling party'"'"'s utterance to pre-defined groups of business types likely to include the desired terminating party;
IPC Host 8 also contains, or has access to, further intelligence in which calling party 1'"'"'s voice information may be matched with more precision to identify desired terminating party 2. As described in more detail herein, this intelligence may include accent or language matching features, regional and national terminating party subsets based on ANI or other call origin identifier, and predicted likely terminating parties based on historical calling patterns.
In each of FIGS. 3, 4 and 5, enlargements A and B represent the architectures found within LATAs ABC and XYZ respectively to enable the deployments illustrated. Further, in each of FIGS. 3, 4 and 5, inset C represents an embodiment of the CVD architecture described in more detail above with reference to FIGS. 1 and 2. It will be seen that inset C is identical in each of FIGS. 3, 4 and 5. In each of insets C, IPC Host 109 is connected to other components via ethernet 108. Computer means 111 includes the Resource Platform containing IVRRs and voice recognition software, and the intelligence and stored data used by the system to match the caller'"'"'s voice signals to a desired terminating party. Switch 110 includes the matrix switch through which voice signals may be routed to computer means 111 along voice line 106. Interface 107, connected via signaling line 105, allows the architecture to send and receive out-of-band signals, such as ANI, to facilitate activities such as call treatment and routing.
If EO 315 is a service switching point (SSP), then a query is routed to service transfer point (STP) 316 for title translation. From STP 316 the number is then routed to the LEC'"'"'s appropriate service control point (SCP) 317.
Once POTS number 127 is identified, the second leg of the call may then be set up with a link from the CVD SCP to terminating party 126. Interexchange facilities are used (interexchange line 324, interexchange offices 323, terminating party'"'"'s LEC switching office 325). The connection is completed and the conversation between calling party 112 and terminating party 126 takes place. Both legs of the call to and from the CVD SCP are maintained during the call by the CVD SCP. Once the call is complete, IPC Host 109 in the CVD SCP registers that a call has occurred and logs a call record, advantageously later to be used as a basis for invoicing for the service.
FIG. 4 illustrates deployment of the architecture of the present invention under local 800 access. Local 800 access works much the same as inter-exchange 800 access as described above with reference to FIG. 3, except that the CVD SCP is decentralized within LATA ABC, and thus no inter-exchange LATA facilities are necessary to transport calling party 112'"'"'s voice to the CVD SCP for key word recognition and translation.
Thus, under this deployment, when SCP 317 reads access number 313 and recognizes it as a local 800 number, translation to the POTS number for the CVD service takes place within SCP 317, which houses the LEC'"'"'s local 800 data base. The call is then routed to a local, and advantageously the nearest, exchange office 419 housing CVD.
Once in the CVD system, the IPC Host reads the ANI or other identifier of the calling party'"'"'s origin (Block 608). At this point, intelligent processing features to be described in greater detail below associate the calling party'"'"'s origin with relevant directories and vocabularies (Block 610). These directories and vocabularies may be a selected based on a likely set of local, regional and national businesses to be called, or expecting speech patterns or accents indigenous to a particular geographic area in which the ANI may be found.
The call flow then advantageously screens out calling parties who are either having extreme difficulty operating the service, or who are wasting the service'"'"'s resources. CVD determines whether the calling party has been disconnected by the system multiple times in the last few minutes (Block 612). For example, attention might be given if the same calling party has been disconnected by CVD more than six times in the last ten minutes. If so, CVD may either connect this calling party to a live operator or automatically disconnect (Block 614). If, however, the calling party passes this test, then voice response and branding welcome the calling party to CVD, and prompt the calling party to “speech connect” (Block 616). CVD then enables its speech recognition capability, setting it to time out following a predetermined period (for example 2 seconds) of silence from the calling party (Block 618).
Turning now to FIG. 7A, CVD first waits the timeout period (as noted, for example, two seconds) to allow the calling party to initiate voice interactivity without further prompting (Block 710). If, after this period, CVD has not received any voice commands from the calling party, CVD prompts the calling party to speak the specific callname and/or the business type that is desired to be connected to (Block 712). Although not specifically illustrated on FIG. 7A, it should be noted that during this prompt, as with all other prompts in the CVD system, the calling party may advantageously interrupt with spoken commands. This feature is known in the art as “barge-in.” During a barge-in, voice response within CVD detects the calling party'"'"'s speech and immediately terminates the remainder of the prompt or the menu. CVD then acts in accordance with the calling party'"'"'s spoken instructions.
It should be noted that ideally, as prompted in Block 712, the calling party will speak the callname (the name of the entity or business, for example, that the caller desires to reach) and the business type of the business desired to be connected to. For example, the caller might ideally say “Domino'"'"'s Pizza” or “Baylor Hospital.” In this way, if CVD is unable to recognize the specific callname as spoken, it may nonetheless be able to recognize the business type and orient further interactivity with the calling party from there. This step provides at least two advantages. First, in proceeding to identify a specific callname, the calling party need not be interrogated further as to the business type desired, since it has already been identified. Second, the population of potential businesses that the calling party may reasonably be expected to be trying to reach may also be immediately compartmentalized according to the recognized business type. Both advantages will tend to reduce processing time required for CVD to connect the calling party and will also optimize the amount of processing required to facilitate that connection.
It will be nonetheless understood that if the calling party does not speak both callname and business type together, CVD will still process the calling party'"'"'s inquiry according to the utterance received. If the utterance is recognized as either a callname or a business type, then CVD will continue processing based on that recognition. On the other hand, if the utterance is not recognized, then CVD will prompt the calling party for a business type to compartmentalize the population of potential businesses into a smaller group before undertaking further callname matching.
Assuming that the calling party has spoken a specific callname and/or a type of business, the system then searches information at its disposal for a speech pattern match (Block 720). In searching databases and other information available to it at that time, CVD may also advantageously employ various intelligent processing features described in further detail below. Such intelligent processing features may include identifying a particular speech pattern or accent and adapting voice recognition to it, or recognizing that the communications device being utilized by the calling party is a non-standard handset, and then adapting voice recognition to reception peculiarities expected of that type of communications device. Such features may also include further compartmentalizing of the vocabularies and directories already identified. As described in greater detail below, this further compartmentalizing associates pre-defined “pointer” words recognized in the calling party'"'"'s utterance with specific types of businesses within the vocabularies and directories previously selected based on ANI in Block 610. Analogous compartmentalizing may similarly be enabled based upon recognition of a business type in the calling party'"'"'s utterance.
Let it now be assumed that the calling party says “List” in response to the prompt in Block 726. CVD identifies one or more businesses that are available to the calling party in his/her location, and then lists them to the calling party (Blocks 728 and 738). Ideally, the list to be presented to the calling party will not be more than 5 items long, although the present invention is not specific to a particular number of items. The listing process is advantageously accomplished by interactive voice response, in which CVD replays the names of businesses on its list, and after each one, gives the calling party an opportunity to speak “Yes” or “No”. It will be understood that the calling party may also respond by a medium other than voice, such as DTMF from the calling party'"'"'s telephone device. With each successive “No” before a “Yes,” CVD recites the next business on the list. If the calling party responds “No” to every line-of-business title on the list, then CVD gives the calling party another opportunity to either speak the desired specific callname or to say “List” again (Block 740). Of course, the calling party may also disconnect at this point. If the calling party responds “No” to every business offered a second time, CVD informs the calling party that it is unable to complete the call, and then terminates the call (Block 736). Although not illustrated, it will also be understood that instead of terminating the call, CVD may also refer the calling party to a telephone directory, or suggest that the calling party hold for a live directory assistance operator.
On the other hand, if CVD cannot make a match better than the predetermined threshold, then it attempts to make a match using a replay/confirmation methodology, analogous to when the calling party'"'"'s response to the initial prompt in Blocks 710 or 714 could not be matched in Blocks 720 or 722 better than the predetermined threshold of fit. With further reference to FIG. 7C, therefore, CVD first compiles a list of specific callnames in its database, as compartmentalized according to prior processing, and advantageously organizes this list in decreasing order of match “fit” (Block 744). CVD then replays these callnames sequentially, starting with the best match, pausing after each one to ask the calling party to confirm whether the particular match is the desired callname (also Block 744). If the calling party responds “No” to every callname that CVD has compiled on its list, then on the first complete no-match, the calling party is given another opportunity to speak the name of the callname or business type of the party desired to be connected to (Blocks 748 and 750). In being given the opportunity to try again, CVD may advantageously also suggest to the calling party that if it was having trouble locating a particular callname, it might have better success if the calling party first stated the business type in which the callname might be found (Block 750). Also, it is possible that the calling party might prefer to disconnect rather than try again, or be referred to a telephone directory or a live operator.
Turning now to FIG. 8, it is assumed that CVD has now identified the calling party'"'"'s utterance to a specific callname on file in the CVD database. It should be noted at this point that the CVD database may contain callnames associated with all kinds of businesses, including businesses that subscribe to the CVD service and others that do not.
CVD then applies intelligent processing features, where applicable, in translating the previously-identified callname to a specific POTS or 800 number on file to connect to (Blocks 812A and B, Blocks 814A and B). In many cases, there will be only one number on file for the business, and so no special processing will apply. In the case of multi-site businesses, however, CVD may associate the ANI or Zip Code of the calling party to the business site nearest the geographic origin of the calling party. Alternatively, CVD may determine whether the current time of day is within the business'"'"' normal operating hours. Alternatively again, CVD may provide the calling party with a menu selection of optional departments within a large multi-department business with multiple CVD numbers on file.
Once the callname has been translated into a number and a connection has been made, CVD then monitors to determine whether the call exceeds a predefined short period in length, such as 5 seconds (Blocks 816A and B), and if so, assumes that the connection is correct and the business is as intended by the calling party. In this case, if the business is a CVD subscriber, the billing account for the business is debited for the call (Block 820). If the business is not a subscriber, and the calling party has agreed to pay for the connection, then a record of the call is made and is exchanged to the calling party'"'"'s carrier for calling party billing (Block 822).
On the other hand, if the connection lasts less than the predefined short period, CVD assumes that the customer is either incorrect or not the calling party'"'"'s intended connection, in which case a record of the call is made, but neither the business nor the calling party is billed for the call (Block 824).
It has been mentioned above in reference to one or more preferred embodiments herein that CVD may also have intelligence at its disposal to improve the precision with which it recognizes a calling party'"'"'s voice command and identifies it to a terminating party. As discussed above, and now with reference to FIG. 1, this intelligence takes the form of software and data at the disposal of IPC Host 8 at CVD SN/SCP 11. Further, also as discussed above in reference to FIGS. 6 and 7, this intelligence may come into play in the CVD call flow once the calling party'"'"'s ANI or other identifier has been recognized (Block 610), and/or when the calling party has spoken a command (Blocks 720 and 748), or when a series of callnames or types of business is being compiled to offer to the calling party for confirmation (Blocks 738 and 744).
An aspect of this intelligence is recognizing that as more and more CVD subscribers become part of the system, it becomes less and less practical for all calling parties accessing CVD to have all CVD subscribers available to them. First, if all CVD subscribers are available to all calling parties, the number of comparisons required between a calling party'"'"'s utterance and the CVD callnames on file will grow exponentially as use of the system grows. This will place high demands on processing capabilities and will tend to increase response times. Further, if decentralized CVD SCPs are deployed such as shown in reference to FIG. 6, there will necessarily be excessive redundancy of stored information.
Let it be assumed in FIG. 9 that CVD has recognized that the calling party is seeking a type of business 910 with “Auto Repair” as the title. CVD has also recognized by ANI that the calling party has originated from an (Area Code)-NXX of (212)-224 (item 920). Accordingly, CVD identifies a database subset 915 that is associated with (212)-224. Subset 915 contains national CVD subscribers Goodyear, Firestone, Sears and Walmart, which are all national auto repair centers with outlets near most calling parties nationwide. Subset 915 also associates A 1 Auto Repair and Car Care, which are local auto repair CVD subscribers nearby to (212)-224, but not to other (Area Code)-NXX combinations. Note also that other local auto repair CVD subscribers such as Mel'"'"'s Garage and Al'"'"'s Automotive are not nearby to (212)-224, and so therefore are not associated with subset 915. When CVD attempts to find a match with the calling party'"'"'s spoken callname, therefore, as in Block 720 as shown on FIG. 7A, the intelligence within CVD has already directed the call to subset 915, based on ANI analysis as shown in block 610 on FIG. 6 and subsequent recognition of the “Auto Repair” business type.
A further basis on which to create useful subsets of the CVD database is the calling party'"'"'s own calling history. By tracking and logging data regarding the calling patterns made by individual calling parties, or groups thereof, calling patterns will emerge that may be used to define “archival” subsets of the CVD subscriber database. Cross-referencing a historical subset with national/local subsets as shown in FIG. 9, will better define a group of CVD subscribers likely to match a spoken callname received from a particular calling party. It will also be understood that calling pattern analysis may be used at both an individual level and a group level to facilitate identification of useful historical subsets.
A still further basis on which to create useful subsets of the CVD database is by associating “pointer” words, recognized from the calling party'"'"'s utterance, with groups of business types categorized on the database. It will be understood that “pointer” words refer to certain key words in language that characterize some business types and not others. For example, “agency” is a pointer word that could often be associated with “travel,” “real” estate” or “advertising,” but rarely, if ever, with “restaurant,” “bank” or “car dealer.” Thus, recognition of pointer words may be used to further limit or compartmentalize subsets of CVD subscribers potentially likely to be of interest to a calling party. Further examples of “pointer” words are illustrated below in Table 1:
TABLE 1 POINTER WORD INCLUDES EXCLUDES
Broker Stock Auto Repair Real Estate Restaurant Pawn Swimming Pool Repair Auto Bank Appliance Travel Home Insurance Firm Accounting Plumber Law Grocery Consulting Pharmacy
Accordingly, CVD uses intelligence to recognize pointer words in the calling party'"'"'s utterances. Advantageously, this may be done at any time during a CVD call when utterances are received from the calling party. CVD may then use the recognized pointer words henceforth from that point in the call to facilitate connection to the desired terminating party.
For example, with reference to FIG. 7A, CVD will ideally recognize pointer words from the calling party'"'"'s original utterance in Blocks 710 or 712. Alternatively, CVD may recognize pointer words from an utterance made in response to the offer of a list of callnames at Block 726 on FIG. 7B.
In this way, the vocabulary of likely CVD subscribers who must be matched with the calling party'"'"'s spoken callname is reduced, thereby optimizing processing power demands and response times. The precision with which a spoken callname is matched to a CVD subscriber is also likely to be enhanced.
A still further attribute of CVD intelligence recognizes the need also to subsequently “filter out” speech characteristics (such as tongue, dialect, accent or communications devices signature, as described above) in comparing the calling party'"'"'s utterances to callnames and/or business types stored in the CVD database. It will be appreciated that while it is advantageous to recognize these speech characteristics and then use said recognition to compartmentalize the database and improve speech recognition precision, subsequent comparison against stored callnames and/or business types will in fact be enhanced if the speech characteristic can be compensated for. Accordingly, CVD advantageously makes this compensation by filtering out recognized speech characteristics prior to comparing callnames against the calling party'"'"'s utterances.
Verizon Corporate Services Group Incorporated (Verizon Communications Inc.)
Karis, George Demetrios, Smith, Robert C.
379/67.1, 379/71, 379/72, 379/80, 379/88-1-, 379/88.07, 379/88.08, 379/88.16, 379/88.18, 379/88.23, 379/203, 379/260, 379/88.25, 379/213, 379/223, 379/83, 379/88.19, 379/88.2, 379/142.07, 379/142.15, 379/201.01, 379/201.02, 379/201.06, 379/201.07, 379/207.12, 379/218.01, 379/218.02, 379/219, 379/88.13, 379/88.17, 379/913, 704/231, 704/234, 704/251, 704/275, 704/243, 704/246, 704/250, 704/255, 704/256
H04M 3/42204 : Arrangements at the exchang...
Y10S 379/913 : Person locator or person-sp...
Sponsoring Entity: Verizon Corporate Services Group Incorporated (Verizon Communications Inc.)
Voice Activated Call Placement Systems And Methods