Posts: 269
Threads: 37
Joined: Sep 2013
Reputation:
1
01-05-2017, 11:26 PM
(This post was last modified: 01-06-2017, 07:37 PM by steevedu49.)
Bonsoir,
Afin d'interfacer mon AppleWatch avec Calaos via Jeedom et Homebridge et effectuer des tests.
J'ai besoin d'écrire un script en PHP ou en Python (PHP de préférence) pour effectuer une requête sur l'API de Calaos.
Pour mais test il faut juste que je puisse changer l'état d'une sortie par exemple...
Une petit coup de main je n'est aucune connaissance de ces languages n'y d'aucun aire d'ailleurs...
Biensur Je partagerai mon travaille une fois que ça sera un minimum fonctionnelle...
Merci d'avance...
Steeve MARTINS
Calaos User
Calaos v3 sur Intel BOXNUC5CPYH | Wago 750-842 (2.0)| Eco-Devices
Posts: 192
Threads: 23
Joined: Sep 2014
Reputation:
0
01-06-2017, 10:33 AM
(This post was last modified: 01-06-2017, 10:34 AM by Kent1.)
Bonjour Steeve,
Je suis curieux, tu utilise l'interface de JEEDOM ?
Si oui Quelles sont les plus de JEEDOM ? l'interconnexion entre les deux installation ce fais par JSON ?
Merci
Posts: 269
Threads: 37
Joined: Sep 2013
Reputation:
1
01-06-2017, 07:46 PM
(This post was last modified: 01-06-2017, 07:47 PM by steevedu49.)
Kent1,
Afin d’étendre mon installation domotique sans apporter de modification matériel sur mon installation je voulais installer des modules Z-Wave.
Les modules Z-Wave n’étant pas compatible avec Calaos j'ai rechercher une passerelle et je suis tombe sur Jeedom qui s'installe sur un RaspBerry.
Jeedom est compatible avec de multiple protocole et son utilisation est assez simple.
Faire communiquer Calaos avec Jeedom est facile par contre dans l'autre sens ça ce complique, le certificat SSL me pose problème pour envoyer des requêtes http simple.
Jeedom a un moteur de script comme celui de Calaos Installer par contre sont langage est différent (PHP ou python ou ruby) d'ou ma demande...
(...)
Steeve MARTINS
Calaos User
Calaos v3 sur Intel BOXNUC5CPYH | Wago 750-842 (2.0)| Eco-Devices
Posts: 216
Threads: 14
Joined: Sep 2013
Reputation:
0
01-07-2017, 11:19 AM
(This post was last modified: 01-07-2017, 11:24 AM by captainigloo.)
Salut Steeve,
tu trouveras toutes les informations sur l'api ici :
https://calaos.fr/wiki/fr/protocole_json
Je connais peu ou pas PHP, mais en utilisant un outil comme POSTMAN, tu pourras avoir un générateur de code.
Un exemple de Postman :
Dans le cas de PHP Curl ca donne ca: (En cliquant sur le bouton Code entouré en rouge)
Code:
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_PORT => "5454",
CURLOPT_URL => "http://192.168.1.45:5454/api",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\n \"cn_user\": \"nico\",\n \"cn_pass\": \"xxxxxx\",\n \"action\": \"get_home\"\n}",
CURLOPT_HTTPHEADER => array(
"cache-control: no-cache",
"content-type: application/json",
"postman-token: bb3faa42-9444-7fe6-a478-30d24ad66277"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
Pour changer une IO, il faut utiliser le json suivant dans la requête post :
Code:
{
"cn_user": "nico",
"cn_pass": "xxxx",
"action": "set_state",
"type": "output",
"id": "output_X",
"value": "true"
}
A+
Nicolas
Calaos v2 sur Rpi et MeleA1000 | Eco Device | IPX800 | Karotz | 1Wire | Relais GPIO | Squeezebox
Posts: 269
Threads: 37
Joined: Sep 2013
Reputation:
1
Merci pour Postman ça m'a fait pas mal avancé.
Jeedom ne prend pas le code du script généré par postman.
Pas le temps ce soir je creuserai le sujet cette semaine.
Encore merci
Steeve MARTINS
Calaos User
Calaos v3 sur Intel BOXNUC5CPYH | Wago 750-842 (2.0)| Eco-Devices