|
Call Soft Pro and Microsoft Speech tags
|
Previous Top Next |
| You can add special tags, to your text greetings, these tags are encapsulated in brackets <>. The text inside the brackets tells Call Soft to insert some information the tag provides.
|
|
|
| All tags are delimited by < and >.
|
|
|
| Example of a greeting using these tags:
|
|
|
| Good <day of week> <day segment>, <name>. I am not at home so please leave a message after the beep.
|
|
|
| Assuming today is Friday 8AM and the Callers name is Mike, Call Soft Pro would say:
|
|
|
| Good Friday morning, Mike. I am not at home so please leave a message after the beep.
|
|
|
|
|
| The Tags:
|
|
|
| <name>
|
| Description
|
| Say's the name of the caller.
|
|
|
| <number>
|
| Description
|
| Say's the number the caller is calling from.
|
| If the number is unknown (all zeros) "Unknown" will be substituted.
|
|
|
| <time>
|
| Description
|
| Say's the current time. For example 8:45 AM.
|
|
|
| <date>
|
| Description
|
| Say's the current date. For example: Monday, November 20, 2000.
|
|
|
| <month>
|
| Description
|
| Say's the month. For example: July.
|
|
|
| <month n>
|
| Description
|
| Say's the month as a number. For example: 6
|
|
|
| <day of month>
|
| Description
|
| Say's the day of the month. For example: 15.
|
|
|
| <year>
|
| Description
|
| Say's the year.
|
|
|
| <day of week>
|
| Description
|
| Say's the day of the week. For example: Monday.
|
|
|
| <day of week n>
|
| Description
|
| Say's the day of the week as a number. For example: 1
|
|
|
| <day segment>
|
| Description
|
| Says morning, afternoon or evening.
|
|
|
| <index>
|
| Description
|
| Number of caller in the incoming call history list based on time. So if there are 10 callers in the incoming call history list the next caller is 11. This tag was added for a company that wanted caller's, leaving a message, to know where they are in a waiting list.
|
| Example: You are caller <index>, however we will get back to you.
|
| Microsoft Speech Tags
|
| The following was taken directly from the Microsoft Speech SDK and apply only if you have selected version 5 on the speech tab in setup.
|
|
|
| Microsoft Speech SDK
|
| SAPI 5.1
|
| SAPI XML TTS for Application Developers
|
| SAPI text-to-speech (TTS) extensible markup language (XML) tags fall into several categories.
|
|
|
| · | Voice state control
|
| · | Direct item insertion
|
| · | Voice context control
|
| · | Voice selection
|
| · | Custom Pronunciation
|
|
|
| Voice state control tags
|
| SAPI TTS XML supports five tags that control the state of the current voice: Volume, Rate, Pitch, Emph, and Spell.
|
| Volume
|
| The Volume tag controls the volume of a voice. The tag can be empty, in which case it applies to all subsequent text, or it can have content, in which case it only applies to that content.
|
| The Volume tag has one required attribute: Level. The value of this attribute should be an integer between zero and one hundred. Values outside of this range will be truncated.
|
|
|
|
| One hundred represents the default volume of a voice. Lower values represent percentages of this default. That is, 50 corresponds to 50% of full volume.
|
| Values specified using the Volume tag will be combined with values specified programmatically (using ISpVoice::SetVolume). For example, if you combine a SetVolume( 50 ) call with a <volume level="50"> tag, the volume of the voice should be 25% of its full volume.
|
|
|
| Rate
|
| The Rate tag controls the rate of a voice. The tag can be empty, in which case it applies to all subsequent text, or it can have content, in which case it only applies to that content.
|
| The Rate tag has two attributes, Speed and AbsSpeed, one of which must be present. The value of both of these attributes should be an integer between negative ten and ten. Values outside of this range may be truncated by the engine (but are not truncated by SAPI). The AbsSpeed attribute controls the absolute rate of the voice, so a value of ten always corresponds to a value of ten, a value of five always corresponds to a value of five.
|
|
| All text which follows should be spoken at rate ten.
|
|
|
|
|
| Speed
|
| The Speed attribute controls the relative rate of the voice. The absolute value is found by adding each Speed to the current absolute value.
|
|
| Zero represents the default rate of a voice, with positive values being faster and negative values being slower. Values specified using the Rate tag will be combined with values specified programmatically (using ISpVoice::SetRate).
|
|
|
| Pitch
|
| The Pitch tag controls the pitch of a voice. The tag can be empty, in which case it applies to all subsequent text, or it can have content, in which case it only applies to that content.
|
| The Pitch tag has two attributes, Middle and AbsMiddle, one of which must be present. The value of both of these attributes should be an integer between negative ten and ten. Values outside of this range may be truncated by the engine (but are not truncated by SAPI).
|
| The AbsMiddle attribute controls the absolute pitch of the voice, so a value of ten always corresponds to a value of ten, a value of five always corresponds to a value of five.
|
|
|
|
|
|
| Zero represents the default middle pitch for a voice, with positive values being higher and negative values being lower.
|
|
|
| Emph
|
| The Emph tag instructs the voice to emphasize a word or section of text. The Emph tag cannot be empty. The following word should be emphasized.
|
|
|
|
|
|
| The method of emphasis may vary from voice to voice.
|
|
|
| Spell
|
| The Spell tag forces the voice to spell out all text, rather than using its default word and sentence breaking rules, normalization rules, and so forth. All characters should be expanded to corresponding words (including punctuation, numbers, and so forth). The Spell tag cannot be empty.
|
|
|
|
|
|
|
|
| Direct item insertion tags
|
| Three tags are supported that applications the ability to insert items directly at some level: Silence, Pron, and Bookmark.
|
|
|
| Silence
|
| The Silence tag inserts a specified number of milliseconds of silence into the output audio stream. This tag must be empty, and must have one attribute, Msec.
|
| Five hundred milliseconds of silence <silence msec="500"/> just occurred.
|
|
|
|
|
|
| Pron
|
| The Pron tag inserts a specified pronunciation. The voice will process the sequence of phonemes exactly as they are specified. This tag can be empty, or it can have content. If it does have content, it will be interpreted as providing the pronunciation for the enclosed text. That is, the enclosed text will not be processed as it normally would be.
|
| The Pron tag has one attribute, Sym, whose value is a string of white space separated phonemes.
|
|
|
|
|
|
|
|
| Voice context control tags
|
| Two tags provide context to the current voice: PartOfSp and Context. Those tags enable the voice to determine how to deal with the text it is processing. With both of these tags, the extent to which voices use the context may vary.
|
|
|
| PartOfSp
|
| The PartOfSp tag provides the voice with the part of speech of the enclosed word(s). Use this tag to enable the voice to pronounce a word with multiple pronunciations correctly depending on its part of speech. The PartOfSp tag cannot be empty.
|
| The PartOfSp tag has one attribute, Part, which takes a string corresponding to a SAPI part of speech as its attribute. Only SAPI defined parts of speech are supported - "Unknown", "Noun", "Verb", "Modifier", "Function", "Interjection".
|
|
|
|
|
|
|
|
| Context
|
| The Context tag provides the voice with information which the voice may then use to determine how to normalize special items, like dates, numbers, and currency. Use this tag to enable the voice to distinguish between confusable date formats (see the example, below). The Context tag cannot be empty.
|
| The Context tag has one attribute, Id, which takes a string corresponding to the context of the enclosed text. Several contexts are defined by SAPI and are more likely to be recognized by SAPI compliant voices, but any string may be used. See documentation for a particular voice for more details.
|
|
|
|
|
|
|
|
| Voice Selection Tags
|
| There are two tags which can be used (potentially) to change the current voice: Voice and Lang.
|
|
|
| Voice
|
| The Voice tag selects a voice based on its attributes, Age, Gender, Language, Name, Vendor, and VendorPreferred. The tag can be empty, in which case it changes the voice for all subsequent text, or it can have content, in which case it only changes the voice for that content.
|
| The Voice tag has two attributes: Required and Optional. These correspond exactly to the required and optional attributes parameters to ISpObjectTokenCategory_EnumerateTokens and SpFindBestToken functions. The selected voice follows exactly the same rules as the latter of these two functions. That is, all the required attributes are present, and more optional attributes are present than with the other installed voices (if several voices have equal numbers of optional attributes one is selected at random). See Object Tokens and Registry Settings for more details.
|
| In addition, the attributes of the current voice are always added as optional attributes when the Voice tag is used. This means that, a voice which is more similar to the current voice will be selected over one which is less similar.
|
| If no voice is found that matches all of the required attributes, no voice change will occur.
|
| The default voice should speak this sentence.
|
| <voice required="Gender=Female;Age!=Child">
|
| A female non-child should speak this sentence, if one exists.
|
|
|
|
|
|
|
|
| Lang
|
| The Lang tag selects a voice based solely on its Language attribute. The tag can be empty, in which case it changes the voice for all subsequent text; or it can have content, in which case it only changes the voice for that content.
|
| The Lang tag has one attribute, LangId. This attribute should be a LANGID, such as 409 (U.S. English) or 411 (Japanese). Note that these numbers are hexadecimal, but without the typical "0x".
|
| The Lang tag is a shortened version of the Voice tag with the Required attribute containing "Language=xxx". So the following examples should produce exactly the same results:
|
|
|
|
|
|
|
|
| Custom Pronunciation
|
| An alternative to using the <P> tag with the DISP and PRON attributes is to use custom pronunciation. Using custom pronunciation, tags in the form of the following.
|
|
|
|
|
|
|
|
|
|