
Voici la version 2.8 de S.A.R.A.H. qui se faisait attendre !
J’ai essayé d’intégrer un maximum de trucs ! Malgré toute la doc, le marketing et le support nécessaire ces derniers mois 🙂
Quelques Chiffres
Tout d’abord un grand MERCI à toute la communauté qui semble s’amuser autour de SARAH. Bienvenue aux gens qui l’ont découvert via DevoxxFR, ParisJS, GeekInc, etc… J’ai essayé de réaliser mon Poisson d’Avril mais ça n’a pas encore marché ^^
La version 2.7 a été téléchargée 870 fois ! Il y a 41 plugins dans l’appstore. Ainsi que tous les plugins persos. Certains plugins ont été téléchargés plus de 250 fois !
Documentation
J’ai mis en ligne plusieurs screencasts de manière à étoffer l’aide à la création de plugins:
- SARAH: Getting Started
- SARAH: Mon premier module
- SARAH: Modules avancés
- SARAH: Persistance des données
Ces docs et la FAQ pointent des sous articles qui détaillent une bonne pratique, une fonction, un plugin, etc, … La communauté G+ est aussi très active !
JARVIS !
Une variable dans le custom.ini permet de remplacer à chaud SARAH par {NOM} dans toutes les grammaires. Il y a de nombreux échanges dans la communauté pour trouver une voix d’homme.
Edition Web
Il est maintenant possible d’éditer les fichiers des plugins depuis le web.
Les plugin.js sont rechargés après modification. Il n’est plus nécessaire de relancer NodeJS.
Audio
SARAH sait jouer des WAV. Donc par exemple jouer les messages de répondeur FreeMobile 😉 (si quelqu’un fait le plugin)
SARAH surveille un dossier « audio ». Les WAV déposés seront interprétés par le moteur !
SARAH peut recevoir une requête POST contenant un WAV à déposer dans le dossier « audio ». Ou une requête GET indiquant un chemin de fichier à interpréter.
Bon @Guiguiabloc le streamming depuis un Raspberry Pi sera pour la 2.9 😉
Filtres de règle
Il est maintenant possible de brancher un script avant et après toutes les règles. L’idée étant de pouvoir faire un traitement transverse à tous les plugins. Comme un bruitage ou clignoter une LED, etc…
Au passage la confidence est envoyée en paramètre (tout comme directory).
Contexte
J’ai rajouté un timeout de 60s (custom.ini) sur les contextes ce qui évite de dire « SARAH j’ai fini de te poser des questions ».
Autres nouveautés
Linux
J’ai mis dans une variable le chemin de PhantomJS. Un utilisateur a tenté le portage de SARAH sur Ubuntu. un autre tente le portage sur RaspberryPi.
Helpers
La fonction SARAH.last(res) permet d’exécuter la dernière commande. Vous pouvez maintenant créer des règles vocales ou gestuelles pour dire « Encore »
La fonction SARAH.exists(cmd) permet de tester si un plugin est disponible.
Bugs et RFE
- La variable SARAH est dispo dans les CRON
- Option pour activer les gestures en mode assis (expérimental)
- Try/Catch sur les grammaires
- Try/Catch sur les connexions réseau
- Correctif d’un bug sur le texte simulé
- Correctif sur la gestion des versions dans le custom.prop
- Correctif concernant QueryString dans les grammaires
Plugins
Karotz
Mise à jour avec le code Java et le JRE pour avoir de meilleurs temps de réponse. Le code C# plantait trop souvent.
ChatterBot 2.0
J’ai réécris le plugin en intégrant un ChatterBot Riverscript traduit en Français.
Je ne l’ai pas encore modifié, mais son cerveau persisté sous la forme d’un objet JSON offre de nombreuses possibilités à creuser.
Dictionary 2.0
Le plugin a été réécrit pour utiliser la librairie Cheerioprésent dans la v2.8. L’idée est de se passer de PhantomJS quand c’est possible.
Meteo 2.0
Le plugin a été réécrit pour utiliser la librairie Cheerio présent dans la v2.8. L’idée est de se passer de PhantomJS quand c’est possible.
Il va certainement évoluer pour attaquer un site web plus générique de manière à afficher la météo à nos amis Québécois et Réunionnais.
Allocine 2.0
C’est le plugin movies réécrit avec Cheerio. J’ai gardé l’ancien et changé de nom pour avoir un exemple évolué d’usage de PhantomJS.
TV Samsung
Un exemple d’envoi de requête en SOAP pour piloter certaines TV Samsung (j’ai une UE55C6000) et afficher des messages. D’autres fonctions arriveront par la suite.
La communauté travaille sur un plugin TVSony. +Cédric Locqueneux j’espère qu’on va réussir à trouver un tronc commun pour un max de TV.
TV Sony
EDIT: Le temps que j’écrive cet article Remy De Diego et Jerome Veyret ont proposé la v1.0 du plugin TVSony
Linknx
EDIT: Delphine Fabrice et Tanguy THEBLINE viennent collaborativement de concocter un plugin pour la box domotique Linknx.
Simsimi
Un plugin de Johnny Baillargeaux permettant de discuter avec un ChatterBot en ligne.
Izipedia
Un plugin de Johnny Baillargeaux permettant de poser des questions à une base de connaissances développée par Hicham TAHIRI.
Infotrafic
Un plugin de Loic Lucas inspiré par celui de Wilsto pour indiquer le trafic en Ile de France.
XBMC
Une mise à jour de Jerome VEYRET pour générer automatiquement un bout de grammaire avec les artistes de la base XBMC.





Répondre à Tanouky Annuler la réponse.