Extension 620 allowed: 0
Extension 620 enabled: 1
Extension 621 allowed: 0
Extension 621 enabled: 1
Extension 622 allowed: 0
Extension 622 enabled: 1
Extension 623 allowed: 0
Extension 623 enabled: 1
Extension 624 allowed: 0
Extension 624 enabled: 1
Extension 625 allowed: 0
Extension 625 enabled: 1
Extension 626 allowed: 0
Extension 626 enabled: 1
Extension 627 allowed: 0
Extension 627 enabled: 1
Extension 628 allowed: 0
Extension 628 enabled: 1
Extension 629 allowed: 0
Extension 629 enabled: 1
Das Ding ist ja so teuer, wie ein RaspberryPI B+ :shock:
Ist ganz lustig, was man damit machen kann, aber was soll es denn überhaupt bei dir können? Was willst du per sas damit steuern? An, aus? Bestimmte Farbe an, aus. Bestimmtes Leuchtprogramm wählen?
So ist das Ganze einfach zu unklar.
<?php
/*
+---------------------------------------------------------------------+
| |
| SensorAndSwitch Automation Pro |
| PseudoGeräte-Script |
| =============================================================== |
| -> Schalter |
| Dieses Script simuliert ein PseudoGerät Schalter zu Test- |
| zwecken. |
| |
+---------------------------------------------------------------------+
*/
function web($url,$post) {
/**********************/
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0)");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($ch, CURLOPT_MAXREDIRS, 10);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$Status = curl_exec($ch);
curl_close($ch);
return $Status;
}
$Pfad=".";
$Status="S##E##";
if (!file_exists($Pfad."/statusschalter.txt")) {
$fp=fopen($Pfad."/statusschalter.txt","w");
$Status="0";
fputs($fp,"S#".$Status."#");
fclose($fp);
}
if ($_GET["info"]=="status") {
$fp=fopen($Pfad."/statusschalter.txt","r");
$xml=fgets($fp);
fclose($fp);
if (strpos($xml,"1")) {
$Status="S#1#";
}
if (strpos($xml,"0")) {
$Status="S#0#";
}
}
if ($_GET["schalter"]=="1") {
$nix=web('http://localhost:8934/blink1/pattern/play?pname=blinkname',$post);
$fp=fopen($Pfad."/statusschalter.txt","w");
$Status="S#1#";
fputs($fp,$Status);
fclose($fp);
}
if ($_GET["schalter"]=="0") {
$nix=web('http://localhost:8934/blink1/pattern/stop?pname=blinkname',$post);
$fp=fopen($Pfad."/statusschalter.txt","w");
$Status="S#0#";
fputs($fp,$Status);
fclose($fp);
}
echo $Status;
exit;
?>
Abend
@JL3: Ick gloob du warst etwas zu schnell.
<?php
echo test("hallo welt"); // Funktionsaufruf
exit; // Skript beenden
function test($arg) { // Funktionsdefinition
return $arg;
}
?>
:-D wäre 8). Kann man dann in jeden Pseudoscript festlegen, welche Box angesprochen wird?Ich muss das noch fertigprogrammieren und testen, aber so dachte ich mir das. Wäre das ok?
Hallo JL3!@dtrieb: mal so auf die Schnelle:
pseudoschalter.php
PHP:<?php /* +---------------------------------------------------------------------+ | | | SensorAndSwitch Automation Pro | | PseudoGeräte-Script | | =============================================================== | | -> Schalter | | Dieses Script simuliert ein PseudoGerät Schalter zu Test- | | zwecken. | | | +---------------------------------------------------------------------+ */ function web($url,$post) { /**********************/ $ch = curl_init(); $timeout = 5; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0)"); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,false); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,false); curl_setopt($ch, CURLOPT_MAXREDIRS, 10); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $Status = curl_exec($ch); curl_close($ch); return $Status; } $Pfad="."; $Status="S##E##"; if (!file_exists($Pfad."/statusschalter.txt")) { $fp=fopen($Pfad."/statusschalter.txt","w"); $Status="0"; fputs($fp,"S#".$Status."#"); fclose($fp); } if ($_GET["info"]=="status") { $fp=fopen($Pfad."/statusschalter.txt","r"); $xml=fgets($fp); fclose($fp); if (strpos($xml,"1")) { $Status="S#1#"; } if (strpos($xml,"0")) { $Status="S#0#"; } } if ($_GET["schalter"]=="1") { $nix=web('http://localhost:8934/blink1/pattern/play?pname=blinkname',$post); $fp=fopen($Pfad."/statusschalter.txt","w"); $Status="S#1#"; fputs($fp,$Status); fclose($fp); } if ($_GET["schalter"]=="0") { $nix=web('http://localhost:8934/blink1/pattern/stop?pname=blinkname',$post); $fp=fopen($Pfad."/statusschalter.txt","w"); $Status="S#0#"; fputs($fp,$Status); fclose($fp); } echo $Status; exit; ?>
Nachtrag: Denk dran. Url muss noch angepasst werden. blinkname ist das Blinkprogramm, was abgespielt werden sol; halt entsprechend angleichen an deine Gegebenheiten.
Das hat mit den PseudoGeräte-Scripten nichts zu tun, die sind mit sashelper eh komplett unabhängig. Es geht da nur um die angemeldeten Geräte. Aber für jede FB gibt es dann Variablendaten. Das sieht man dann, was du ganz genau machen willst. Ggf. nutzt du noch den sashelper pro Box.Hallo,:-D wäre 8). Kann man dann in jeden Pseudoscript festlegen, welche Box angesprochen wird?