-
Notifications
You must be signed in to change notification settings - Fork 37
Home
thetrueavatar edited this page Sep 11, 2018
·
33 revisions
Le code a été développé en php 7. Les dépendances sont gérées via composer. Le client Oauth est implémenté à l'aide la librairie PHPoAuthLib https://github.com/Lusitanian/PHPoAuthLib Le parsing Siren Json est fait avec siren-php https://github.com/tomphp/siren-php Le Main.php montre un simple exemple d'appel. Il suffit d'ajouter son user à la 1ère ligne de credentials.properties et son password à la 2ème ligne. Tout le reste de la partie Oauth se fait de façon transparente à l'instanciation de l'api. La méthode getFeatures() permet de récupérer le tableau des features en json. Les autres méthodes renvoie les valeurs directement.
trim("$credentials[0]","\n"), "pwd"=>trim("$credentials[1]","\n"), "uri"=>"vicare://oauth-callback/everest" ]; $viessmanApi=new ViessmannAPI($params); echo $viessmanApi->getFeatures(); echo "Température extérieure ".$viessmanApi->getOutsideTemperature()."\n"; echo "Température boiler ".$viessmanApi->getBoilerTemperature()."\n"; echo "Pente ".$viessmanApi->getSlope()."\n"; echo "Parallèle ".$viessmanApi->getShift()."\n"; echo "Mode chaudière ".$viessmanApi->getActiveMode()."\n"; echo "Programme actif ".$viessmanApi->getActiveProgram()."\n"; echo "Is Heating Burner active ? ".$viessmanApi->isHeatingBurnerActive()."\n";//in php false bool is converted into empty string echo "Is Dhw mode active ? ".$viessmanApi->isDhwModeActive()."\n"; echo "Température de confort ".$viessmanApi->getComfortProgramTemperature()."\n"; echo "Température écho ".$viessmanApi->getEchoProgramTemperature()."\n"; echo "Température externe ".$viessmanApi->getExternalProgramTemperature()."\n"; echo "Température réduit ".$viessmanApi->getReducedProgramTemperature()."\n"; echo "Température supply ".$viessmanApi->getSupplyProgramTemperature()."\n"; echo "Est en veille ? ".$viessmanApi->isInStandbyMode()."\n"; echo "Appelle resources ".$viessmanApi->getRawData(ViessmannAPI::HEATING_PROGRAM_ACTIVE);