Release de S.A.R.A.H. v2.9
Voici les détails de la release v2.9 de S.A.R.A.H. qui sera en version RC pendant quelques jours. Le changelog est accessible depuis l’onglet « A propos » de la webapp.
Charte et Design
Un grand merci à Olivier Guiard pour son logo de S.A.R.A.H.
Un grand merci à Ded Koder et HotfireNet pour l’avatar de S.A.R.A.H.
Voici le nouveau portail, Flat Design et Modern UI dans lequel il est possible de déplacer les portlets avec la librairie Gridster.
Portlets
- Les portlets ont une position X,Y et une taille W,H sur la grille
- Les plugins peuvent fournir des fichiers
portlet.html
etportlet_back.html
pour habiller le portail. - Les gabarits de portlet peuvent déclencher des requêtes AJAX via la classe
ajax
sur un lien ou un formulaire - Il est possible de déclarer des CSS depuis ces gabaits.
NodeJS
Démarrage
- Nettoyage des propriétés
- Tous les plugins sont initialisés
- Possibilité d’exécuter du code avec
exports.init = function (SARAH){ }
Exceptions
- Mise en place d’un
catch all
de toutes les exceptions - Ajout de Winston, un système de logs vers un fichiers
/script/wsrnode.log
Fonctions
- Ajout de
SARAH.call()
pour appeler un plugin sans règles - Le code
SARAH.speak()
peut être synchrone ou asynchone (avec callback) - Ajout de
SARAH.shutUp()
arrête unSARAH.speak()
- Ajout des paramètres
SARAH.runApp()
AppStore
- Affichage des stats de téléchargement
- Téléchargement du Master Trunk GitHub (expérimental)
- Fix d’une erreur CRC
Divers
- Ajout de la librarie
xml2js
pour parser du XML en JSON - Rechargement automatique des
.js
modifiés - Affichage de la durée des call()
Kinect / Micro
Gros refactoring de la reconnaissance vocale
- Ajout d’un serveur RTP pouvant reconnaître le stream audio (experimental)
- Choix de la langue Google Speech
dictation="en-US"
- Ignore les grammaires de la mauvaise langue
- Rechargement XML sans perdre le contexte
- Correctif sur le
lazy
maintenant dans le nom du fichier OU de la règle - Ajout de la durée des requêtes dans les logs
- Support des
.wma
en plus des.wav
- Remplacement de
Sentinel
parLog2Console
Pour Log2Console
créer un Receiver UDP sur le port 9999.
Performances
Consommation CPU approximative:
- Reco vocale: 2%
- Take picture: +0%
- Reconnaissance faciale: +2%
- QRCode (6): +8%
- Websocket: +7% (11% actif)
- Gesture: +9%
- Gesture + Websocket: +28% actif
Certaines machines ont des « System Interrupts » qui peuvent consommer énormément de CPU. C’est lié au système je n’ai pas encore de pistes.
Articles
Voici quelques articles rédigés entre la v2.8 et la v2.9 hors plugins et démos.
- Vidéo de SARAH à Pas Sage en Seine 2013
- SARAH, JOSHUA, JARVIS, YURI, et les autres …
- Microphone pour The Voice
- SARAH gagne quelques Neurones (partie 2)
- Modules avancés
Plugins
Un grand merci à la communauté ! Voici la liste des plugins releasés entre la v2.8 et la v2.9.
- Calendar 2.0
- Freebox 2.0
- HomeCenter 2 (Vincent Fresnel)
- Calendar (where in title)
- Volume (Guigui Abloc)
- Babysiter (Vincent F)
- Parle (Hotfirenet)
- Translate
- Minuteur (Olivier Stéphane)
- Bonjour (Alexis BARRY)
- Mail 2.0
- XBMC 1.4 (Jérôme VEYRET)
- GoogleTraffic (Baptiste Marienval)
- Blink(1)
- Pebble
- Calcul (Benoît GUILLAUME)
- Tvneufbox (Amaury du)
- Control (Alexis BARRY)
- VDM (Maxime Hermouet)
- byebye (Hotfirenet)
- TvPhilips (Thomas Pinaud)
- DateConviviale (Olivier Dupont)
- Squeezebox (Vincent Fresnel)
- Roomba (Alain Chiorboli)
- Horoscope (Baptiste Marienval)
- SSH (Mad Rippeur)
La version 2.9 est capable d’installer les plugins directement depuis un repository GitHub.
IceBox
La « todo list », dans l’état actuel des choses, de tout ce qu’il faudrait faire un jour…
[ ] Plugin: Better Riverscript with memory [ ] Plugin: Shazam [ ] Plugin: POC Chess Game [ ] Plugin: Meteo world wide (with Réunion) [ ] Plugin: Rock Paper Scisor (https://plus.google.com/115506004518341004775/posts/ZaqAtocmAJm) [ ] Plugin: Halloween [ ] WSRNodeJS: Log sur le web [ ] WSRNodeJS: listing trigger / actions like IFTTT [ ] WSRNodeJS: Portal: ChartJS [ ] WSRNodeJS: Set a proxy for all request [ ] WSRNodeJS: Portal: Twitter [ ] PhantomJS: Take Screenshot [ ] WSRMacro: Reduce CPU use [ ] WSRMacro: Camera vs Learn (little bit tricky) [ ] WSRMacro: Restart if necessary [ ] WSRMacro: Handle webcam video stream (https://code.google.com/p/ispyconnect/source/browse/#svn%2Ftrunk%2FiSpyApplication) [ ] WSRMacro: Handle webcam audio stream [ ] WSRMacro: ARM Processor [ ] WSRMacro: RTPClient Stream (https://plus.google.com/u/0/103307507185339634362/posts/2oq3XyUDW7v) [ ] WSRMacro: custom.ini Rotate image 180° [ ] WSRMacro: sleep mode [ ] WSRMacro: XML attribute to start/stop ... gesture reco [ ] WSRMacro: XML attribute to start/stop ... face reco [ ] WSRMacro: Timeout gesture, face [ ] WSRMacro: Mono build ? (http://www.mono-project.com/Main_Page) [ ] WSRMacro: OCR on photo stream [ ] WSRMacro: Gestures context [ ] WSRMacro: Speaker fingerprint [ ] WSRMacro: Speaker gender [ ] WSRMacro: Speaker IP / Room / Callback [ ] WSRMacro: sending X,Y,Z of head [ ] WSRMacro: sending mood [ ] WSRMacro: Track / Recognize blob (http://stackoverflow.com/questions/14206699/tracking-blobs-with-microsoft-kinect) [ ] WSRMacro: Grammar: reload single file [ ] Doc: User Echo or GetSatisfaction ? [ ] Doc: VoteBox [ ] Doc: Postpone wakeup if there is traffic [ ] Idea: Google Now [ ] Idea: DIY Maginc Mirror (http://diymagicmirror.com/) [ ] Idea: Bing Vision [ ] Idea: Animated avatar ? of sound wave [ ] Mobile: Speech To Text [ ] Mobile: Ratchet mobile site
J’ai remplacé la version RC par une version RC1 avec un correctif sur les contextes.
J’upload une RC2 visiblement un problème avec la partie Micro (vive les dll !)
Génial ! Encore de grosses évolutions 😀 Je suis en vacances à la fin de la semaine, je vais en profiter pour m’y mettre vraiment !
J’avais un problème avec la 2.8, sur le pc où Sarah tourne je voulais utiliser XBMC en parrallèle, quitte à avoir un pc qui tourne 24/24. Après avoir lancé XBMC, après un moment Sarah ne répondait plus à rien 🙁
Ah étrange, faudrait que tu en parles avec Jerôme. J’ai eu une fois le problème a cause d’une option XBMC qui prenait la main sur l’audio
v2.9 RC3 en cours d’upload
[X] BUG Container color
[X] RFE Log2Console
[X] BUG Test with RTP Server
[X] BUG PhantomJS vs Winston
[X] BUG: Installing plugin from GitHub sometimes fails
[X] BUG: Msg NodeJS on Startup
v2.9 RC4 en cours d’upload
[X] BUG: Warn on properties
[X] BUG: Try/Catch on Kinect + Logs
[X] BUG: Fix IE9+ (gracefull degradation)
[X] BUG: Fix HTML5
v2.9 RC5 a priori finale sauf bug extrême
[X] Restart for a given timeout
[X] NodeJS version
[X] Add parameter Listen true/false in request/xml
Bonjour
En passant de la version 2.8 à cette version 2.9.5, l’accès à la vidéo de la kinect n’apparaît plus sur le raccourci de la maison????
Est-ce normal??? si oui comment accéder à la vidéo maintenant notamment pour la reconnaissance faciale????
Il faut modifier le custom.ini pour activer les fonctions souhaitez. Il y a un custom.cpu.ini avec tout d’activé
Bonjour,
Super projet ! On en rêve tous !
Petite question, S.A.R.A.H. sait-elle gérer le protocole X10 ?
@DavidM Merci, actuellement il n’y a pas de plugin officiel X10, les gens attaquent directement les API des box domotiques (qui gèrent plusieurs protocoles). Après si il y a une API ca doit être faisable.
Merci pour la rapidité…
Mon idée était d’avoir un PC (avec CM15) gérant le X10+SARAH sans passer par une box dédiée.
Faut voir si il y a une « API » ou voir même qu’il y a peut-être déjà une libraire NodeJS
C’est encore à l’état de projet/idée…
Je vais aller chercher des infos…
Merci
Continue comme ça 🙂
Salut, encore un travail formidable. Vraiment bravo..
Un question, depuis la 2.9 avec log2console, j’ai bien créé un receiver UDP port 9999, mais ca reste vide. Une idée ? De plus y’a moyen aussi de capter le flux à distance (ben oui sarah est sur une autre machine dans le salon) ?
@wil
Il faut mettre IPv6 et lancer en tant qu’Admin
https://plus.google.com/u/0/103094350849199779906/posts/Gt5WN1XoHut
Que veux tu dire par Capter le flux à distance ?
– SARAH peut se splitter en client et serveur
– SARAH intègre un serveur RTP expérimentale pour streamer de l’audio (https://plus.google.com/u/0/103724892035726095504/posts/UnLcRGzowuv)
merci de ta réponse rapide,
j’ai loupé ce post et google m’a redirigé vers cette page où j’ai tenté ma chance:)
et j’ai bien fait car avec admin et sans ipv6 ca fonctionne …
merci beaucoup
par capter à distance, je veux dire qu’aujourd’hui je suis obligé de me connecter avec Teamviewer pour aller voir les logs de wsrmicro et wsrnode. y’a t’il un moyen de récupérer les flux de logs depuis un autre pc ?
Merci d’avance
J’ai pas de solution rapide, les logs sont écrites dans le fichier /bin/*.log et dans le script/*.log donc possibilité de faire un tail -f dessus via le réseau.
c’est déjà une solution rapide, je vais regarder çà.. merci encore..