Yana4All 0.1 Beta, c’est par ici !

Çà fait un ptit moment que je promet la sortie d’un nouveau client de reconnaissance/synthèse et interface vocale pour Yana.

Voilà un ptit moment que je le teste à fond avec deux trois alpha testeurs et bien qu’il ne soit pas encore 100% stable et aboutis, je me sent l’obligation de partager la bêta avec vous voir ce que vous en pensez.

Concrètement les plus de Yana4All c’est quoi ?

Plus stable, plus souple

Le programme étant divisé en trois binaires ayant chacun une fonction (écoute, synthèse, et interface graphique) les tâches sont mieux réparties, il est possible d’utiliser deux fonctionnalités sur les trois, ou même une seule afin d’alléger encore le processus en fonctions de vos besoins.

Plus réactif, plus omniprésent

Les binaires étant relié au serveur par socket (et non plus par http comme autre fois) les échanges se font de manière bi-latérale (ex: php peux dicter une phrase ne temps réel a l’un des clients) et instantanée, de plus il est possible de multiplier les binaires en fonction de la configuration que vous souhaitez, vous pouvez par exemple placer une synthèses ou une reconnaissance dans chaque pièces, un client transmettant l’identifiant de sa pièce, il vous est alors possible de parler dans le salon et pas ailleurs, ou de reconnaître que la phrase vient de la cuisine.

Plus customizable

La partie interface graphique est entièrement en html5/css3/javascript, si vous êtes a l’aise avec le développement web vous pouvez donc la modifier et lui donner le visage de vos envie en utilisant les fonctions d’api a votre disposition.

Plus à l’écoute

Vous pouvez maintenant dicter des mots libres en fin de commande ex : yana définit le mot “<placez votre mot ici>”

Les plugins compatibles

La syntaxe des plugins pour utiliser yana4all varie légèrement, aussi la plupart des plugins actuels ne sont pas compatibles, vous pouvez cependant regarder les phrases d’exemples disponibles dans vocalinfo (yana définit le mot <mot>, yana montre toi, yana énerve toi, yana lance le programme etc…)

J’essaierais de sortir un plugin 100% voué au client 2 avec une doc claire dans un second temps.

Installation

Coté serveur, commencez par mettre yana-server à jour

cd /var/www/html/yana-server (ou /var/www/yana-server en fonction de votre version d'apache)
git pull

Puis lancez manuellement le serveur socket (un lancement automatique viendra dans le futur)

php /var/www/yana-server/socket.php
(ou /var/www/yana-server/socket.php en fonction de votre version d'apache)

Si la commande php n’est pas reconnu, installez php-cli

sudo apt-get install php5-cli

Si tout s’est bien passé, le message suivant devrait apparaître

01

Une fois le serveur lancé ne fermez pas la console, cela l’éteindrais, pour une utilisation plus permanente du serveur, vous pouvez créer un cron lançant le serveur en tâche de fond au démarrage.

Coté client, téléchargez yana4all beta 0.1 ici et dé-zippez le.

Lancez l’exécutable situé dans bin/launcher.exe et suivez les instructions

 

 

Lancez ensuite les différentes icônes du launcher, notez bien que les trois binaires sont regroupés dans le même dossier mais qu’ils peuvent fonctionnez en étant dissocié et sur des postes différents tant que vous associez un fichier conf.json correctement configuré a chaque binaire.

En lançant les applications vous devriez voir ça :

 Interface (face.exe)

07

Reconnaissance (ear.exe)

06

Synthèse (mouth.exe)

05

Coder avec ça

En attendant une doc un peu plus conséquente, vous pouvez vous fier aux exemples du plugin vocalinfo ainsi qu’au billet Work in progress pour avec quelques bout de codes compatibles avec le nouveau client.

N’hésitez pas à me faire vos retours de bugs/features sur le github ma boite et les commentaires du blog étant totalement submergés de vos messages je ne peux plus répondre rapidement dessus 🙂

Prochaine étape

Je suis en train de porter le programme sur windows Iot (windows pour raspberry pi) de manière a se passer intégralement de pc.

50 réactions au sujet de « Yana4All 0.1 Beta, c’est par ici ! »

  1. Scoof Réponse

    😀 <3 😀 <3

    Top ce client ! j'ai poussé les essais de reconnaissance vocale vue l'heure et que tout le monde dort dans la maison mais franchement ça a l'air de réagir bien mieux qu'avant. Hâte de tester ça avec le poste qui sera dédié au client et mon micro blue

    Chapeau bas en tout cas 🙂

  2. Romain (Vorex) Réponse

    Ça a l’air vraiment sympa, j’ai pas regardé au niveau du code mais fonctionnellement parlant ça semble cool. Je vais matter le code ça pourrais m’inspirer 😉

    Au niveau du client il semble codé en cpp, pourquoi pas tenter un client à base d’electron ? ça permettrais d’avoir des techno js/html5/css comme pour la partie web et surtout d’avoir du crossplatform assez simplement.

    Beau boulot en tout cas 🙂

    • Idleman Auteur ArticleRéponse

      En réalité c’est du C# pour ear.exe et listen.exe, seul face est a base de node.
      J’ai voulu encapsuler face dans un exe via nodewebkit (qui semble faire a apeu près le même taff qu’electron) mais grosses pertes de performances sur le rendu des animations javascript du coup je suis resté sur un nodejs + navigateur standard

  3. Dolé Réponse

    Salut Idle!
    Super pour ce nouveau Yana! J’ai bien envie de tester ça mais pas de Windows, je vais lancer une machine virtuelle mais du coup j’aurai voulu savoir quelle est ta config? Genre version de Windows, dépendances net framework ou quoi si y’a. Merci bien =)

    Courage pour la suite!

    • Idleman Auteur ArticleRéponse

      Windows vista minimum avec synthèse/reco vocale présente (ce qui est le cas sur toutes les versions non allégées), coté framework je l’ai pas en tête mais théoriquement ça devrait fonctionner en natif sur vista, seven, 8 et 10.

  4. Thomas Réponse

    Pour l’installation de php-cli, il faut taper apt-get install php5-cli apparemment…

    J’essaye de suivre ton tuto, par contre pas de fichier socket.php dans le dossier yana-server, malgré la mise à jour…en même temps cela doit faire une année que je n’ai pas touché au Pi, je pense que je vais refaire une installation complète!

    Merci pour tes tutos en tout cas, vraiment intéressant de te lire!

  5. Phips Réponse

    Salut tout le monde,

    Je suis novice dans le monde de la programmation et j’ai tant bien que mal essayé d’installer YANA mais je suis bloqué après l’installation…
    J’ai installer yana depuis https://git.idleman.fr/idleman/yana-server

    une fois installer il me demande le login, le passeword, etc … je remplis les case correspondante et clic sur installer et la c’est le drame… il me vient plein de message d’erreur en lien un scren shot de mon problème :

    http://imageshack.com/a/img910/3241/rZ9p4n.jpg

    Je ne comprend pas ce que je doit modifier dans /var/www/yana-server/
    ou j’ai fait quelque chose de faux et je ne devrais pas avoir cette page ?

    Merci de votre aide 😉

  6. Toshibs161 Réponse

    Salut Idle !
    Encore toutes mes félicitations et remerciements pour ton travail titanesque !
    Petite question pour la version de Yana4All que tu développes pour Windows IoT : Tu coupleras le client et le serveur sur un seul Raspberry (et donc recoder tous les plugins Xo ) ou il faudra avoir un Raspberry-serveur sous Raspbian et un Raspberry-client sous Windows IoT ?
    As-tu eu une idée de la release date ? 🙂
    Bonne continuation en tout cas !!

    • Idleman Auteur ArticleRéponse

      Les deux sont possible serveur et client sur le rpi iot ou uniquement client sur iot et serveur sur raspian.
      On devrais également pouvoir faire en sorte de porter yana-server sur iot sans besoin de recoder quoique ce soit, étant donné que c’est du web c’est assez facile a porter sous tous types d’os.

      En ce qui concerne la date de release, pas la moindre idée :), ya pas mal de maille

  7. doods Réponse

    Salut Idleman,

    Un grand bravo pour tes développements que je suis (de loin, je l’avoue) depuis son début.
    Comme je suis expert C# les modules ‘ear’ et ‘listen’ ont excité ma curiosité. Mais a mon grand désespoir impossible de trouver les sources.
    Elles seront disponibles un jour ? Apres je comprends c’est dur de montrer son BB comme ça.
    Par contre si tu as trop de charge au niveau dev/ revue de code …

    doods

  8. DomTon Réponse

    Bonjour,

    D’abord très beau boulot 🙂

    Je voudrais savoir si un client sur un raspbian est envisagé et envisageable?

    Merci

    • Idleman Auteur ArticleRéponse

      Sur raspian non, la reconnaissance vocale étant peu fiable sur linux.
      En revanche sur windows iot (qui s’installe gratuitement sur rpi) oui, c’est actuellement en cours de dev :).

      • Eric Réponse

        Salut IdleMan,

        Aurais-tu une idée sur la date de sortie de la version IOT?
        Ca m’interresse, si tu veux beta tester je peux te donner un coup de main!

        Merci et encore bravo pour ton boulot :p

  9. ZoonDL Réponse

    Bonjour, j’ai un large soucis ! il est totalement impossible de mettre a jour yana-server ! Je rentre bien “cd /var/www/yana-server ” dans mes ligne de commande sur mon raspberry. en suite je rentre “git pull” et là le drame. le message”error : canno open ;git/FETCH_HEAD: permission denied” Que faire ?

  10. Polux Réponse

    Moi mon problème c’est qu’a chaque fois que je lance le launcher.exe , je tombe sur le fenêtre de choix de services(ear , mouth , face) sans avoir accès a la configuration , et quand je clique sur ‘fichier de configuration’ , on m’ouvre le play store. T_T help? sinon tu es un génie.

  11. rxdhg Réponse

    Hello !

    J’avais une petite question pour toi si tu as le temps, étant donné le prix du kinect et de son adaptateur USB as tu une solution viable comme micro alternatif ?

    Merci d’avance! 🙂

  12. Rémi Réponse

    Salut Idle,

    Je suis depuis pas mal de temps tes articles et c’est toi qui m’a poussé a me lancer dans la domotique.
    J’ai voulu essayé de mettre a jour mon client mais je bloque dès le début : impossible d’aller dans le dossier /var/www/yana-server car je n’ai pas la permission mais même en faisant un sudo il me dise commande non reconnue.
    Si tu as une idée je suis preneur en attendant je vais continuer a chercher 🙂
    En tout cas merci pour tout c’est vraiment cool ce que tu fais j’ai hâte de voir jusqu’où ira ce projet 😀

  13. Eric Réponse

    Salut IdleMan,

    Félicitation pour se travail de fou! je suis de près ton blog depuis quelques mois et je vais me lancer bientôt dans l’affaire.

    Peux tu nous en dire un peu plus sur la version Windows IOT? cela veux dire que l’on pourrait se passer d’un PC et utiliser seulement un RPI!?? ca serait vraiment top

    Tu penses pouvoir sortir :p une alpa quand en gros?

    Merci en tout cas

  14. poopeye Réponse

    Salut,
    Je profite de ce post pour adresser un énorme MERCI à Idleman pour le travail colossal dont il nous fait profiter! Je bidouille ma raspberry depuis peu et grâce à tes tutos, j’ai vraiment l’impression d’avancer! Alors MERCI!
    En revanche, concernat l’installation de Yana4all, je ne parveins pas à lancer manuellement le serveur socket. J’ai le message suivant: “could not bind to socket”. J’ai certainement fait un bourde quelque part… Si quelqu’un à une idée, je le remerce par avance!!

    • poopeye Réponse

      En changeant le port 9999 en 9998 ça passe mais Yana ne parle pas…
      Si quelqu’un a une idée, merci d’avance!

      • poopeye Réponse

        Salut,
        Quand je fais “netstat -tnlp”, j’ai plusieurs ligne qui s’affichent, dont :
        tcp 0 0 0.0.0.0:9999 0.0.0.0:* LISTEN 29910/php

        Le port 9999 semble donc occupé par un autre programme, mais ce qui est bizarre, c’est qu’en changeant le port 9999 en 9998, ça marche mais pas de réponse de Yana… Je vais essayer de tout ré installer..

  15. Haroal Réponse

    Salut,

    Tout d’abord félicitations pour ce travail impressionnant !!
    J’ai regardé le code source sur le github (joli code d’ailleurs) et j’ai une question : si j’ai bien compris, tu utilises un binaire winstt.exe pour la reconnaissance vocale, sauf que je n’ai pas trouvé le code source de ce binaire. Et j’avoue que ce qui m’intéresse surtout c’est de savoir comment tu as résolu le problème de la dictée des mots libres ce qui semble être codé dans winstt.exe 😀 Ça serait possible d’avoir le code source de ce binaire ? Ou du moins la façon dont t’as résolu ce problème ?

    Merci d’avance

  16. Galiaf Réponse

    Bonjour,
    Une belle mise à jour et j’ai l’impression que la reconnaissance vocale fonctionne mieux qu’avant.
    Par contre j’ai des problemes avec la voix. Message : Impossible de definir la voix Aucune voix correspondant n’est installé ou la voix été désactivée.
    Qqn at il pu resoudre ce probleme ?
    Merci

  17. Choco7 Réponse

    Salut Idleman,

    D’abord merci pour ton travail 😀 .

    Saurais tu quand la version IOT vera le jour et si elle vera bien le jour ? oO oO
    merci d’avance ( <3 je suis très intéressé par ton travail c'est formidable <3 ).

    Choco7.

  18. GALSTYAN Réponse

    Bonjour,
    Felicitations, une belle mise à jour et j’ai l’impression que la reconnaissance vocale fonctionne mieux qu’avant.
    Par contre j’ai des problemes avec la voix. Message : Impossible de definir la voix Aucune voix correspondant n’est installé ou la voix été désactivée.
    Qqn at il pu resoudre ce probleme ?
    Merci

  19. matt Réponse

    bonsoir,
    j aimerais bien tester cette version, mais j’ai des petits pb.
    j’arrive bien à lancer, en root, le serveur socket, mais quand je lance yana V2, j’ai l’erreur: “error : unable to parse received data : {“action”:”client_infos”,… ”
    même chose pour les modules “ear” et “mouth”
    une idée du pb ?
    merci

  20. faraday Réponse

    Salut,

    Bravo pour ton travail, étant nouveau dans le domaine je suis admiratif.
    Est ce que tu envisages faire des tutos similaires sur un systeme basé sur un nas synology ?
    bon courage

  21. Gardaux Réponse

    Bonjour, a tous.
    Tout d’abord un grand bravo pour ce projet, j’avais commencé à suivre le projet SARAH qui était innovant et prometteur. Mais alors là je dois dire chapeau.
    Toutefois j’ai un petit soucis à l’installation du “Yana Launcher”, lorsque je clique sur le bouton “Terminer”, il m’apparait une erreur L’accès au chemin d’accès C:\WINDOWS\system32\conf.json est refusé.
    J’ai du mal à comprendre d’autant plus que le fichier en question ne se trouve pas du tous à cet endroit !
    Avez vous un solution ? Merci par avance

    • Idleman Auteur ArticleRéponse

      Étrange, conf.json est sensé être cherché dans le dossier yana et non dans system32… Peux tu ouvrir une issue github a ce sujet que je m’y penche dès que j’ai une minute ?
      L’erreur viens de quel client ? mouth, ear, face ou le launcher ?

      Au ire sur peux les lancer sans passer par le launcher, assure toi juste que le fichier conf.json est bien à la racine du dossier des executables yana.

  22. ammous Réponse

    Bonsoir
    lorsque je fais git pull ja’i ce massage
    est ce que tu peux me renseigne comment faire
    merci

    pi@homecontrol /var/www/yana-server $ sudo git pull
    Updating a88d21b..941dbff
    error: Your local changes to the following files would be overwritten by merge:
    .tool.sample.php
    apigen.neon
    apigen.phar
    classes/Action.class.php
    classes/Client.class.php
    classes/Device.class.php
    classes/Personality.class.php
    constant.php
    db.json
    doc.bat
    log/index.php
    plugins/dashboard-monitoring/css/style.css
    plugins/dashboard-monitoring/js/main.js
    plugins/dashboard/Dashboard.class.php
    plugins/dashboard/Widget.class.php
    plugins/dashboard/css/jquery.dashboard.css
    plugins/dashboard/dashboard.plugin.php
    plugins/dashboard/img/preloader.gif
    plugins/dashboard/install
    plugins/dashboard/js/main.js
    plugins/dashboard/uninstall
    plugins/domoDoor/DoorAccess.class.php
    plugins/domoDoor/DoorLog.class.php
    plugins/domoDoor/css/style.css
    plugins/domoDoor/domodoor.plugin.php
    plugins/domoDoor/i2c.py
    plugins/domoDoor/install
    plugins/domoDoor/js/main.js
    plugins/domoDoor/uninstall
    plugins/door/install
    plugins/door/uninstall
    plugins/ipcam/Camera.class.php
    plugins/ipcam/install
    plugins/ipcam/ipcam.plugin.php
    plugins/ipcam/js/main.js
    plugins/ipcam/uninstall
    plugins/modele/install
    plugins/modele/uninstall
    plugins/preference/js/main.js
    plugins/profile/css/style.css
    plugins/profile/js/main.js
    plugins/profile/profile.plugin.enabled.php
    plugins/propise/Data.class.php
    plugins/propise/Sensor.class.php
    plugins/propise/arduino.ino
    plugins/propise/install
    plugins/propise/js/main.js
    plugins/propise/propise.plugin.php
    plugins/propise/uninstall
    plugins/radioRelay/RadioRelay.class.php
    plugins/radioRelay/css/main.css
    plugins/radioRelay/install
    plugins/radioRelay/js/main.js
    plugins/radioRelay/radioEmission
    plugins/radioRelay/radioEmission.cpp
    plugins/radioRelay/radioReception
    plugins/radioRelay/radioReception.cpp
    plugins/radioRelay/uninstall
    plugins/room/install
    plugins/room/uninstall
    plugins/speechcommands/SpeechCommand.class.php
    plugins/speechcommands/cmd.json
    plugins/speechcommands/img/sample.png
    plugins/speechcommands/install
    plugins/speechcommands/js/main.js
    plugins/speechcommands/speechcommands.plugin.php
    plugins/speechcommands/uninstall
    plugins/story/Cause.class.php
    plugins/story/Effect.class.php
    plugins/story/Story.class.php
    plugins/story/css/main.css
    plugins/story/edit.php
    plugins/story/js/main.js
    plugins/story/list.php
    plugins/story/story.plugin.php
    plugins/temperature/install
    plugins/temperature/temperature.plugin.enabled.php
    plugins/temperature/uninstall
    plugins/vocal_infos/cmd.json
    plugins/vocal_infos/img/yana.jpg
    plugins/vocal_infos/install
    plugins/vocal_infos/js/main.js
    plugins/vocal_infos/uninstall
    plugins/vocal_infos/vocalinfo.plugin.php
    plugins/wireRelay/css/main.css
    plugins/wireRelay/install
    plugins/wireRelay/uninstall
    plugins/wireRelay/wireRelay.plugin.php
    plugins/wysiwyg/css/trumbowyg.css
    plugins/wysiwyg/img/icons-sa75ce98b2b.png
    plugins/wysiwyg/js/main.js
    plugins/wysiwyg/js/trumbowyg.min.js
    plugins/wysiwyg/wysiwyg.plugin.php
    socket.php
    templates/default/css/font-awesome.min.css
    templates/default/font/FontAwesome.otf
    templates/default/font/fontawesome-webfont.eot
    templates/default/font/fontawesome-webfont.svg
    templates/default/font/fontawesome-webfont.ttf
    templates/default/font/fontawesome-webfont.woff
    templates/default/js/chart.min.js
    Please, commit your changes or stash them before you can merge.
    Aborting

  23. ammous Réponse

    bonsoir
    j’ai active domoticz dans l’intarface de yana
    mais je ne peux pas acceder au parametrage de domoticz
    aussi limage de l’icon de domoticz est vide

    est ce que tu as une idée du probleme, merci

  24. raspoutine Réponse

    Salut! super boulot, vraiment chouette l’interface!

    Par contre est t-il possible de faire communiquer le serveur avec des peripheriques via port serie? par exemple un arduino esclave qui pourrais soit controler des relais ou remonter des info type temperature exterieur, chauffe eau etc. voir meme logger tout ca et faire des graphiques.

    C’est le seul frein a l’adoption de yana chez moi qui ai deja une maison automatisé par arduino.

  25. Aldanne Réponse

    Salut Idleman,

    Merci pour ton travail il m’est très utile.
    Sinon la version du client pour Windows IOT existe déjà ou pas ?
    Elle m’intéresse beaucoup beaucoup.

  26. Samuel Réponse

    Bonjour, excellent boulot tu aurais une date de sortie pour yana4all iot ? et yana-server iot ?

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.