IAgentCharacterEx::Listen
[Microsoft Agent è deprecato a partire da Windows 7 e potrebbe non essere disponibile nelle versioni successive di Windows.]
HRESULT Listen(
long bListen // listening mode flag
);
Attiva o disattiva la modalità di ascolto (input di riconoscimento vocale).
- Restituisce S_OK per indicare che l'operazione è riuscita.
-
bListen
-
Flag modalità di ascolto. Se questo parametro è True, la modalità di ascolto è attivata; se False, la modalità di ascolto è disattivata.
L'impostazione di questo metodo su True abilita la modalità di ascolto (attiva il riconoscimento vocale) per un periodo di tempo fisso. Anche se non è possibile impostare il valore del timeout, è possibile disattivare la modalità di ascolto prima della scadenza del timeout. Inoltre, se la modalità di ascolto è già attiva perché il metodo (o un altro client) è stato impostato correttamente su True prima della scadenza del timeout, il metodo ha esito positivo e reimposta il timeout. Tuttavia, se la modalità di ascolto è già attiva perché l'utente preme il tasto Listening, il metodo ha esito positivo, ma il timeout viene ignorato e la modalità di ascolto termina in base all'interazione dell'utente con il tasto Ascolto.
Questo metodo avrà esito positivo solo quando viene chiamato dal client attivo di input. Pertanto, il metodo avrà esito negativo se il client non è il client attivo del carattere più alto. Il metodo avrà esito negativo anche se si tenta di impostare il metodo su False e l'utente preme il tasto Listening. Può anche non riuscire se non è disponibile alcun motore di riconoscimento vocale compatibile che corrisponde all'impostazione id lingua del carattere o se l'utente ha disabilitato l'input vocale usando la finestra delle proprietà di Microsoft Agent. Tuttavia, il metodo non avrà esito negativo se il dispositivo audio è occupato.
Quando questo metodo viene impostato correttamente su True, il server attiva l'evento IAgentNotifySinkEx::ListeningState . Il server invia anche IAgentNotifySinkEx::ListeningState al termine del timeout della modalità di ascolto o quando si imposta IAgentCharacterEx::Listen su False.
Questo metodo non chiama automaticamente IAgentCharacter::StopAll e riproduce un'animazione dello stato Listening del carattere così come avviene quando l'utente preme il tasto Listening. In questo modo puoi usare l'evento IAgentNotifySinkEx::ListeningState per determinare se vuoi arrestare l'animazione corrente e riprodurre la tua animazione appropriata. Una volta rilevata un'espressione utente, tuttavia, il server chiama automaticamente IAgentCharacter::StopAll e riproduce un'animazione dello stato di udito.
Vedere anche
IAgentNotifySinkEx::ListeningState, IAgentSpeechInputProperties::GetEnabled