Release de S.A.R.A.H. v2.8


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:

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.

11 pensées sur “Release de S.A.R.A.H. v2.8

  • 14 mai 2013 à 0 h 14 min
    Permalink

    Attention le mode « assis » des gestures est à « true »

    EDIT: Je viens d’uploader une nouvelle version de manière à corriger des traces, ce mode seated, tester plusieurs plugins
    EDIT2: Si vous observez un crash du client ou du serveur je suis preneur de logs, je n’arrive pas à reproduire

    Répondre
  • 14 mai 2013 à 0 h 44 min
    Permalink

    Elle a l’air plutôt complète cette maj. Je « suis » le projet depuis une quinzaine de jour, et je suis totalement impressionné par l’effervescence (surtout sur G+) provoqué par cette S.A.R.A.H !
    Encore bravo pour le chemin accompli et vivement la suite (prometteuse!) ;D

    Répondre
  • 19 juillet 2013 à 20 h 19 min
    Permalink

    C’est une superbe idée. Je vais m’intéresser au portage sur Linux et tenter d’apporter de l’aide. 😉

    Répondre
  • 19 juillet 2013 à 20 h 24 min
    Permalink

    @Tanouky oh c’est courageux ! Tous les projets qu’on a référencé sur la communauté ont soit abandonné soit utilisent des API connectées (AT&T, Google, Android) avec les problèmes associés

    Répondre
  • 31 juillet 2013 à 10 h 49 min
    Permalink

    Bonjour,
    Votre projet a l’air très intéressant. Est-il possible de l’utiliser avec une installation KNX. Par exemple piloter son installation knx à la voix et si oui comment ?

    Répondre
  • 14 mai 2014 à 22 h 29 min
    Permalink

    Bonjour,

    oOOoohh je suis amoureux de Sarah (!!)
    J’adore le projet, le concept, moins le nom cependant.
    J’ai vu que l’on pouvait changer le nom, mais rien n’y fait
    elle ne répond qu’au nom de Sarah…

    😉

    Répondre
    • 14 mai 2014 à 22 h 36 min
      Permalink

      Il faut modifier le nom dans le custom.ini puis redémarrer le client. On remplace à chaud les SARAH par le nom dans les grammaires

      Répondre
  • 14 mai 2014 à 23 h 15 min
    Permalink

    Merci pour cette rapide réponse,
    Je m’acharnais à relancer le serveur node JS.

    😉

    Répondre
  • 14 mai 2014 à 23 h 30 min
    Permalink

    @Hearty non ce n’est pas le serveur NodeJS qu’il faut relancer mais le client C# (la maison en bas dans la barre des taches) qui lit les XML

    Répondre
  • 15 mai 2014 à 0 h 05 min
    Permalink

    Oui oui, c’est bien rectifié, je parlais au passé, « je m’acharnais ».
    Quoiqu’il en soit merci du suivi j’aurais pu avoir mal compris.

    Encore une fois,
    j’adore ce que je découvre et ce que j’entrevois comme utilisations possibles.

    😉

    Répondre

Laisser un commentaire

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