Date Remarks for French (Canada)
Collects a date.
Implements IDtmf. The format for DTMF input is MMDDYYYY for the main question, and MM, DD and YYYY for the month, day and year questions, respectively.
The Date control can collect a whole date, that is, the day, month and year spoken together, or it can collect a date in date components. That is, it collects and confirms the day, the month, and the year separately. Collecting a whole date is preferred because speaking a whole date is more natural for users than speaking date components. But if problems like background noise cause repeated recognition failures with a whole date, the control can fall back to collecting the date as date components, which is slower but more reliable.
When a Date control is activated, if its FallbackCount is greater than zero, it collects a whole date; if its FallbackCount is zero, it disables the confirmDate and questionDate controls and collects date components. Each correction and each noreco event decrements the FallbackCount value.
Internal QA controls
The following table shows the SpeechIndex values and DTMF usages of the internal QA controls of the Date Application Speech Control:
SpeechIndex | QA name | Supports DTMF? |
---|---|---|
1 | confirmDate | No |
2 | questionDate | Yes |
3 | confirmMonth | No |
4 | questionMonth | Yes |
5 | confirmDay | No |
6 | questionDay | Yes |
7 | confirmYear | No |
8 | questionYear | Yes |
9 | validate_month | No |
9 | validate_year | No |
10 | acknowledge | No |
When RunSpeech activates the Date control, it evaluates each internal QA control in the order of its SpeechIndex property, as shown in the preceding table, and determines if it should be activated. During the initial evaluation, the internal QA controls that perform confirmation typically have no data to confirm, and they are evaluated but not activated.
The confirmDate and questionDate QA controls collect and confirm whole dates. When they are enabled, the control collects whole dates. When they are disabled, the remaining confirm and question QA controls collect and confirm components of the date.
Default prompts
The following table shows the default prompts and suggested Help prompts corresponding to each phase of the Date control's user interaction, as indicated by the value of the control's ActiveQAPhase property.
The default prompts shown in this table are built into the control, and the control plays them automatically. Authors can use the PromptSelectFunction routine to specify custom text that overrides the default prompts. By default these prompts play as TTS, which is not desirable if the other prompts in the application are recorded. For information on how to record the default prompts in this control, see Importing and Exporting Transcriptions.
The Help prompts shown in this table are suggestions only. It is the responsibility of application authors to create Command Dialog Speech Controls that play Help prompts more or less equivalent to those shown in the table. In order to play Help prompts, authors must define a Command control with a scope that includes the Date control, a Type property of "Help" and an XPathTrigger property of "/SML/Help".
The QuestionPrompt property must be set by the application author, or the control will raise an exception.
Each Application Speech Control has one or more properties of the SemanticItem type, which contain text recognized from user responses. That text is included in certain default prompts.
question QA control | |
---|---|
Prompt: | QuestionPrompt.value |
Help: | "s'il-vous-plaît donnez-moi la date. par exemple, le onze mai de cette année. " + QuestionPrompt.value |
MainConfirm QA control | |
Prompt: | "m'avez-vous dit " + normalization of (DaySemanticItem.value + MonthSemanticItem.value + YearSemanticItem.value) + "?" |
Help: | "s'il-vous-plaît, dites oui ou non, ou donnez-moi la date correcte." |
questionMonth QA control | |
Prompt: | "s'il-vous-plaît donnez-moi le nom du mois." |
Help: | "s'il-vous-plaît donnez-moi le nom du mois. par exemple mai." or (in Fallback mode) "j'ai de la difficulté à vous comprendre. laissez-moi vous demander ça d'une autre façon. " + MonthQuestion.Prompt |
confirmMonth QA control | |
Prompt: | "m'avez-vous dit " + normalization of (MonthSemanticItem.value) + "?" |
Help: | "s'il-vous-plaît, dites oui ou non, ou donnez-moi le mois correct." |
questionDay QA control | |
Prompt: | "s'il-vous-plaît donnez-moi le jour du mois." |
Help: | "s'il-vous-plaît donnez-moi le jour du mois. par exemple le onze." |
confirmDay QA control | |
Prompt: | "m'avez-vous dit " + normalization of (DaySemanticItem.value) + "?" |
Help: | "s'il-vous-plaît, dites oui ou non, ou donnez-moi le jour correct." |
questionYear QA control | |
Prompt: | "s'il-vous-plaît donnez-moi l'année." |
Help: | "s'il-vous-plaît donnez-moi l'année. par exemple deux mille quatre." |
confirmYear QA control | |
Prompt: | "m'avez-vous dit " + normalization of (YearSemanticItem.value) + "?" |
Help: | "s'il-vous-plaît, dites oui ou non, ou donnez-moi l'année correcte." |
Validation QA control | |
Prompt: | Normalization of (DaySemanticItem.value + MonthSemanticItem.value + YearSemanticItem.value) + "n'est pas une date valide." |
All QA controls | |
Silence: | "je ne vous ai pas entendue." |
NoReco: | "je ne vous ai pas compris." |
See Also
Date Class | Date Constructor | Date Members | Date Properties | Date Methods | Date Events