Technologies

Voice control

Voir aussi : Dragon NaturallySpeaking, Voice Control, Windows Speech Recognition, VoiceAccess

Technologie d'assistance permettant de piloter un ordinateur par commandes vocales. Dragon NaturallySpeaking, macOS / iOS Voice Control, Windows Speech Recognition — tous reposent sur la correspondance entre le nom accessible d'un contrôle et la commande vocale prononcée.

Le voice control est la catégorie de technologie d’assistance permettant aux utilisateurs de piloter un ordinateur par commandes vocales. Les principaux systèmes sont Dragon NaturallySpeaking (Windows, leader historique du marché), macOS Voice Control et iOS Voice Control (l’outil intégré d’Apple, gratuit avec le système), Windows Speech Recognition (l’outil intégré de Microsoft) et Google Voice Access (Android).

Le voice control est utilisé par les personnes présentant des handicaps moteurs rendant difficile ou impossible l’utilisation d’un clavier, d’une souris ou d’un écran tactile — TMS, arthrite, tremblements, paralysie à divers niveaux. Il est également largement utilisé dans des contextes d’efficacité opérationnelle (avocats et cliniciens dictant des notes) où l’utilisateur n’a pas de handicap déclaré mais bénéficie d’un fonctionnement mains libres.

Comment le voice control résout les commandes

Un système de voice control écoute deux types de commandes :

  1. Dictée — l’utilisateur énonce un texte à saisir dans un champ actif. Le système transcrit la parole.
  2. Commandes — l’utilisateur nomme une action ou un contrôle. Le système fait correspondre la phrase prononcée à un registre de commandes disponibles et aux noms accessibles des contrôles à l’écran.

Le second type est celui où l’accessibilité web entre en jeu : lorsque l’utilisateur dit « Click Submit », le logiciel de voice control recherche un élément dont le nom accessible est « Submit » (ou une correspondance proche) et lui envoie un événement clic. Si votre bouton Envoyer n’a pas de nom accessible — parce qu’il s’agit d’un <button> sans libellé, d’un <div> personnalisé ou d’un bouton avec une étiquette icon-only — l’utilisateur de voice control ne peut pas l’activer.

Ce que cela signifie pour les développeurs web

La règle d’accessibilité la plus importante pour le voice control :

Chaque élément interactif doit avoir un nom accessible textuel qui correspond à son libellé visible.

En pratique :

  • Les boutons ont besoin d’un texte visible. <button>Submit</button> fonctionne. Les boutons icon-only ont besoin d’un aria-label correspondant à ce que l’utilisateur est susceptible de dire — aria-label="Search" plutôt que aria-label="Magnifying glass".
  • Le libellé visible et le nom accessible doivent correspondre. Si le texte visible d’un bouton est « Submit » mais que son aria-label est « Send form », le voice control risque de ne pas le trouver lorsque l’utilisateur dit « Click Submit ». Le critère WCAG 2.5.3 Label in Name (niveau A) exige que le nom accessible contienne le texte du libellé visible.
  • Les contrôles personnalisés exposent leur rôle et leur nom. Un <div role="button" aria-label="Submit"> fonctionne. Un <div onclick> sans rôle ni nom ne fonctionne pas.
  • Pas de contrôles fantômes. Les surcouches de voice control (surcouches numérotées montrant chaque élément focusable avec un numéro à appeler) fonctionnent mieux lorsque le nombre d’éléments focusables est gérable. Les éléments masqués mais toujours focusables encombrent la surcouche.

Recoupement avec l’accessibilité des lecteurs d’écran

La même discipline de nommage accessible et de HTML sémantique qui rend un site accessible aux lecteurs d’écran le rend également accessible au voice control. Les deux technologies passent par l’arbre d’accessibilité et dépendent de la présence et de l’exactitude des noms accessibles.

Exception majeure : le voice control n’a pas besoin de régions ARIA live (ce n’est pas un lecteur d’écran), mais il a besoin de surcouches numérotées pour exposer les contrôles sans étiquette textuelle — raison pour laquelle les étiquettes textuelles revêtent une importance disproportionnée pour les utilisateurs de voice control.

Ce qui pose spécifiquement problème pour le voice control

  • Libellés icon-only visibles. Un bouton en forme de cœur (favori) sans texte visible. L’utilisateur dit « Click favourite », mais le nom accessible est « Save » ou absent. Incohérence.
  • Deux contrôles portant le même nom accessible. Deux liens « Lire la suite » sur la page. L’utilisateur dit « Click Lire la suite » ; le système de voice control affiche une surcouche de désambiguïsation numérotée. Ce n’est pas cassé, juste lent.
  • Libellés localisés incohérents. Prononcé en anglais, mais la page est en français. Le voice control de l’utilisateur doit reconnaître la bonne langue pour le nom de l’élément. Définir correctement l’attribut lang sur le HTML est utile.

L’audit manuel le plus rapide : activer macOS Voice Control ou Windows Speech Recognition et essayer d’utiliser votre site par la voix. Les contrôles inactivables deviennent évidents en cinq minutes.