Page 5 sur 8

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : mer. juil. 13, 2016 9:24 pm
par JLRDomotique
l'identifiant serait celui qui sert a se connecter sur l'appli AMC???? Le mien contient des lettres et des chiffres???
Comment respecter la forme indiquée dans le post précédent qui donnait " /services/robot/xxxxxxx-xxxxx/settingsUUID (les x sont des chiffres...) "
Lors de la création de mon compte, la validation s'est faite par un lien dans un mail pour valider la création...
Mon kit gsm contenait directement sa carte SIM.
Je vois vraiment pas à quel moment il y a eu un identifiant et un mot de passe...?? à moins que cela ne ce soit passé lors de la mise en route chez le revendeur???
Dans ./services/robot/xxxxxxx-xxxxx/settingsUUID (les x sont des chiffres...) Le masque est-il toujours 7 chiffres-5 chiffres??

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : lun. juil. 18, 2016 10:47 pm
par chrisc08
L'identifiant est une adresse email et le mot de passe, vous avez dû le saisir un jour. Pour utiliser l'API, il faut tout d'abord envoyer une commande pour s'identifier et recevoir un token de session puis il faut lister les robots associés pour récupérer l'identifiant du robot qui est ensuite utilisé dans la commande settingUUID. Le fichier python dont je vous ai mis le lien contient toutes les infos pour utiliser l'API et est facile à comprendre (il fait 150 lignes environs).

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : mar. juil. 19, 2016 10:49 am
par JLRDomotique
Pour envoyer une commande pour s'identifier et recevoir un token de session, je passes par mon navigateur????quelle est la structure de cette commande??? J'ai commencé à apprendre JS mais il me manque parfois l'essentiel...???
Mon but final est d'utiliser les commandes Javascript dans Lifedomus, pour pouvoir parker le robot quand les arroseurs se déclenchent en fonction de la météo.... et le relancer ensuite...

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : jeu. juil. 21, 2016 3:40 pm
par chrisc08
A moins d'utiliser un plugin, vous ne pourrez pas utiliser l'API automower avec votre navigateur car c'est des requetes POST et non GET.

La structure de la requête pour vous identifier se trouve dans la méthode "login" de la classe "API" du fichier https://github.com/chrisz/pyhusmow/blob/master/husmow.py. On y voit les données au format xml à récupérer ainsi que le header "Session-Token" à récupérer pour ensuite l'envoyer dans les requêtes suivantes.

Eedomus utilise du php, Lifedomus du js... Peut-être que la prochaine box domotique utilisera du python ;-).

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : jeu. juil. 21, 2016 4:15 pm
par JLRDomotique
Merci pour les explications, je vois mieux comment procéder.... Je retourne à mon cours de JS....
Merci encore de prendre du temps, avec ceux qui s'accrochent à comprendre JS et PHP..

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : mar. août 23, 2016 11:41 pm
par Domotifred
Salut à tous,

@JLRDomotique, tu t'en es sorti ?
Tu commandes maintenant ton robot avec la Lifedomus ?

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : lun. sept. 05, 2016 4:46 pm
par Domotifred
[quote le 21/07/2016 à 13:40:28, chrisc08 a dit :]A moins d'utiliser un plugin, vous ne pourrez pas utiliser l'API automower avec votre navigateur car c'est des requetes POST et non GET.

La structure de la requête pour vous identifier se trouve dans la méthode "login" de la classe "API" du fichier https://github.com/chrisz/pyhusmow/blob/master/husmow.py. On y voit les données au format xml à récupérer ainsi que le header "Session-Token" à récupérer pour ensuite l'envoyer dans les requêtes suivantes.

Eedomus utilise du php, Lifedomus du js... Peut-être que la prochaine box domotique utilisera du python [img http://i.les-forums.com/ic/ic18.gif]. [/quote]

Bonjour Chrisc08,

J'utilise ton script python et il fonctionne très bien. Encore merci :-)
J'ai installé Python 3 sur mon Synology et j'y ai installé pip et ensuite les packages requests et xmltodict.

En ce qui concerne le PHP, j'ai créé 1 script par commande START, STOP et PARK (je suis archi nul en développement...)

Pour exemple, le fichier start.php est écrit comme ça :
// Test de commande DOS pour lancer le script Python
// Envoi de la commande Start
echo exec('python husmow.py --login xxxx --password xxxx control START');
?>

Ca fonctionne :-)
Je peux donc envoyer les 3 commandes avec la box eedomus.

Ca fonctionne aussi avec la commande status
// Test de commande DOS pour lancer le script Python
// Envoi de la commande Status avec retour d'info
echo exec('python husmow.py --login xxx --password xxx status', $output, $return);
var_dump($output);
?>

Mais j'ai le retour d'info en Python, alors que je voudrais l'avoir en xml.
Il faudrait sans doute modifier quelque chose dans ton script Python pour avoir ce retour en xml, mais là, ça me dépasse.
Tu as une idée ?

De plus, j'ai vu que tu avais mis à jour ton script depuis 1 semaine.
Qu'as-tu apporté comme modification ?

Merci d'avance.

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : mer. sept. 07, 2016 1:16 am
par chrisc08
Salut,

Je crois que tu peux changer ton mot de passe maintenant ;-).

Le retour d'info n'est pas en python. C'est du json. En php, tu dois pouvoir utiliser la fonction json_decode pour transformer les données en variable php facilement utilisables.

Avec les dernières modifs du script (hier), on peut maintenant filtrer les messages affichés par le script pour n'avoir que les données utiles (le json). Pour ça, il faut ajouter l'option --log-level ERROR à la commande (avant le "status").

J'ai aussi ajouté la possibilité d'avoir la sortie de la commande status en xml en ajoutant l'option --output-format XML et si le module "dicttoxml" est installé. Si tu peux utiliser la fonction json_decode, c'est mieux car ça m'embete de maintenir sur le long terme le format XML sachant que le json est bien supporté par la plupart des langages et est bien plus lisible et j'aime pas trop l'ajout d'une dépendance supplémentaire à "dictoxml"...

Voila voila.

Chris

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : mer. sept. 07, 2016 9:47 am
par Domotifred
Salut Chrisc08,

Tu m'étonnes ;-)
Merci beaucoup, je vais tester.

Bonne journée :-)

Fred.

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : mer. sept. 07, 2016 4:12 pm
par Domotifred
Salut Chrisc08,

Ca fonctionne à merveille en ligne de commande, en lançant la commande :
python husmow.py --login xxx--password xxx --output-format XML status

J'ai bien le retour des infos en XML :-)
Par contre, impossible d'avoir un retour d'infos XML quand j'intègre ce script dans le PHP.
Y a t'il un moyen pour écrire directement le contenu des infos dans un fichier en lançant ton script et en rajoutant une commande qui va bien genre --write infos.txt ?
python husmow.py --login xxx--password xxx --output-format XML [b]--write infos.txt [/b]status

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : jeu. sept. 08, 2016 10:20 am
par chrisc08
Salut,

Ca ne me tente pas vraiment d'ajouter une option pour écrire la réponse dans un fichier car le script risque de devenir une usine à gaz à force et je pense que ce n'est pas le role de ce script d'écrire dans un fichier. Dans la console, tu peux rediriger la sortie de la commande dans un fichier de cette façon : "python husmow.py --login xxx--password xxx status > /tmp/status.txt".

En regardant la doc de eedomus (http://doc.eedomus.com/view/Scripts), j'ai vu qu'il y avait une fonction toute prête pour convertir du json en xml ( jsonToXML($json) ) donc j'ai enlevé l'option pour renvoyer du xml pour simplifier le script et enlever une potentielle dépendance. Tu peux facilement récupérer du XML à partir de la sortie classique en json du script.

J'ai ajouté un nouveau mode d'utilisation du script qui pourrait peut-être t'intéresser :
python husmow.py --login yourmaillogin --password yourpassword server

Ca démarre un petit serveur web qui permet de controler l'automower en utilisant de simples requêtes HTTP et donc je pense que tu pourrais l'utiliser sans utiliser le php (ou alors en utilisant la fonction httpQuery présente dans la doc de eedomus) :
GET http://127.0.0.1:1234/start
GET http://127.0.0.1:1234/park
GET http://127.0.0.1:1234/status

J'espère qu'avec ça, tu pourras controler ton mouton à ta guise :-).

Chris

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : jeu. sept. 08, 2016 1:05 pm
par Domotifred
Salut Chris,

Ca ouvre des perspectives très intéressantes et évite effectivement une machine à gaz :-)
Je teste ça demain, car pris en déplacement toute la journée.

Merci.

Fred.

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : ven. sept. 09, 2016 7:23 pm
par Domotifred
Salut Chrisc08,

J'ai été obligé d'installer ton script Python (https://github.com/chrisz/pyhusmow) sur un serveur Windows, car je n'ai pas réussi à trouver comment l'exécuter automatiquement sur le Synology (visiblement, il manque des modules sur le Python du Syno).

En tout cas, c'est parfait :-)

Ca fonctionne bien aussi pour la récupération des infos (GET http://127.0.0.1:1234/status) avec le serveur web intégré dans ta toute dernière version.
J'obtiens bien un retour en Json, lequel est converti en XML par la box eedomus. Après, un tour de Xpath et j'ai les infos qui vont bien.

Pour les commandes Start, Stop et Park, il suffit de créer un actionneur sur l'eedomus avec 3 états.
Par exemple, pour l'état START, il sera comme ceci (si ton script est hébergé sur le serveur 192.168.1.252 sur le port 2345) :
Valeur brute : Start
Description : Start
URL : http://192.168.1.252:2345/
Type : GET
Paramètres : start

Je vais faire un tuto pour les utlisateurs de la box d'eedomus d'ici une petite semaine. Ca ouvre des perspectives d'automatisation et de suivi des courbes d'utilisation très intéressantes :-)
Je mettrai le lien sur ce forum dans un topic spécial pilotage domotique.
Merci beaucoup pour le travail accompli.

Fred.

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : lun. sept. 12, 2016 1:34 pm
par Domotifred
Salut Chrisc08,

Ca fonctionne à merveille :-)
Côté sauvegarde du résultat dans un fichier, ça permettrait d'éviter d'aller interroger sans cesse le cloud d'Husqvarna quand je souhaite connaître plusieurs infos contenues dans Status (aujourd'hui, c'est 10 infos = 10 interrogations cloud), alors que je peux aller chercher ces infos dans le fichier généré (10 infos = 10 interrogations sur le fichier local = 1 interrogation cloud).
Comme ça, on évite la conso de DATA et les multiples requêtes sur le cloud d'Husqvarna.
Si tu peux faire quelquechose...

Fred.

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : mer. sept. 14, 2016 11:00 pm
par Domotifred
Bonsoir,

Bon, j'ai fait un petit script en PHP, lequel permet de collecter les données du status dans un fichier local.
Ensuite, une macro lance ce script toutes les 5 minutes et je vais chercher les infos dedans.
Si çà intéresse quelqu'un, je peux faire parvenir ce script.
Bonne soirée.

Fred.

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : jeu. sept. 15, 2016 1:59 pm
par Basco
Bonjour

Je regarde depuis quelques temps vos échanges qui montrent que vous vous intéressez de manières approfondis sur la commande à distance et robotique de l'automower.....mais il s'agit d'échanges de spécialistes avec en tout cas pour moi un langage ésotérique.
PHP statut Xml eedomus etc....
C'est comme si Microsoft donnait son code source pour faire fonctionner Word à distance.

Aussi à ce jour qu'elle est la finalité de votre étude par rapport à l'application connect sur iOS ou android ?
Avantages ? Amélioration ? Facilité d'utilisation ? Matériel nécessaire ?pour un novice comme moi.

Merci d'avance et félicitations pour vos recherches.

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : jeu. sept. 15, 2016 5:24 pm
par Mheller
comme Basco, il nous faudrait juste un kit tout prêt pour vrai débutant, avec une camera wifi on aurait de la domotique à réalité augmentée!

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : jeu. sept. 15, 2016 10:42 pm
par Domotifred
Bonjour,

Effectivement, je comprends que pour le moment nos échanges d'informaticiens/domoticiens passionnés puissent laisser perplexes ;-)
Nous avons fait un peu plus compliqué parcequ'Husqvarna n'a pas fait simple dans ce que nous cherchions à faire et certainement dans quelques temps tout devrait être plus simple avec l'expansion de la domotique à la maison :-)
Pour résumer, piloter le robot avec le téléphone est dépassé ! C'est une aide, mais ce n'est pas un but.
Le mieux, est que la maison connectée puisse communiquer et controler le robot en fonction des paramètres qu'elle gère et intègre.
Par exemple :
- pouvoir faire rentrer le robot sur sa base si elle détecte qu'il va pleuvoir ou qu'il pleut.
- pouvoir arrêter le robot quand quelqu'un sonne à la porte pour éviter qu'il n'attire l'attention d'une personne mal intentionnée sur le seuil de votre porte.
- vous prévenir par d'autres moyens qu'un SMS ou un mail s'il est est hors zone ou a un problème, c'est à dire par source vocale ou sur la TV ou autre encore
- avoir sa tonte programmée sur votre agenda de réception qui peut changer souvent
- etc.

Et tout celà de façon automatique, sans que vous soyez à côté de votre robot et de votre téléphone ou tablette...

Bref, tout est ouvert et la seule limite est votre projection dans ce que vous souhaiter automatiser ;-)

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : mar. sept. 20, 2016 1:17 am
par chrisc08
Hello,

(réponse un peu tardive)

Bien que tu te sois débrouillé en php, j'ai modifié le script pour qu'il garde le dernier statut en cache pendant 30 secondes (configurable). Comme ça, si il y a X requêtes de statut en 30 secondes, il n'y a qu'une seule requête envoyée au serveur Husqvarna.

C'est cool que ça fonctionne avec la box eedomus :-).

Chris

Commandes SMS ne fonctionnent pas sur l'Automower Connect 330X

Publié : mar. sept. 20, 2016 12:54 pm
par Domotifred
Salut Chris,

Ok, merci.
Donc tu rajoutes --expire 60 si tu veux que le cache soit de 1 minute et --expire 180 si tu veux que ce soit 3 minutes comme par exemple :
python husmow.py --login yourmaillogin --password yourpassword --expire 180 status