<?php

/*
 * Exemple d'utilisation du SDK PHP Zibase
 * Auteur : Benjamin GAREL
 * Mars 2011
 */
require_once "../../lib/ZiBase.php";
# Adresse IP de la zibase (à remplacer)
$zibaseIP = "192.168.0.20";
# On récupère les valeurs du post
if (isset($_POST["addr"]) && isset($_POST["action"]) && isset($_POST["protocol"])) {
    $addr = $_POST["addr"];
    $action = $_POST["action"];
    $protocol = $_POST["protocol"];
    # Envoi de l'ordre à la zibase
    $zibase = new ZiBase($zibaseIP);
    $zibase->sendCommand($addr, $action, $protocol);
}
예제 #2
0
<?php
if(isset($_SESSION['auth']))
{
include("./lib/zibase.php");
$zibase = new ZiBase($ipzibase);
if(isset($_POST['Valider'])) {
$cal = new ZbCalendar();
for ($j = 0; $j < 24; $j++) {
if($_POST[$j] == 'on'){
$val = 1;
} else {
$val = 0;
}
$cal->hour[$j] = $val;
}
if($_POST['lundi'] == 'on'){
$lundi = 1;
} else {
$lundi = 0;
}
if($_POST['mardi'] == 'on'){
$mardi = 1;
} else {
$mardi = 0;
}
if($_POST['mercredi'] == 'on'){
$mercredi = 1;
} else {
$mercredi = 0;
}
if($_POST['jeudi'] == 'on'){
예제 #3
0
파일: meteo.php 프로젝트: Harkanork/ZiHome
<?php

include "conf_scripts.php";
include "utils.php";
$zibase = new ZiBase($ipzibase);
//Au prealable rechercher sa ville sur weather.com et relever la valeur dans l'adresse qui ressemmble a FRXX1879:1:FR
//Declarer une sonde Virtuelle THx128 avec un identifiant OSxxxxxxx
//Declarer une sonde Virtuelle WGR800 avec un identifiant OSxxxxxxx
//Url a parser
$weather = simplexml_load_file("http://wxdata.weather.com/wxdata/weather/local/" . $meteo_ville . "?cc=*&unit=m");
// Temperature exterieure et humidite
$zibase->sendVirtualProbeValues($meteo_sonde_temperature, $weather->cc->tmp * 10, $weather->cc->hmid, 0);
//123456788 : identifiant radio de la sonde sans OS devant, tmp*10 : il faut multiplier la temperature par 10 car la zibase attend l.information au dixieme de degre
// Vent
$zibase->sendVirtualProbeValues($meteo_sonde_vent, $weather->cc->wind->s * 2.8, $weather->cc->wind->d / 3, 0);
//Coefficient de conversion = 0.28 (la vitesse est exprime sur weather.com en m/s et sur zibase en km/h)
예제 #4
0
<?php
if(isset($_SESSION['auth']))
{
include("./lib/zibase.php");
$zibase = new ZiBase($ipzibase);
if(isset($_POST['Valider'])) {
$cal = new ZbCalendar();
for ($j = 0; $j < 24; $j++) {
if($_POST[$j] == 'on'){
$val = 1;
} else {
$val = 0;
}
$cal->hour[$j] = $val;
}
if($_POST['lundi'] == 'on'){
$lundi = 1;
} else {
$lundi = 0;
}
if($_POST['mardi'] == 'on'){
$mardi = 1;
} else {
$mardi = 0;
}
if($_POST['mercredi'] == 'on'){
$mercredi = 1;
} else {
$mercredi = 0;
}
if($_POST['jeudi'] == 'on'){
예제 #5
0
파일: plan.php 프로젝트: Harkanork/ZiHome
<?
include("./lib/zibase.php");
$zibase = new ZiBase($ipzibase);

// Calcul de la largeur
$query = "SELECT max( `width` + `left` ) AS width FROM `plan`";
$res_query = mysql_query($query, $link);
if (mysql_numrows($res_query) > 0){
    $width = mysql_result($res_query,0,"width") + 2;
}

// Calcul de la hauteur
$query = "SELECT max( `height` + `top` ) AS height FROM `plan`";
$res_query = mysql_query($query, $link);
if (mysql_numrows($res_query) > 0){
    $height = mysql_result($res_query,0,"height") + 2;
}

// Recuperation de la largeur des icones
$query = "SELECT * FROM paramettres WHERE libelle = 'largeur icones'";
$res_query = mysql_query($query, $link);
if (mysql_numrows($res_query) > 0)
{
  $data = mysql_fetch_assoc($res_query);
  $widthIcones = $data['value'];
  $labelOffsetLeft = max($widthIcones - 30, $widthIcones / 2);
}
else
{
  $widthIcones = 60;
  $labelOffsetLeft = 30;
예제 #6
0
<?
include("conf_scripts.php");
include("utils.php");
$zibase = new ZiBase($ipzibase);
$link = mysql_connect($hote, $login, $plogin);
if (!$link) {
   die('Non connect&eacute; : ' . mysql_error());
}
$db_selected = mysql_select_db($base,$link);
if (!$db_selected) {
   die ('Impossible d\'utiliser la base : ' . mysql_error());
}
$query = "SELECT * FROM message_zibase WHERE date > DATE_SUB(NOW(), INTERVAL 5 MINUTE)";
$res_query = mysql_query($query, $link);
if(!(mysql_numrows($res_query) > 0)){
  $zibase->registerListener($ipserver);
}
?>
예제 #7
0
<?php

include "conf_scripts.php";
include "utils.php";
$zibase = new ZiBase($ipzibase);
$sensorlist = $zibase->getProbeList($idzibase, $tokenzibase);
$sensornb = count($sensorlist);
$link = mysql_connect($hote, $login, $plogin);
if (!$link) {
    die('Non connect&eacute; : ' . mysql_error());
}
$db_selected = mysql_select_db($base, $link);
if (!$db_selected) {
    die('Impossible d\'utiliser la base : ' . mysql_error());
}
$i = 0;
while ($i < $sensornb) {
    if ($sensorlist[$i]['type'] == 'rain') {
        $info = "";
        $info = $zibase->getSensorInfo($sensorlist[$i]['id']);
        updateProbe($sensorlist[$i], $info, $link, 'pluie');
        $query = "CREATE TABLE IF NOT EXISTS `pluie_" . $sensorlist[$i]['name'] . "` (`date` datetime NOT NULL, `pluie` float NOT NULL, `cumul` float NOT NULL, PRIMARY KEY(`date`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;";
        mysql_query($query, $link);
    }
    if ($sensorlist[$i]['type'] == 'light') {
        $info = "";
        $info = $zibase->getSensorInfo($sensorlist[$i]['id']);
        updateProbe($sensorlist[$i], $info, $link, 'luminosite');
        $query = "CREATE TABLE IF NOT EXISTS `luminosite_" . $sensorlist[$i]['name'] . "` (`date` datetime NOT NULL, `lum` float NOT NULL, PRIMARY KEY (`date`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;";
        mysql_query($query, $link);
    }
예제 #8
0
<?php

include "conf_scripts.php";
include "utils.php";
// recuperation de la liste des scenarios de la zibase
$zibase = new ZiBase($ipzibase);
$actionlist = $zibase->getScenarioList($idzibase, $tokenzibase);
$actionnb = count($actionlist);
$link = mysql_connect($hote, $login, $plogin);
if (!$link) {
    die('Non connect&eacute; : ' . mysql_error());
}
$db_selected = mysql_select_db($base, $link);
if (!$db_selected) {
    die('Impossible d\'utiliser la base : ' . mysql_error());
}
// map Id => scenario
$mapId = array();
// map nom => scenario
$mapNom = array();
// recuperation de la liste des scenarios de ZiHome
$query = "SELECT * FROM scenarios";
$res_queryDB = mysql_query($query, $link);
while ($data = mysql_fetch_assoc($res_queryDB)) {
    $mapId[$data['id']] = $data;
    $mapNom[$data['nom']] = $data;
}
// recuperation des scenarios ayant change d'id
$i = 0;
while ($i < $actionnb) {
    $nom = $actionlist[$i]['n'];
예제 #9
0
<?php

session_start();
if (isset($_SESSION['auth'])) {
    ?>
  <SCRIPT LANGUAGE="JavaScript"/>
    function redirect() 
    {
      window.location="javascript:history.go(-1)"
    }
    setTimeout("redirect()",0); // delai en millisecondes
  </SCRIPT>
  <?php 
    include "../config/conf_zibase.php";
    include "../lib/zibase.php";
    include "../config/variables.php";
    $zibase = new ZiBase($ipzibase);
    if (isset($_GET['rgb'])) {
        $rgb = hexdec($_GET['rgb']);
        $red = 0xff & $rgb >> 0x10;
        $green = 0xff & $rgb >> 0x8;
        $blue = 0xff & $rgb;
        $zibase->sendRGBW($_GET['action'], $red, $green, $blue, 255);
    } else {
        if (isset($_GET['dim'])) {
            $zibase->sendCommand($_GET['action'], $_GET['ordre'], $_GET['protocol'], $_GET['dim']);
        } else {
            $zibase->sendCommand($_GET['action'], $_GET['ordre'], $_GET['protocol'], "");
        }
    }
}
예제 #10
0
<?
session_start();
if(isset($_SESSION['auth']))
{
?>
<SCRIPT LANGUAGE="JavaScript"/>
function redirect() {
        window.location="javascript:history.go(-1)"
}
setTimeout("redirect()",0); // delai en millisecondes
</SCRIPT>
<?php
include("../config/conf_zibase.php");
include("../lib/zibase.php");
include("../config/variables.php");
$zibase = new ZiBase($ipzibase);
$zibase->runScenario($_GET['action']);
}
?>
예제 #11
0
   die ('Impossible d\'utiliser la base : ' . mysql_error());
}
$sleepbase = 0;
$sleepcoef = 1;
$query = "SELECT * FROM  `paramettres` WHERE libelle = 'android_sleep_base'";
$res_query = mysql_query($query, $link);
if(mysql_numrows($res_query) > 0){
$sleepbase = mysql_result($res_query,0,"value");
}
$query = "SELECT * FROM  `paramettres` WHERE libelle = 'android_sleep_coef'";
$res_query = mysql_query($query, $link);
if(mysql_numrows($res_query) > 0){
$sleepcoef = mysql_result($res_query,0,"value");
}

$zibase = new ZiBase($ipzibase);
$i = 0;
$dist = null;
$dist = array();
$query = "SELECT * FROM android";
$req = mysql_query($query, $link) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
while ($data = mysql_fetch_assoc($req))
{
$apikey =  $data['apikey'];

$file = '{
"homeMobileCountryCode": 208,
"homeMobileNetworkCode": '.$data['MobileNetworkCode'].',
"radioType": "gsm",
"carrier": "'.$data['carrier'].'",
"cellTowers": [
예제 #12
0
<?
if(isset($_SESSION['auth']))
{
  include("./lib/zibase.php");
  $zibase = new ZiBase($ipzibase);
  if(isset($_POST['Valider'])) {
    $zibase->setVariable($_POST['id'], $_POST['value']);
    $query = "UPDATE variables SET description = '".$_POST['description']."' WHERE `id` = '".$_POST['id']."'";
    //echo $query;
    mysql_query($query, $link);
  }
  ?>
  <div id="action-tableau">
  <center>
  <br>
  <table border="0">
    <tr class="title" bgcolor="#6a6a6a">
      <TH class="name-variable">
      Variable
      </TH>
      <TH>
      Valeur
      </TH>
      <td class="desc-variable">
      Description
      </TH>
      <TH></TH>
    </tr>
    <?
    for ($i = 0; $i < 60; $i++) {
      $var = $zibase->getVariable($i);
예제 #13
0
<?php

/*
 * Exemples d'utilisation de l'API PHP Zibase 
 * Auteur : Benjamin GAREL
 * Juin 2011
 */
require_once "../lib/ZiBase.php";
# Adresse IP de la zibase est nécessaire pour utiliser cette classe
$zibase = new ZiBase("192.168.0.20");
?>
 
 <html>
 <body>
 <h1>Exemples d'utilisation de l'API PHP Zibase</h1>
  
 <?php 
# Envoi de la commande H3 ON en RF X10
$zibase->sendCommand("H3", ZbAction::ON, ZbProtocol::X10);
# Envoi de la commande F12 OFF en RF Chacon
$zibase->sendCommand("F12", ZbAction::OFF, ZbProtocol::CHACON);
?>
 <?php 
# Lancement du scenario 1 (le numéro du scenario est affiché entre parenthèses dans le suivi d'activité)
$zibase->runScenario(1);
# Exécution de scripts (Nouveautés V1.6)
# Ex: Lance le scenario "Alarme OFF"
$zibase->execScript("lm [Alarme OFF]");
# Autres possibilités :
# lm 2 (lance le scenario 2)
# lm 3 aft 60 (lance le scenario 3 dans 60s)
예제 #14
0
    }
    if ($deg >= 258.75 && $deg < 281.25) {
        $result = "O";
    }
    if ($deg >= 281.25 && $deg < 303.75) {
        $result = "ONO";
    }
    if ($deg >= 303.75 && $deg < 326.25) {
        $result = "NO";
    }
    if ($deg >= 326.25 && $deg < 348.75) {
        $result = "NNO";
    }
    return $result;
}
$zibase = new ZiBase($ipzibase);
$link = mysql_connect($hote, $login, $plogin);
if (!$link) {
    die('Non connect&eacute; : ' . mysql_error());
}
$db_selected = mysql_select_db($base, $link);
if (!$db_selected) {
    die('Impossible d\'utiliser la base : ' . mysql_error());
}
$query0 = "SELECT * FROM peripheriques";
$req0 = mysql_query($query0, $link) or die('Erreur SQL !<br>' . $sql . '<br>' . mysql_error());
while ($data0 = mysql_fetch_assoc($req0)) {
    if ($data0['protocol'] == 6) {
        $protocol = true;
    } else {
        $protocol = false;