IAgentCharacterEx :: Listen

[Microsoft Agent est déconseillé à partir de Windows 7 et peut ne pas être disponible dans les versions ultérieures de Windows.]

HRESULT Listen(
   long bListen  // listening mode flag
);

Active ou désactive le mode d’écoute (entrée de reconnaissance vocale).

  • Retourne _ la valeur S OK pour indiquer que l’opération a réussi.

bListen

Indicateur du mode d’écoute. Si ce paramètre a la valeur true, le mode d’écoute est activé ; Si la valeur est false, le mode d’écoute est désactivé.

L’affectation de la valeur true à cette méthode active le mode d’écoute (active la reconnaissance vocale) pendant une période de temps fixe. Bien que vous ne puissiez pas définir la valeur du délai d’attente, vous pouvez désactiver le mode d’écoute avant l’expiration du délai d’attente. En outre, si le mode d’écoute est déjà activé parce que vous (ou un autre client) avez correctement défini la méthode sur true avant l’expiration du délai d’attente, la méthode réussit et réinitialise le délai d’attente. Toutefois, si le mode d’écoute est déjà activé parce que l’utilisateur appuie sur la touche d’écoute, la méthode aboutit, mais le délai d’attente est ignoré et le mode d’écoute se termine en fonction de l’interaction de l’utilisateur avec la clé d’écoute.

Cette méthode ne fonctionnera que lorsqu’elle est appelée par le client d’entrée-actif. Par conséquent, la méthode échoue si votre client n’est pas le client actif du premier caractère. La méthode échouera également si vous tentez de définir la méthode sur false et que l’utilisateur appuie sur la touche d’écoute. Elle peut également échouer si aucun moteur vocal compatible ne correspond au paramètre ID de langue du caractère ou si l’utilisateur a désactivé l’entrée vocale à l’aide de la feuille de propriétés de l’agent Microsoft. Toutefois, la méthode n’échouera pas si le périphérique audio est occupé.

Lorsque vous avez correctement défini cette méthode sur true, le serveur déclenche l’événement IAgentNotifySinkEx :: ListeningState . Le serveur envoie également IAgentNotifySinkEx :: ListeningState lorsque le délai d’attente du mode d’écoute est terminé ou lorsque vous définissez IAgentCharacterEx :: Listen sur false.

Cette méthode n’appelle pas automatiquement IAgentCharacter :: stopAll et joue une animation d’état d’écoute du caractère tel qu’il se produit lorsque l’utilisateur appuie sur la touche d’écoute. Cela vous permet d’utiliser l’événement IAgentNotifySinkEx :: ListeningState pour déterminer si vous souhaitez arrêter l’animation actuelle et lire votre propre animation appropriée. Toutefois, une fois qu’un énoncé utilisateur est détecté, le serveur appelle automatiquement IAgentCharacter :: stopAll et émet une animation d’État auditif.

Voir aussi

IAgentNotifySinkEx :: ListeningState, IAgentSpeechInputProperties :: GetEnabled