Loading the rest of this comparison.

sureflap.php

Created Diff never expires
273 removals
607 lines
282 additions
626 lines
<?php
<?php


/*
/*
indice 1.1 du 19 decembre 2019 par Merguez07
indice 1.1 du 19 decembre 2019 par Merguez07
1.0 : Creation du plugin
1.0 : Creation du plugin
1.1 : integration des chatieres de type door connect
1.1 : integration des chatieres de type door connect
modification de la gestion du cache
modification de la gestion du cache
1.2 : Correction d'un bug dans les led hub et changement d'icone
1.2 : Correction d'un bug dans les led hub et changement d'icone
remerciements :
remerciements :
Bart de Eedomus pour le code de la gestion du cache
Bart de Eedomus pour le code de la gestion du cache
RAR69 pour les icones
RAR69 pour les icones
eedomus.yves.delort pour les beta-tests
eedomus.yves.delort pour les beta-tests
Kebiel pour l'integration du door connect(indice 1.1)
Kebiel pour l'integration du door connect(indice 1.1)

2.0 : Mise à jour vers la nouvelle API :
- nouveau endpoint + header par défaut + suppression de sdk_logout
- réorganisation du xml de sortie pour coller à l'API et limiter les appels :
suppresion de sdk_getpetlocation et sdk_getCurfewStatus
*/
*/



$mode = getArg('mode',false); // mode=list pour la configuration du plugin
$mode = getArg('mode',false); // mode=list pour la configuration du plugin


$device_id = (string) rand(1000000000,9999999999);
$device_id = (string) sdk_genuuid();
$endpoint = "https://app.api.surehub.io";
$endpoint = "https://app-api.production.surehub.io";
$logout = "/api/auth/logout";
$url_logout = "/api/auth/logout";
$login = "/api/auth/login";
$url_login = "/api/auth/login";
$household = "/api/household";
$url_household = "/api/household";
$url_device = "/api/device";
$url_pet = "/api/pet";
$header_default = array(
"Host: app.api.surehub.io",
"Connection: keep-alive",
"Accept: application/json, text/plain, */*",
"Accept-Encoding: gzip, deflate",
"Accept-Language: en-US,en-GB;q=0.9",
"Content-Type: application/json",
"Origin: https://surepetcare.io",
"Referer: https://surepetcare.io",
"X-Requested-With: com.sureflap.surepetcare",
"X-Device-Id: ".$device_id
);


//---------------------------config du plugin------------------------------------
//---------------------------config du plugin------------------------------------
if ($mode == 'list') {
if ($mode == 'list') {
if (isset($_POST['email'])&& isset($_POST['motdepasse'])){
if (isset($_POST['email'])&& isset($_POST['motdepasse'])){
$email_address = $_POST['email'];
$email_address = $_POST['email'];
$password = $_POST['motdepasse'];
$password = $_POST['motdepasse'];
saveVariable("email",$email_address);
saveVariable("email",$email_address);
saveVariable("password",$password );
saveVariable("password",$password );
sdk_login();sdk_gethousehold(); sdk_getdevices();sdk_getpet();
sdk_login();sdk_gethousehold(); sdk_getdevices();sdk_getpet();
sdk_inithtml();
sdk_inithtml();
echo utf8_encode($head.$html_hub.$html_flap.$html_pet.$html_script.$end);
echo utf8_encode($head.$html_hub.$html_flap.$html_pet.$html_script.$end);
die();
die();
} else {
} else {
sdk_inithtml();
sdk_inithtml();
echo utf8_encode($head.$html_login.$end);
echo utf8_encode($head.$html_login.$end);
}
}
die;
die;
}
}
//-------------------------------------------------------------------------------
//-------------------------------------------------------------------------------


$email_address = loadVariable("email");
$email_address = loadVariable("email");
$password = loadVariable("password");
$password = loadVariable("password");
$set = getArg('set',false); // ledbright/leddim/ledoff
$set = getArg('set',false); // ledbright/leddim/ledoff
// lockin/lockout/lockboth/locknone
// lockin/lockout/lockboth/locknone
// pos1/pos2
// pos1/pos2
// curfew
// curfew


//---------------------------lumiere du Hub-------------------------------------
//---------------------------lumiere du Hub-------------------------------------
$test=sdk_Targ($set,'led');
$test=sdk_Targ($set,'led');
if ($test[0]) {
if ($test[0]) {
$hub_id= getArg('hubid',true);
$hub_id= getArg('hubid',true);
sdk_login();
sdk_login();
sdk_gethousehold();
sdk_gethousehold();
sdk_getdevices();
sdk_getdevices();
sdk_sethubledbrightness($test[1],$hub_id) ;
sdk_sethubledbrightness($test[1],$hub_id) ;
echo $xml;
echo $xml;
die;
die;
}
}
//-------------------------------------------------------------------------------
//-------------------------------------------------------------------------------


//--------------------verrouillage de la chatiere--------------------------------
//--------------------verrouillage de la chatiere--------------------------------
$test=sdk_Targ($set,'lock');
$test=sdk_Targ($set,'lock');
if ($test[0]) {
if ($test[0]) {
$flap_id= getArg('flapid',true);
$flap_id= getArg('flapid',true);
sdk_login();
sdk_login();
sdk_gethousehold();
sdk_gethousehold();
sdk_getdevices();
sdk_getdevices();
sdk_setlockmode ($test[1],$flap_id) ;
sdk_setlockmode ($test[1],$flap_id) ;
echo $xml;
echo $xml;
die;
die;
}
}
//-------------------------------------------------------------------------------
//-------------------------------------------------------------------------------


//---------------------------position de l'animal--------------------------------
//---------------------------position de l'animal--------------------------------
$test=sdk_Targ($set,'pos');
$test=sdk_Targ($set,'pos');
if ($test[0]) {
if ($test[0]) {
$pet_id= getArg('petid',true);
$pet_id= getArg('petid',true);
sdk_login();
sdk_login();
sdk_setpetlocation($test[1],$pet_id) ;
sdk_setpetlocation($test[1],$pet_id) ;
echo $xml;
echo $xml;
die;
die;
}
}
//-------------------------------------------------------------------------------
//-------------------------------------------------------------------------------


//---------------------------reglage du couvre-feu-------------------------------
//---------------------------reglage du couvre-feu-------------------------------
if ($set=="curfew") {
if ($set=="curfew") {
$locktime = getArg('locktime',false);
$locktime = getArg('locktime',false);
$unlocktime = getArg('unlocktime',false);
$unlocktime = getArg('unlocktime',false);
$id = getArg('id',true);
$id = getArg('id',true);
sdk_login();
sdk_login();
sdk_setEnableCurfew($locktime,$unlocktime,$id) ;
sdk_setEnableCurfew($locktime,$unlocktime,$id) ;
echo $xml;
echo $xml;
die;
die;
}
}
//-------------------------------------------------------------------------------
//-------------------------------------------------------------------------------
$cache_duration = 1; // minutes
$cache_duration = 1; // minutes
$time_last_xml = loadVariable('time_last_xml');
$time_last_xml = loadVariable('time_last_xml');
if ((time() - $time_last_xml) / 60 < $cache_duration)
if ((time() - $time_last_xml) / 60 < $cache_duration)
{
{
sdk_header('text/xml');
sdk_header('text/xml');