Leggere in inglese

Condividi tramite


Metodo Speak

[Microsoft Agent è deprecato a partire da Windows 7 e potrebbe non essere disponibile nelle versioni successive di Windows.]

Descrizione

Parla il testo o il file audio specificato per il carattere specificato.

Sintassi

agent**. Caratteri ("CharacterID"). Parla** [Testo], [URL]

Parte Descrizione
Text Facoltativa. Stringa che specifica il carattere indicato.
Url Facoltativa. Espressione stringa che specifica il percorso di un file audio (. WAV o . Formato LWV). Il percorso può essere specificato come file (inclusa una specifica del percorso UNC) o UNC (quando vengono recuperati anche i dati dell'animazione dei caratteri tramite protocollo HTTP).

 

Commenti

Anche se i parametri Text e URL sono facoltativi, è necessario specificarne uno. Per usare questo metodo con un carattere configurato per parlare solo nel palloncino di parole o usando un motore TTS (Text-to-speech), specifica semplicemente il parametro Text . Includere uno spazio tra le parole per definire le interruzioni di parole appropriate nel palloncino di parole, anche per le lingue che non includono tradizionalmente spazi.

È anche possibile includere caratteri della barra verticale (|) nel parametro Text per designare stringhe alternative, in modo che il server scelga in modo casuale una stringa diversa ogni volta che elabora il metodo.

Il supporto dei caratteri dell'output TTS viene definito quando il carattere viene compilato usando l'editor di caratteri di Microsoft Agent. Per generare l'output TTS, un motore TTS compatibile deve essere già installato prima di chiamare questo metodo. Per altre informazioni, vedere Accesso ai servizi voce.

Se si usa il file audio registrato (. WAV o . LWV format only) output per il carattere, specificare il percorso del file nel parametro Url . Questa specifica di file può includere un percorso locale (assoluto o relativo) o una convenzione di denominazione universale (UNC). Il nome del file non può includere caratteri non inclusi nella tabella codici degli Stati Uniti 1252. Tuttavia, se si usa il protocollo HTTP per accedere ai dati dell'animazione dei caratteri, usare il metodo Get per caricare l'animazione prima di chiamare il metodo Speak . Per informazioni su creative, vedere Uso dello strumento di modifica audio di Microsoft Linguistic Information . File LWV.

Quando si usa l'output del file audio registrato, è comunque possibile usare il parametro Text per specificare le parole visualizzate nel palloncino di parole del carattere. Tuttavia, se si specifica un file audio avanzato in modo linguistico (. LWV) per il parametro Url e non specificare il testo per il palloncino di parole, il parametro Text usa il testo archiviato nel file.

È anche possibile variare i parametri dell'output vocale con tag speciali inclusi nel parametro Text . Per altre informazioni, vedere Tag di output voce dell'agente Microsoft.

Se si dichiara un riferimento all'oggetto e lo si imposta su questo metodo, restituisce un oggetto Request . È possibile usarlo per sincronizzare altre parti del codice con l'output parlato del carattere, come nell'esempio seguente:

   Dim SpeakRequest as Object
...
   Set SpeakRequest = Genie.Speak ("And here it is.")
...
   Sub Agent1_RequestComplete (ByVal Request as Object)
   ' Make certain the request exists
   If SpeakRequest Not Nothing Then
      ' See if it was this request
      If Request = SpeakRequest Then
         ' Display the message box 
         Msgbox "Ta da!"
      End If
   End If
   End Sub

È anche possibile usare un oggetto Request per verificare la presenza di determinate condizioni di errore. Ad esempio, se si usa il metodo Speak per parlare e non è installato un motore TTS compatibile, il server imposta la proprietà Status dell'oggetto Request su "failed" con la relativa proprietà Description su "Class not registered" o "Unknown or object returned error". Per determinare se è installato un motore TTS, usare la proprietà TTSModeID .

Analogamente, se si ha il tentativo di parlare un file audio e se il file non è stato caricato o si verifica un problema con il dispositivo audio, il server imposta anche la proprietà Status dell'oggetto Request su "non riuscita" con un numero di codice di errore appropriato.

È anche possibile includere tag vocali segnalibri nel testo Parla per sincronizzare il codice:

   Dim SpeakRequest as Object
...
   Set SpeakRequest = Genie.Speak ("And here \mrk=100\it is.")
...
   Sub Agent1_Bookmark (ByVal BookmarkID As Long)
   If BookmarkID = 100 Then
      ' Display the message box 
         Msgbox "Tada!"
      End If
   End Sub

Per altre informazioni sul tag voce segnalibro, vedere Tag di output voce.

Il metodo Speak usa l'ultima azione riprodotta per determinare quale animazione parlante riprodurre. Ad esempio, se è stato preceduto il comando Speakcon un play "GestureRight", il server eseguirà GestureRight e quindi l'animazione Di conversazione di GestureRight. Se l'ultima animazione riprodotta non ha un'animazione parlante, Agent esegue l'animazione assegnata allo stato di parlato del carattere.

Se chiami Parla e il canale audio è occupato, l'output audio del carattere non verrà sentito, ma il testo verrà visualizzato nel palloncino di parole.

La parola automatica dell'agente si interrompe nelle parole del palloncino di parole usando caratteri spazi vuoti,ad esempio spazio o scheda. Tuttavia, se non può, può rompere una parola per adattare il palloncino. Nelle lingue come giapponese, cinese e thai, dove gli spazi non vengono usati per interrompere le parole, inserire un carattere di spazio a larghezza zero Unicode (0x200B) tra caratteri per definire interruzioni logiche di parole.

Nota

La proprietà Enabled di word balloon deve essere true anche per visualizzare il testo.

 

Nota

Impostare l'ID lingua del carattere (impostando LanguageID del carattere prima di usare il metodo Speak per garantire la visualizzazione del testo appropriata all'interno del palloncino di parole.

 

Vedere anche

Evento Bookmark, evento RequestStart, evento RequestComplete