i-magin Posté(e) le 30 décembre 2013 Signaler Posté(e) le 30 décembre 2013 Tout récemment, j'ai écrit sur ce forum un petit tuto sur l'envoi de SMS via un serveur PAW. Ce serveur Paw offre bien des possibilités, dont la gestion de la synthèse vocale... Ingrédients Cette fois, uniquement un "bon vieux smartphone android" Paramétrer le smartphone pour que la connexion wifi soit toujours active (y compris en veille) Vous devrez activer la fonction synthèse vocale sur celui-ci Installation du serveur Paw et configuration de la fonction synthèse vocale - lire ici : http://www.domotique-fibaro.fr/index.php/topic/74-message-sms-via-un-serveur-paw/ - ainsi que la page dédiée ici : http://www.abavala.com/2013/01/08/paw-synthese-vocale-multilingue-sous-android/ Tester avec une commande HTTP depuis votre navigateur préféré http://192.xxx.xxx.xxx:8080/actions/text_to_speech.xhtml?texte=phrase%20de%20test Passons à la Fibaro HC2 : On peut créer un périphérique virtuel avec adresse IP + port 8080 et la ligne "string" suivante GET /actions/text_to_speech.xhtml?texte=alarme%20activée&langue=fr&vol=8 HTTP/1.10x0D0x0A0x0D0x0A .... mais la contrainte c'est un bouton par type de message Le code LUA de la Fibaro : on oublie pour l'instant, pour les mêmes raisons que l'envoi de SMS Utiliser le code de @krikroff, la solution la plus souple J'ai adapté le "main process" de la façon suivante : ------------------------------------------------------------------------------------------- -- Main process ------------------------------------------------------------------------------------------- function SendSpeech(speech, vol) local uri = "/actions/text_to_speech.xhtml"; local params = "?texte=" .. urlencode(tostring(speech or "empty")) .. "&langue=fr&vol=" .. vol; Tk.Net.isTraceEnabled = false; local HttpClient = Tk.Net.HttpRequest("192.xxx.xxx.xxx", 8080); HttpClient:setReadTimeout(500); local response, status, errorCode = HttpClient:request("GET", uri..params, { "User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:25.0) Gecko/20100101 Firefox/25.0", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9" }); HttpClient:disconnect(); HttpClient:dispose(); HttpClient = nil; end -- récupération du contenu des variables globales speech (texte à reproduire) et vol (niveau sonore) local speech = fibaro:getGlobalValue("speech") local vol = fibaro:getGlobalValue("vol") SendSpeech(speech, vol); Commentaires : Modifier l'adresse IP dans le code LUA Créer sur votre box deux variables globales avec le panneau variables : - speech (vous pouvez l'initialiser par exemple avec ce message : test de message) - vol (vous pouvez l'initialiser par exemple à : 15) Si le nom de ces deux variables ne vous plait pas, vous pouvez les changer juste après les deux fonctions getGlobalValue, entre guillemets Vous pourrez insérer ce type de lignes dans une scène : --[[ %% properties %% globals --]] -- message vocal à envoyer au smartphone fibaro:setGlobal("speech", "bienvenue chez vous") -- volume sonore du smartphone fibaro:setGlobal("vol", "13") -- activation du périphérique virtuel et bouton ad hoc fibaro:call(88, "pressButton", "9"); La voix sur mon smartphone est un peu métallique... et les oreilles de mon smartphone ne bougent pas Pour terminer : J'ai aussi adapté le main process pour la gestion de MP3 avec le serveur PAW Mais j'ai constaté des blocages de la fonction lecture MP3 sur mon smartphone, qui m'oblige à redémarrer celui-ci Je n'ai pas vraiment cherché d'où vient le problème... tests trop rapprochés de lecture MP3 ? Si certains le souhaitent, je pourrai le mettre à disposition (pour une voix moins métallique ) 1
Moicphil Posté(e) le 30 décembre 2013 Signaler Posté(e) le 30 décembre 2013 Perso, j'ai pas testé le 'text to speech' avec mon serveur Paw, mais ça me donne envie d'essayer!;-) Avec plaisir, tu peut partager...
i-magin Posté(e) le 30 décembre 2013 Auteur Signaler Posté(e) le 30 décembre 2013 ... donc, très rapidement pour la lecture des MP3 (vous reporter aux explications de la synthèse vocale) Info ici : http://www.abavala.com/2013/01/25/paw-lecture-de-fichier-mp3/ Attention : le PHP créé va chercher les fichiers MP sous "/sdcard/music/" et non sous "/sdcard/paw/music" comme mentionné dans les commentaires Le main process que j'ai adapté.... et on remercie à nouveau @krikroff ------------------------------------------------------------------------------------------- -- Main process ------------------------------------------------------------------------------------------- function SendMP3(mp3) local uri = "/actions/mp3.xhtml"; local params = "?fichier=" .. mp3; Tk.Net.isTraceEnabled = false; local HttpClient = Tk.Net.HttpRequest("192.xxx.xxx.xxx", 8080); HttpClient:setReadTimeout(500); local response, status, errorCode = HttpClient:request("GET", uri..params, { "User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:25.0) Gecko/20100101 Firefox/25.0", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9" }); HttpClient:disconnect(); HttpClient:dispose(); HttpClient = nil; end local mp3 = fibaro:getGlobalValue("mp3") -- nom du fichier mp3... SendMP3(mp3); - modifier l'adresse IP - une seule variable globale: mp3 (à initialiser avec un nom de fichier mp3 sans son extension) Et je vous ai averti pour le blocage de la lecture des MP3 (dans ce cas rebooter votre smartphone) 3
electone77 Posté(e) le 12 mars 2014 Signaler Posté(e) le 12 mars 2014 Bonjour, Desole je dois louper un truc tout bête, car ça marche pas chez moi le VD donné ci-dessus. 1. quand j'essaie l'URL direct qui pointe sur le fichier text_to_speech.xhtml du serveur PAW : ça marche 2. quand je créai un VD avec juste un bouton de type string, avec "GET /actions/..........3 : ça marche 3. Je créai le VD avec le script donné ci-dessus : quand je clique sur le bouton j'ai rien. quand je clique sur Debug du bouton j'ai "[ERROR] 23:20:02: line 6: attempt to call global 'urlencode' (a nil value) j'ai bien les variables "speech" et "vol" qui sont créées via le panneau de variable. j'ai bien mis la bonne IP dans le VD. Je suis avec une HC2 version 3.590 Merci pour votre aide..
i-magin Posté(e) le 12 mars 2014 Auteur Signaler Posté(e) le 12 mars 2014 J'aurais du être plus explicite, lorsque j'avais écrit "Utiliser le code de @Krikroff" mais ce tuto faisait suite à un autre sur l'envoi de SMS via un serveur PAW, qui s'appuie également sur le Toolkit Framework de @Krikroff Il faut donc aller copier l'intégralité du code de @Krikroff : ICI -> Voir son post du 18/12/2013 Puis remplacer toutes les lignes du "main process" par celles de mon tuto et suivre mes commentaires
electone77 Posté(e) le 13 mars 2014 Signaler Posté(e) le 13 mars 2014 pops désole.. je viens le faire et ça marche nickel merci !
specimen Posté(e) le 26 mars 2014 Signaler Posté(e) le 26 mars 2014 J'aurais du être plus explicite, lorsque j'avais écrit "Utiliser le code de @Krikroff" mais ce tuto faisait suite à un autre sur l'envoi de SMS via un serveur PAW, qui s'appuie également sur le Toolkit Framework de @Krikroff Il faut donc aller copier l'intégralité du code de @Krikroff : ICI -> Voir son post du 18/12/2013 Puis remplacer toutes les lignes du "main process" par celles de mon tuto et suivre mes commentaires Bonjour, Je me bat mais je ne parviens pas à faire fonctionner ce code. PAW est installé et fonctionne. Qu'entends tu pas l'intégralité du code ? J'ai collé dans "main loop" Toolkit.lua suivi de Toolkit.net.lua suivi de ton code "main process" et dans debug j'ai : [DEBUG] 19:35:18: ------------------------------------------------------------------------- [DEBUG] 19:35:18: -- HC2 Toolkit Framework version 1.0.4 [DEBUG] 19:35:18: -- Current interpreter version is Lua 5.1 [DEBUG] 19:35:18: -- Total memory in use by Lua: 75.78 Kbytes [DEBUG] 19:35:18: ------------------------------------------------------------------------- [DEBUG] 19:35:18: Toolkit.Net loaded in memory... [ERROR] 19:35:18: line 512: attempt to call global 'urlencode' (a nil value) Du coup j'ai cherché la fonction parmi les 7 fichiers lua livrés par krikroff la fonction urlencode... des fois qu'il faille coller les 3000 lignes de code de Krikroff ! ... rien. Je sèche...
i-magin Posté(e) le 26 mars 2014 Auteur Signaler Posté(e) le 26 mars 2014 Cliquer sur le lien que j'ai donné pour le post de Krikrofff sur le forum Fibaro Chercher le post datant du 18/12/2013, qui débute par ce message "For: I-margin" Récupérer le fichier PawSMS.zip Copier les 560 lignes de code, dans un bouton de module virtuel Remplacer toutes les lignes du "main process" par celles de mon tuto et suivre les instructions dans la rubrique commentaires
specimen Posté(e) le 26 mars 2014 Signaler Posté(e) le 26 mars 2014 Cette fois ca y est 'tain faut s'appeler Indiana Jones ! Cool ! Merci i-magin, ca ouvre plein de perspectives dès qu'on peut envoyer une requête http paramétrée. Cela dit c'est vrai que l'architecture du HC2 est quand même assez contraignante. Peut être que la v4.... Merci encore et merci àKrikroff
971jmd Posté(e) le 29 janvier 2017 Signaler Posté(e) le 29 janvier 2017 @i-magin salut j'ai trouver un tablette Android et j'ai commence tout juste a avec PAW j'ai tester la ligne suivante et pour le moment rien ne ce passe : http://192.168.0.10:8080/actions/text_to_speech.xhtml?texte=phrase%20de%20test pour info j'ai toujours le mot de passe ADMIN ET PAW sur le serveur paw
fredokl Posté(e) le 29 janvier 2017 Signaler Posté(e) le 29 janvier 2017 Salut, je me suis aussi lancé avec paw avec un vieux téléphone Android pour tester mais le fichier PawSMS.zip est introuvable sur le forum ainsi que le lien qui mène sur la page de @Krikroff Si quelqu'un pouvez re-up, merci.
i-magin Posté(e) le 29 janvier 2017 Auteur Signaler Posté(e) le 29 janvier 2017 Désolé @971jmd et @fredokl , mais mon post date de 2014, assez vieux pour avoir oublié ma procédure Depuis je suis passé sur Jeedom et j'utilise pour les SMS un développement complémentaire de @dJuL qui s'appelle "Jeedom Paw Interface" (il fait bien plus, énormément plus que de simples SMS) Je n'ai pas conservé le fichier PawSMS.zip.... voir peut-être avec @krikroff
i-magin Posté(e) le 29 janvier 2017 Auteur Signaler Posté(e) le 29 janvier 2017 Je viens d'éditer le lien que j'avais mis vers le post de Krikrofff : il renvoyait sur le forum officiel de Fibaro... et comme Fibaro a changé de forum, c'est mort de ce côté là J'ai vérifié sur mes disques durs et plus rien.... Il faut donc demander à @Krikroff
fredokl Posté(e) le 29 janvier 2017 Signaler Posté(e) le 29 janvier 2017 @i-maginCool d'avoir regardé pour nous merci. Alors petit message pour @Krikroff Si jamais tu lis ceci, peux-tu remettre à dispo ton fichier PawSMS.zip stp. Merci
fredokl Posté(e) le 29 janvier 2017 Signaler Posté(e) le 29 janvier 2017 @971jmdSalut, je suis comme toi. rien ne fonctionne pour le moment même le fonction http. Je n'y comprend rien.
i-magin Posté(e) le 29 janvier 2017 Auteur Signaler Posté(e) le 29 janvier 2017 Bonne nouvelle, j'ai retrouvé le fichier dans mon Dropbox Le voici donc attaché à ce post (j'espère que @Krikroff ne m'en voudra pas de cette initiative) PawSMS.zip
fredokl Posté(e) le 29 janvier 2017 Signaler Posté(e) le 29 janvier 2017 Super merci @i-magin. Toujours aussi efficace! Je test.
i-magin Posté(e) le 29 janvier 2017 Auteur Signaler Posté(e) le 29 janvier 2017 Il y a 2 heures, 971jmd a dit : @i-magin j'ai tester la ligne suivante et pour le moment rien ne ce passe : http://192.168.0.10:8080/actions/text_to_speech.xhtml?texte=phrase%20de%20test Je suppose qu'au lieu de 192.168.0.10 tu as mis la bonne adresse de ton smartphone ? Lance un ping pour vérifier l'adresse IP, et : Citation Paramétrer le smartphone pour que la connexion wifi soit toujours active (y compris en veille)
fredokl Posté(e) le 29 janvier 2017 Signaler Posté(e) le 29 janvier 2017 (modifié) Oui J'ai le téléphone avec le wifi activé même en mode veille. Pour l'adresse ip j'ai bien rentré la mienne mais n'y fait. Quand je passe par un navigateur voici le message qui s'affiche dans la page. Pas plus. URL: /actions/mp3.xhtml | Status: HTTP / 404 | PAW Server 0.97.1-android (Brazil/2.0) Modifié le 29 janvier 2017 par fredokl Voici le message en entier pardon:Not Found URL: /actions/mp3.xhtml | Status: HTTP / 404 | PAW Server 0.97.1-android (Brazil/2.0)
971jmd Posté(e) le 29 janvier 2017 Signaler Posté(e) le 29 janvier 2017 Pareille Envoyé de mon iPhone en utilisant Tapatalk
i-magin Posté(e) le 29 janvier 2017 Auteur Signaler Posté(e) le 29 janvier 2017 @fredokl, à la lecture du message retour, je constate que tu accèdes bien au serveur HTTP Paw et que c'est la fonction MP3 que tu veux utiliser Le code retour 404 me fait penser qu'il n'accède pas à la "page" ou ressource demandée Dans la doc Abavala il est indiqué : Citation Il vous faut également uploader de la même manière le fichier MP3 dans le répertoire /sdcard/paw/music. Et dans mon post j'avais écrit Citation Attention : le PHP créé va chercher les fichiers MP sous "/sdcard/music/" et non sous "/sdcard/paw/music" comme mentionné dans les commentaires Avez-vous essayé les deux solutions ? Comme je l'avais écrit Citation Et je vous ai averti pour le blocage de la lecture des MP3 (dans ce cas rebooter votre smartphone)
Krikroff Posté(e) le 29 janvier 2017 Signaler Posté(e) le 29 janvier 2017 Bonne nouvelle, j'ai retrouvé le fichier dans mon Dropbox Le voici donc attaché à ce post (j'espère que @Krikroff ne m'en voudra pas de cette initiative) PawSMS.zipCarrément pas et merci beaucoup pour ton aide Envoyé de mon iPhone en utilisant Tapatalk
i-magin Posté(e) le 29 janvier 2017 Auteur Signaler Posté(e) le 29 janvier 2017 (modifié) Un dernier message, n'ayant plus cette configuration : @fredokl tu veux utiliser la fonction lecture de fichier MP3 @971jmd tu veux utiliser la fonction synthèse vocale Vérifiez que le répertoire actions est bien créé au bon endroit et que vous avez bien copié les fichiers "mp3.xhtml" et "text_to_speech.xhtml" NB aux admins du forum : pourquoi seulement la saisie du 1er utilisateur ouvre un volet des inscrits et pas le suivant ?... Merci ! Modifié le 29 janvier 2017 par i-magin
971jmd Posté(e) le 29 janvier 2017 Signaler Posté(e) le 29 janvier 2017 Oui la fonction synthèse vocale Envoyé de mon iPhone en utilisant Tapatalk
fredokl Posté(e) le 29 janvier 2017 Signaler Posté(e) le 29 janvier 2017 pour moi les deux pour tester lequel me va le mieux
Messages recommandés