Problème Blockly

Domotica gratuit Forums Report a bug Problème Blockly

Ce sujet a 3 réponses, 2 participants et a été mis à jour par Mika Mika, il y a 4 ans.

4 sujets de 1 à 4 (sur un total de 4)
  • Auteur
    Messages
  • #1334
    Avatar
    Maxland
    Participant

    Bonjour,
    J’ai un problème de fonctionnement avec un bloclky. lorsque les conditions sont réunis (if) ma lampe s’allume mais s’éteint 45 secondes plus tard. je n’arrive pas à trouver la solution, je pense que mes variables sont bonnes. Si quelqu’un a une idée…

    Voici le bout de code:

    $Semaine;
    $Samedi;
    $On;
    $Off;

    $event = “empty”;
    if(isset($argv[1])){
    $event = $argv[1];
    }

    function getValue($service,$deviceid, $valueid){
    $abspath = dirname(__FILE__);
    $datapath = $abspath.DIRECTORY_SEPARATOR.”..”.DIRECTORY_SEPARATOR.$service.”.json”;
    $content = file_get_contents($datapath);
    $json = json_decode($content);
    foreach($json as $object){
    if($object->id == $deviceid){
    $values = array();
    if(isset($object->values)){
    $values = $object->values;
    }
    foreach($values as $value){
    if($value->id == $valueid){
    $v = “”;
    if(isset($value->value)){
    $v = $value->value;
    }
    return $v;
    }
    }
    }
    }
    return “”;
    }

    function setValue($service,$deviceid, $valueid,$value){
    $url = “http://localhost:4020/message=”;
    $message = “1|scene|”.$service.”|UPDATEPROPERTY|”.$deviceid.”|”.$valueid.”|”.$value;
    $messageURL = $url . rawurlencode($message);
    file_get_contents($messageURL);
    sleep(1);
    }

    function dateBetween($timeFrom, $timeTo){
    $current = date(“Y-m-d H:i”);
    if($timeTo == “00:00″){
    $timeTo=”23:59”;
    }
    $from = date(“Y-m-d H:i”, strtotime($timeFrom));
    $to = date(“Y-m-d H:i”, strtotime($timeTo));
    if(strtotime($from) > strtotime($to)){
    if(strtotime($from) > strtotime($to) && strtotime($current) < strtotime($from)){
    $from = date(“Y-m-d H:i”,strtotime($from. ‘ – 1 days’));
    }else if(strtotime($current) > strtotime($from) && strtotime($current) > strtotime($to)){
    $to = date(“Y-m-d H:i”,strtotime($to. ‘ + 1 days’));
    }
    }
    if((strtotime($current) >= strtotime($from)) && (strtotime($current) <= strtotime($to))){
    return true;
    }else{
    return false;
    }
    }

    $Semaine = ((strtoupper(date(“D”)) == ‘MON’ || strtoupper(date(“D”)) == ‘TUE’ || strtoupper(date(“D”)) == ‘WED’ || strtoupper(date(“D”)) == ‘THU’ || strtoupper(date(“D”)) == ‘FRI’) || strtoupper(date(“D”)) ==’SUN’) && dateBetween(’12:00′,’22:30′);
    $Samedi = strtoupper(date(“D”)) ==’SAT’ && dateBetween(’12:00′,’23:30′);
    $On = “99”;
    $Off = “0”;
    if ((getValue(“zwave”,”zwave-5″,”49-user-decimal-1-3″)) <= “30”) {
    if ($Semaine) {
    setValue(“zwave”,”zwave-4″,”38-user-byte-1-0″,$On);
    } else {
    setValue(“zwave”,”zwave-4″,”38-user-byte-1-0″,$Off);
    }
    if ($Samedi) {
    setValue(“zwave”,”zwave-4″,”38-user-byte-1-0″,$On);
    } else {
    setValue(“zwave”,”zwave-4″,”38-user-byte-1-0″,$Off);
    }
    } else {
    setValue(“zwave”,”zwave-4″,”38-user-byte-1-0″,$Off);
    }

    #1359
    Mika
    Mika
    Admin bbPress

    Bonjour,

    Pouvez vous me contacter par mail et m’envoyer un printscreen de votre scene avec les blocks?

    Merci
    Mika

    #1367
    Avatar
    Maxland
    Participant

    Bonjour, je n’ai que noreply@pulse-station.com

    #1372
    Mika
    Mika
    Admin bbPress

    info [at] pulse-station.com

4 sujets de 1 à 4 (sur un total de 4)

Vous devez être connecté pour répondre à ce sujet.