J'ai depuis peu un KAROTZ que je souhaite utiliser pour mon système domotique. J'ai testé le plugin de ANTOR.Celui-ci fonctionne trés bien cependant il y a toujours un certain temps de latente (requêtes vers internet nécessaires et démarrage de l'application sur le Karotz). L'accès internet est par ailleurs indispensable.
Souhaitant avoir quelque chose de fiable, j'ai développé une serveur HTTP en python sur le KAROTZ qui reçoit des requêtes HTTP en entrée.Je n'ai alors qu'a faire des requêtes GET depuis ma VERA (peut fonctionner avec toutes les BOX

luup.inet.wget("http://192.168.'bip'.'bip':8080/color?00FF00")
# Permet de changer la couleur du KAROTZ (utile pour valider la prise en compte des commandes pour une alarme par exemple. Une couleur par état d'alarme.
luup.inet.wget("http://192.168.'bip'.'bip':8080/colorpulse?00FF00")
# Permet de changer la couleur du KAROTZ en clignotant
luup.inet.wget("http://192.168.'bip'.'bip':8080/tts?L'alarme%20est%20désactivée")
# Permet de lancer la synthèse vocale

Voila. C'est facile et instantané ...enfin

Si ca intéresse des gens, je peux fournir le code

PS : Je viens de voir que sur le site de WIZZ, il est possible de télécharger un serveur CGI pour son KAROTZ

-----------------------------------------------------------------------------------------------------------------
Voici ci-dessous la procédure pour contrôler directement son KAROTZ.
ATTENTION : Je ne suis en aucun cas responsable des risques causés à votre lapin suite à l'application de cette procédure et ne garantis aucun résultat.
Il est également possible que la GARANTIE s'annule en cas de problème.
Etape 1 :
Rooter sous KAROTZ pour obtenir un accès TELNET
http://wizz-cc.blogspot.fr/2012/09/karo ... ccess.html (L'accès permanent ROOT est préférable)
Etape 2 :
Se connecter en TELNET (port 23)
Ajouter le script dans le fichier /usr/HTTPserver.py
#wget -O /usr/HTTPserver.py http://dl.free.fr/XXXXXXXX
Vous pouvez tester le serveur WEB et avoir les LOGS en lançant la commande "python /usr/HTTPserver.py"
Comme vous pouvez le voir le code est trés simple à comprendre et donc totalement personalisable.
Pour lancer ce script à chaque redémarrage, modifier le fichier yaffs_start.sh et ajouter à la fin du fichier "/usr/bin/python /usr/HTTPserver.py &"
ATTENTION : Le code n'est absolument pas sécurisé.
Etape 3 :
Quatre commandes sont pour le moment possibles :
luup.inet.wget("http://192.168.'bip'.'bip':8080/color?00FF00")
# Permet de changer la couleur du KAROTZ
luup.inet.wget("http://192.168.'bip'.'bip':8080/colorpulse?00FF00")
# Permet de changer la couleur du KAROTZ en clignotant
luup.inet.wget("http://192.168.'bip'.'bip':8080/tts?L'alarme%20est%20désactivée")
# Permet de lancer la synthèse vocale

luup.inet.wget("http://192.168.'bip'.'bip':8080/sound?monfichier.mp3")
# Permet de lancer un fichier audio (nécessite d'être présent sur le KAROTZ ou une clé USB)
Par défaut si une application KAROTZ est lancée ( de type la météo), elle est automatiquement supprimée pour forcer le TTS en priorité (pour la version 0.1)
Voici les liens de téléchargement :
http://dl.free.fr/jk54rvYH8 (version 0.1)
http://dl.free.fr/ntTK6ROm6 (version 0.2)
Version 0.2 News :
Il est nécessaire de créer le répertoire "/usr/sounds" (mkdir /usr/sounds/) pour l'installation
- Possibilité de choisir la vitesse de la LED
luup.inet.wget("http://192.168.'bip'.'bip':8080/colorpulse?00FF00&fast")
luup.inet.wget("http://192.168.'bip'.'bip':8080/colorpulse?00FF00&normal")
luup.inet.wget("http://192.168.'bip'.'bip':8080/colorpulse?00FF00&slow")
- Il n'est plus nécessaire d'avoir internet pour la synthèse vocale si la commande à déjà été lancée. Tout est sauvegardé dans /usr/sounds. Si le fichier est présent il est automatiquement lu sans requête internet.
ATTENTION : Les fichiers audio ne sont plus supprimés pour le moment.
-----------------------------------------------------------------------------------------------------------------
Concernant le rfid, il est aussi possible de se passer d'application et des serveurs distants. Le binaire /usr/karotz/bin/rfid-daemon est utilisé pour la lecture du TAG avec l'envoi d'un message DBUS. On peut voir ce résultat avec la commande dbus-monitor --system.
Il suffit alors de parser cette sortie et si le TAG est reconnu on lancer notre action.
Voici un exemple de code BASH (tous les process KAROTZ qui se connectent aux serveurs doivent etre killés pour éviter plusieurs interactions avec le TAG) :
C'est trés trés moche mais ça marche
- Code: Tout sélectionner
#!/bin/bash
/usr/karotz/bin/rfid-daemon&
rfiddetect=0
dbus-monitor --system | while read line
do
echo "LINE" . $line
if [ "$line" == 'string "TAG_RFID"' ]
then
rfiddetect=$((rfiddetect + 1 ))
echo $rfiddetect
if [ "$rfiddetect" == 2 ]
then
rfiddetect=0
echo "Recognized Tag RFID".$line
killall madplay
/usr/bin/madplay /usr/karotz/res/sounds/karotz_allume.mp3
wget BLABLABLA
fi
else
continue
fi
done