Hi Snewi,
dann kannst Du schon mal folgendes Script bei Dir auf den Server laden und die IP Adresse der Brematic anpassen.
Aufgerufen wird das ganze dann mit:
http://QNAPIP:PORT/bre.php?m=MASTER&s=SLAVE&p=0
m=Mastercode
s=Slavecode
p= 0 für aus oder 1 für an
<?php
function tx433_send($msg)
{
$IP=„192.168.1.5“;//IP-Adresse der Brematic
$PORT=49880;
$sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
$len = strlen($msg);
if($sock) {
socket_sendto($sock, $msg, $len, 0, $IP, $PORT);
socket_close($sock);
}
else {
echo "Socket error IP:PORT=".$IP.":".$PORT."\n";
exit(0);
}
}
function tx433_brennstuhl($Master,$Slave,$onoff)
{
$sA=0;
$sG=0;
$sRepeat=15;
$sPause=5600;
$sTune=350;
$sBaud=25;
$sSpeed=16;
$uSleep=800000;
$HEAD="TXP:$sA,$sG,$sRepeat,$sPause,$sTune,$sBaud,";
$TAIL=",1,1,$sSpeed,;";
$AN="1,3,1,3,3";
$AUS="3,1,1,3,1";
$bitLow=1;
$bitHgh=3;
$seqLow=$bitHgh.",".$bitHgh.",".$bitLow.",".$bitLow.",";
$seqHgh=$bitHgh.",".$bitLow.",".$bitHgh.",".$bitLow.",";
$bits=$Master;
$msg="";
for($i=0;$i<strlen($bits);$i++) {
$bit=substr($bits,$i,1);
if($bit=="0")
$msg=$msg.$seqLow;
else
$msg=$msg.$seqHgh;
}
$msgM=$msg;
$bits=$Slave;
$msg="";
for($i=0;$i<strlen($bits);$i++) {
$bit=substr($bits,$i,1);
if($bit=="0") $msg=$msg.$seqLow;
else
$msg=$msg.$seqHgh;
}
$msgS=$msg;
$msg_ON=$HEAD.$bitLow.",".$msgM.$msgS.$bitHgh.",".$AN.$TAIL;
$msg_OFF=$HEAD.$bitLow.",".$msgM.$msgS.$bitHgh.",".$AUS.$TAIL;
if($onoff==1)
$msg=$msg_ON;
else
$msg=$msg_OFF;
tx433_send($msg);
}
function checkdigits($int){
if(!ctype_digit($int)){
die(„Only digits no words. Script die.\n“);
}
}
function getallgets($gets){
$datarr = array();
foreach($gets as $key => $value)
{
checkdigits($value);
$datarr[$key] = $value;
}
return $datarr;
}
function startcontrol($datarr){
tx433_brennstuhl($datarr['m'],$datarr['s'],$datarr['p']);
}
if(count($argv)>=4){
$_GET[‚m‘] = $argv[1];
$_GET[‚s‘] = $argv[2];
$_GET[‚p‘] = $argv[3];
if(isset($argv[4])){
$_GET[‚d‘] = $argv[4];
}
}else{
echo „To less arguments!\n“;
}
$data = getallgets($_GET);
startcontrol($data);
?>
Viele Grüße
JayJay