FR 3132589 A1 20230811 FR 2201147 A 20220209 Mise en œuvre contextualisée d’un assistant vocal L’invention concerne un procédé et un système de traitement d’une commande vocale d’un utilisateur à un système d’assistance vocale (AV) apte à communiquer avec une pluralité de terminaux (IoT) sur un réseau privé. La pluralité de terminaux est associée à une pluralité de classes de services (CS), chaque classe de service comprenant au moins un service (S) pour commander un terminal de la pluralité. Le procédé de traitement comprend les étapes suivantes: - recevoir (E1) une première commande vocale (ENR) en provenance dudit utilisateur, - détecter (E2) au moins un premier mot-clé d’activation (MCA) dans ladite première commande, - sélectionner (E3) une classe (CLS) de services (S) parmi la pluralité de classes de services, en fonction du mot-clé d’activation détecté ; - envoyer un message de commande vers au moins un terminal de la pluralité, ledit terminal et ladite commande étant associés à ladite classe de services sélectionnée. [FIGURE 1] Mise en œuvre contextualisée d’un assistant vocal L’invention se rapporte au domaine des réseaux locaux et de l’Internet des Objets, notamment celui des services de type domotique. Il se rapporte également aux procédés et dispositifs fournissant un service d’assistance vocale. Etat de la technique Des appareils électroniques équipés de reconnaissance vocale sont utilisés afin de contribuer à une meilleure accessibilité et une meilleure expérience utilisateur pour le pilotage à distance des terminaux et objets connectés d’un réseau, notamment local. Une technologie de reconnaissance vocale peut être utilisée dans le but de répondre à tout ordre ou question énoncés par un utilisateur dans sa vie quotidienne en utilisant un langage naturel, à travers un service conversationnel. Par exemple, les appareils électroniques tels que les smartphones, les ordinateurs, les lecteurs multimédia portables, les appareils ménagers intelligents, les appareils de navigation, les appareils portables, etc., peuvent fournir des services conversationnels en se connectant à un serveur ou exécutant une application. Récemment, des appareils centralisateurs de requêtes utilisateur, appelés assistants vocaux ou enceintes connectées, ont fait l’apparition dans les foyers afin de répondre à des sollicitations complexes exprimées en langage humain. Un assistant vocal conversationnel disposé au centre du foyer peut permettre de commander des appareils électroniques présents dans un foyer principal, dans différentes pièces, mais aussi des appareils se trouvant dans des lieux secondaires autres que le foyer principal. Le fonctionnement d’un assistant vocal consiste pour un utilisateur à activer celui-ci en le hélant par la prononciation à voix haute d’un motif sémantique générique, connu et reconnu par l’assistant vocal (par exemple, « OK Google » dans le cas de l’assistant de la société Google). Après une confirmation d’activation de l’assistance vocale, l’utilisateur dicte ensuite une requête vocale à l’assistant vocal. L’assistant vocal demeure un point de contact unique et dépersonnalisé du foyer : le dialogue normé entre un utilisateur du foyer et cet interlocuteur électronique central ne permet pas aujourd’hui à l’utilisateur de se projeter dans la topologie de ses terminaux et des commandes qui leur sont associées. De plus, le taux d’échec de la reconnaissance vocale réalisé par l’assistant est aujourd’hui très important Il est connu de disposer de plusieurs assistants vocaux dans un foyer, pour rediriger la commande vers un groupe de terminaux ciblés. Par exemple la demande de brevet publiée sous le numéro EP3836582 A1 décrit des dispositifs relais pour des commandes vocales à traiter par un assistant vocal. Cependant une telle technique suppose de disposer de plusieurs assistants vocaux, ou tout au moins de systèmes capables de relayer des commandes vocales, ce qui complexifie l’architecture globale du réseau local. L'invention L’invention concerne un procédé de traitement d’une commande vocale d’un utilisateur à un système d’assistance vocale apte à communiquer avec une pluralité de terminaux sur un réseau privé, ladite pluralité de terminaux étant associée à une pluralité de classes de services, chaque classe de service comprenant au moins un service pour commander au moins un terminal de la pluralité, le procédé de traitement comprenant les étapes suivantes sur ledit système : - recevoir une première commande vocale en provenance dudit utilisateur, - détecter au moins un mot-clé d’activation dans ladite première commande, - sélectionner une classe de services parmi la pluralité de classes de services, en fonction du mot-clé d’activation détecté ; - envoyer un message de commande vers au moins un terminal de la pluralité, ledit terminal et ladite commande étant associés à ladite classe de services sélectionnée. Ainsi, l'invention offre l'avantage de réduire le nombre de commandes vocales transmises par un utilisateur à un assistant vocal, grâce à l’envoi d’un mot-clé spécifique dès la première commande vocale. Par première commande vocale est entendue la commande vocale effectuée par l’utilisateur dans le but de déclencher la sortie de veille de l’appareil d’assistance vocale et/ou d’initier une nouvelle requête vocale. Les mots-clés sont de préférence préalablement enregistrés, par exemple par l’utilisateur lui-même, puis reconnus par l’appareil d’assistance comme « Wake words » (mots de réveil, en anglais). Un mot-clé est sélectionné par l’utilisateur parmi une liste de mots-clés ou série de mots-clés. Par l’utilisation de commandes vocales telles que « OK CHAUFFEUR » ou « OK CUISINIER » ou « OK SILENCE », l’utilisateur informe dès sa première commande vocale d’une classe de services parmi lesquels il souhaite voir exécuter un service, c’est-à-dire une commande ou un ensemble de commandes relatifs à un ou plusieurs terminaux dans son réseau privé. Par exemple, l’ensemble de services associé au mot-clé « CHAUFFEUR » correspond à des services en lien avec les véhicules du foyer connectés au réseau local (voiture, moto, etc.) Elle permet à l’assistant vocal de restreindre l’action recherchée par l’utilisateur, par exemple, « allumer le chauffage de la voiture » à une liste d’actions possibles de la classe de services reconnue « CHAUFFEUR », associé à un ou plusieurs terminaux. Selon un autre exemple, l’ensemble de services associé au mot-clé « SILENCE » correspond à un service en lien avec les terminaux du foyer connectés au réseau local qui génèrent du son (enceinte hi-fi, téléviseur, radio, etc.) Il permet à l’assistant vocal d’enclencher une liste d’actions possibles de la classe de services reconnue « SILENCE », associée à un ou plusieurs terminaux, en l’occurrence en transmettant une commande à chacun des terminaux concernés pour qu’il coupe le son. Par « système d’assistance vocale », on entend un ou plusieurs dispositifs mettant en œuvre un service d’assistance vocale pour un utilisateur. Dans la suite, on parle indifféremment de « système d’assistance vocale » ou d’ « assistant vocal », noté SAV. Un tel système peut être composé par exemple d’une enceinte connectée apte à effectuer de la reconnaissance vocale, couplée à un serveur de traitement. Selon un autre exemple, le système comporte uniquement l’enceinte connectée. Par « réseau privé », on entend un réseau de terminaux associé à un identifiant donné, par exemple relatif à un foyer (réseau local de type LAN connecté à une passerelle de service) ou à plusieurs foyers (pour un individu disposant de plusieurs domiciles, ensemble de réseaux de communication locaux) ou encore à une société (réseau local d’entreprise), etc. Par « terminaux », on entend tous terminaux aptes à se connecter à un réseau privé : ordinateurs, tablettes, smartphones, objets connectés tels que capteurs, détecteurs, dispositifs sonores, vidéo, ampoules, etc. Dans la suite, on utilise indifféremment les termes « terminal » et « IoT ». Par « service », on entend un ensemble d’actions qui permettent de rendre un service à l’utilisateur dans le cadre du réseau privé, par la mise en œuvre d’actions sur un ou plusieurs terminaux du réseau. Il peut être très simple (éteindre les lumières) ou plus complexe (éteindre la lumière du salon si aucun mouvement n’a été détecté depuis 10 min et que la luminosité est inférieure à un certain seuil) et concerner un seul ou plusieurs terminaux travaillant en parallèle ou en coopération. Par « classe de services », on entend un ou plusieurs services regroupés par exemple au sein d’une base de données, correspondant à un mot-clé. La classe de services peut comporter un seul service (par exemple la classe de services associée au mot-clé « SILENCE » peut comporter un service unique qui consiste à rendre muets tous les terminaux du réseau privé) ou plusieurs services (par exemple la classe de services associée au mot-clé « CUISINIER » peut comporter un service de vérification des stocks de nourriture, un service d’extinction des lumières de la cuisine, etc.) Selon l’art antérieur, un mot de réveil correspond à un motif unique qui n’apporte aucune autre information à l’assistant vocal que celle d’une commande d’activation de celui-ci. Par exemple une sortie de veille s’effectue à travers une syntaxe vocale neutre comme « OK, Google ® » ou « OK, Alexa® ». Dans ce cas l’assistant vocal sort de veille mais ne présuppose aucune action à venir. L’invention permet donc de gagner du temps en préparant l’accès de l’assistant à une classe de services spécifiques. Le nombre de commandes vocales énoncées par un utilisateur est réduit, ainsi que la complexité de la recherche par l’assistant vocal, qui se positionne immédiatement dans la bonne classe de services en fonction de la commande reçue (« OK CUISINIER » le positionne dans la classe de services relatives à la ou aux cuisines du réseau privé). Selon un mode de réalisation de l’invention, le procédé tel que décrit ci-dessus comporte en outre les étapes de, suite à la détection d’au moins un mot-clé d’activation: - détecter au moins une donnée, dite expression, dans une commande vocale de l’utilisateur, - sélectionner au moins un service de la classe de services, en fonction de l’expression détectée, - déterminer ledit au moins un message de commande en fonction dudit service sélectionné. Avantageusement selon ce mode, l’utilisateur peut choisir, au moyen d’un deuxième mot-clé, ou expression, le service ciblé dans la classe de services préalablement sélectionnée. Par exemple dans la classe « CHAUFFEUR » il peut s’agir d’un service associé à l’expression « ouvrir la porte du garage », « mettre le chauffage dans la voiture », etc. Le risque d’échec de reconnaissance du service par l’assistant est réduit puisque l’assistant recherche l’expression dans la classe de services préalablement déterminée. Ainsi le risque inhérent de vérification auprès de l’utilisateur à travers une ou plusieurs relances est également diminué, améliorant l’efficacité et la fiabilité du système. Selon un mode de réalisation de l’invention, le procédé tel que décrit ci-dessus comporte en outre, suite à la détection d’au moins un mot-clé d’activation ou à la détection d’au moins une expression, une étape de : - émettre (E6) au moins un message de réponse vers ledit utilisateur en fonction dudit mot-clé ou de ladite expression Avantageusement selon ce mode, l’assistant vocal accède rapidement à l’ensemble des réponses qu’il peut émettre dans le contexte de la classe de services ou du service sélectionné et émet la réponse la plus appropriée. Selon une variante de ce mode, dans le procédé tel que décrit ci-dessus, ledit au moins un message de réponse est émis selon des caractéristiques vocales fonction dudit mot-clé ou de ladite expression. Avantageusement selon ce mode, une « personnalité » de l’assistant peut être initiée dès la première interaction de l’assistant vocal avec l’utilisateur. Par une commande de type « OK chauffeur » ou « OK cuisinier », l’utilisateur active dès sa première commande vocale la personnalité de l’appareil qu’il a identifié comme lui étant nécessaire pour la ou les commandes qu’il souhaite voir exécuter. Par « personnalité » de l’appareil est entendues l’ensemble des caractéristiques vocales pouvant lui être affectées : choix de traits prosodiques tels une fréquence, une intensité, un timbre, un débit de la voix sélectionnée par l’assistant pour l’émission du message de réponse, choix d’une langue, etc. Cette variante permet à l’utilisateur d’identifier, avant même d’avoir analysé le contenu de la réponse de l’assistant, la réussite ou l’échec de la reconnaissance vocale relative à la première commande qu’il a émise. Par exemple, une voix désignée comme celle du chauffeur (une voix féminine parlant anglais), sera différente de celle du cuisinier (une voix masculine parlant allemand). L’utilisateur peut ainsi identifier dès les premières secondes que l’assistant s’est peut-être engagé dans une mauvaise interprétation. De même, la vitesse de l’assistant, un accent régional, etc. peuvent être utilisés pour « personnaliser » l’assistant. Un mot-clé comme « Professor » peut enclencher une réponse en langue espagnole. Au lieu d’une seule personnalité neutre, l’assistant dispose ainsi de plusieurs personnalités. Si le mot-clé n’a pas pu être reconnu, une personnalité par défaut peut lui être affectée. Selon un mode de réalisation de l’invention, ledit au moins un message de commande comprend un message à destination d’un second système d’assistance vocale. Avantageusement, ce mode de réalisation permet de diffuser la commande vocale vers un autre assistant vocal dans un lieu spécifique. Par exemple, la commande « OK Professor, dis à Thomas de faire ses devoirs d’espagnol » est diffusée vers un assistant vocal placé dans la chambre de Thomas. Par « second système d’assistance vocal » on entend par exemple une enceinte connectée, ou un smartphone, etc. Selon un mode de réalisation de l’invention, le procédé tel que décrit ci-dessus comporte en outre une étape de : - créer une base de données comprenant au moins une classe de service associée à au moins un service, ledit service étant lui-même associé à au moins une commande d’au moins un terminal dudit réseau. Selon un aspect matériel, l’invention concerne un système d’assistance vocale d’un utilisateur, apte à communiquer avec une pluralité de terminaux sur un réseau privé, ladite pluralité de terminaux étant associée à une pluralité de classes de services, chaque classe de service comprenant au moins un service pour commander un terminal de la pluralité, caractérisé en ce que ledit système est configuré pour mettre en œuvre: - recevoir une première commande vocale en provenance dudit utilisateur, - détecter au moins un mot-clé d’activation dans ladite première commande, - sélectionner une classe de services parmi la pluralité de classes de services, en fonction du mot-clé d’activation détecté ; - envoyer un message de commande vers au moins un terminal de la pluralité, associé à ladite classe de services sélectionnée Selon un aspect matériel, l’invention concerne un système d’assistance vocale d’un utilisateur apte à communiquer avec une pluralité de terminaux sur un réseau privé, ladite pluralité de terminaux étant associée à une pluralité de classes de services, chaque classe de service comprenant au moins un service pour commander un terminal de la pluralité, caractérisé en ce que ledit système comporte: - un dispositif d’assistance vocale configuré pour mettre en œuvre : - recevoir une première commande vocale en provenance dudit utilisateur, - détecter au moins un mot-clé d’activation dans ladite première commande, - transmettre sur le réseau une commande comportant ledit mot-clé d’activation - un dispositif serveur configuré pour mettre en œuvre : - recevoir sur le réseau dans une commande un mot-clé d’activation - sélectionner une classe de services parmi la pluralité de classes de services, en fonction du mot-clé d’activation détecté ; -envoyer un message de commande vers au moins un terminal de la pluralité, associé à ladite classe de services sélectionnée Selon un autre aspect matériel ; l’invention concerne une base de données pour le traitement d’une commande vocale d’un utilisateur à un système d’assistance vocale apte à communiquer avec une pluralité de terminaux sur un réseau privé, ladite pluralité de terminaux étant associée à une pluralité de classes de services, chaque classe de service comprenant au moins un service pour commander un terminal de la pluralité, la base de données comprenant: - au moins une structure de données de classe de service, chaque structure de données de classe de service étant accessible via un mot-clé d’activation et comprenant : - au moins une structure de données de service, chaque structure de données de service étant accessible via une expression et comprenant : - au moins une description du service associant au moins un terminal de la pluralité à au moins une commande Avantageusement, une base de données est structurée de manière à faciliter les accès aux classes de services à partir d’un mot-clé, puis aux services via une expression, qui peut être vide si le service ne requiert pas d’expression (par exemple la commande SILENCE ne requiert pas d’expression complémentaire) le mot-clé et les expressions faisant partie des commandes vocales que peut prononcer l’utilisateur. Selon une variante, la base de données comporte en outre, pour chaque classe de services, une « personnalité » associée à la classe, c’est-à-dire un ensemble de caractéristiques vocales. Selon une variante, la base de données comporte en outre un historique, ledit historique étant constitué de données, chaque donnée d’historique comprenant au moins une classe de services et un nombre d’occurrences . Selon un autre aspect matériel, l'invention concerne également des programmes d'ordinateur aptes à être mis en œuvre sur des systèmes ou dispositifs, les programmes comprenant des instructions de code qui, lorsque les programmes sont exécutés par un processeur, réalisent les étapes des procédés définis. De tels programmes peuvent utiliser n’importe quel langage de programmation. Ils peuvent être téléchargés depuis un réseau de communication et/ou enregistrés sur un support lisible par ordinateur. Selon un autre aspect matériel, l’invention a trait à des supports de données sur lequel a été mémorisée au moins une série d’instructions de code de programme pour l’exécution des procédés définis ci-dessus. L'invention sera mieux comprise à la lecture de la description qui suit, donnée à titre d'exemple et faite en référence aux dessins annexés sur lesquels : La illustre une architecture générale de l’environnement d’un système d’assistance vocal selon un mode de réalisation de l’invention. La est un schéma illustrant les composants d'un système d’assistance vocale, conformément à un mode de réalisation de l’invention. La illustre un diagramme des étapes d’un mode de réalisation de l’invention. La illustre une structuration d’une base de données selon un mode de réalisation de l’invention. La illustre un mode de réalisation selon l’invention. La illustre un autre mode de réalisation selon l’invention. Procédé de traitement d’une commande vocale d’un utilisateur (UT) à un système d’assistance vocale (SAV, EC, SER) apte à communiquer avec une pluralité de terminaux (IoT) sur un réseau privé (RES), ladite pluralité de terminaux étant associée à une pluralité de classes de services (CS), chaque classe de service comprenant au moins un service (S) pour commander au moins un terminal de la pluralité, le procédé de traitement comprenant les étapes suivantes sur ledit système: - recevoir (E1) une première commande vocale (ENR) en provenance dudit utilisateur, - détecter (E2) au moins un mot-clé d’activation (MCA) dans ladite première commande, - sélectionner (E3) une classe (CLS) de services (S) parmi la pluralité de classes de services, en fonction du mot-clé d’activation détecté ; - envoyer un message de commande vers au moins un terminal de la pluralité, ledit terminal et ladite commande étant associés à ladite classe de services sélectionnée. Procédé de traitement selon la revendication 1 comprenant en outre les étapes de, suite à la détection d’au moins un mot-clé d’activation (MCA): - détecter (E4) au moins une donnée, dite expression, dans une commande vocale de l’utilisateur, - sélectionner (E5, E5bis) au moins un service (S) de la classe de services, en fonction de l’expression détectée ; - déterminer (E7) ledit au moins un message de commande en fonction dudit service sélectionné. Procédé de traitement selon la revendication 1 ou 2 comprenant, suite à la détection d’au moins un mot-clé d’activation ou à la détection d’au moins une expression, une étape de : - émettre (E6) au moins un message de réponse vers ledit utilisateur en fonction dudit mot-clé ou de ladite expression, Procédé de traitement selon la revendication 3, ledit au moins un message de réponse étant émis selon des caractéristiques vocales (Pi) fonction dudit mot-clé ou de ladite expression. Procédé de traitement selon la revendication 1 selon lequel ledit au moins un message de commande comprend un message à destination d’un second système d’assistance vocale. Système d’assistance vocale (SAV) d’un utilisateur (UT), apte à communiquer avec une pluralité de terminaux (IoT) sur un réseau privé (RES), ladite pluralité de terminaux étant associée à une pluralité de classes de services (CS), chaque classe de service comprenant au moins un service (S) pour commander au moins un terminal (IoT) de la pluralité, caractérisé en ce que ledit système est configuré pour mettre en œuvre : - recevoir (E1) une première commande vocale (ENR) en provenance dudit utilisateur, - détecter (E2) au moins un mot-clé d’activation (MCA) dans ladite première commande, - sélectionner (E3) une classe (CLS) de services (S) parmi la pluralité de classes de services, en fonction du mot-clé d’activation détecté ; - envoyer un message de commande vers au moins un terminal de la pluralité, associé à ladite classe de services sélectionnée. Programme d'ordinateur apte à être mis en œuvre sur un système tel que défini dans la revendication 6, le programme comprenant des instructions de code qui, lorsqu’elles sont exécutées par un processeur, réalisent les étapes du procédé défini dans la revendication 1.