Hallo,
für alle die solche anlenbare steckdosen haben, die über fernbedienung angelernt werden und dessen schaltbefehle kein toggle funktion haben.
Um ein status von diesen dosen anzuzeigen und sie mit nur einem statusbutton zu schalten:
Ein webserver (pi) oder was anderes wo php mit curl läuft wird benötigt
So wie hier im bild eine systemvariable am gateway erstellen

name nach wunsch eingeben, wird aber für den status gebraucht
jetzt einen schalter anlegen wie hier z.b.

dem schalter einen http befehl zuweisen, hier im bild .http://pi/steckdose_1_an-aus.php
pi ist die ip adresse des webservers oder der hostname (bei mir pi)
jetzt noch den status dem schalter zuweisen, so

der variablenname ist der am anfang als systemvariable im gateway angelegt wurde mit der id 01
jetzt erstellen wir eine php (textdatei) im ordner www von unserem server, mit dem namen: steckdose_1_an-aus.php und diesen code einfügen:
<?php
$on = file_get_contents("steckdose1.dat");
if ($on == 0) {
$board = 1;
file_put_contents("steckdose1.dat", $board);
// Hier schalten wir die interne variable mit der id=1, des gateways auf on (value=on)
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
// Get cURL resource
// Hier bei url die ip adresse des gateways anpassen (192.168.1.40),
// id=01 ist die systemvariable die wir am gateway angelegt haben (192.168.1.40)
CURLOPT_URL =>'http://192.168.1.40/command?XC_FNC=setVar&id=01&type=ONOFF&va
lue=on',
CURLOPT_USERAGENT => 'Codular Sample cURL Request'
));
// Send the request & save response to $resp
$resp = curl_exec($curl);
// Close request to clear up some resources
curl_close($curl);
// Hier schalten wir die intertechno dose auf on
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
// hier wird der funkcode eingetragen der an gateway angeschlossen ist,
//zwischen = und dem & zeichen einfügen im beispiel ist das die nummer, es wird on befehl hier eingetragen
// Hier bei url die ip adresse des gateways anpassen (192.168.1.40)
CURLOPT_URL =>'http://192.168.1.40/command?code=123456789108&XC_FNC=Send2',
CURLOPT_USERAGENT => 'Codular Sample cURL Request'
));
// Send the request & save response to $resp
$resp = curl_exec($curl);
// Close request to clear up some resources
curl_close($curl);
}
elseif ($on == 1) {
$board = 0;
file_put_contents("steckdose1.dat", $board);
// Hier schalten wir die interne variable mit der id=1, des gateways auf on (value=off)
$curl = curl_init();
// Hier bei url die ip adresse des raspberry anpassen (pi)
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
// Get cURL resource
CURLOPT_URL =>'http://192.168.1.40/command?XC_FNC=setVar&id=01&type=ONOFF&va
lue=off',
CURLOPT_USERAGENT => 'Codular Sample cURL Request'
));
// Send the request & save response to $resp
$resp = curl_exec($curl);
// Close request to clear up some resources
curl_close($curl);
// Hier schalten wir die intertechno dose auf on
$curl = curl_init();
// 192.168.1.40
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
// hier wird der funkcode eingetragen der an gateway angeschlossen ist, zwischen = und dem & zeichen einfügen
// im beispiel ist das die nummer, es wird off befehl hier eingetragen
// Hier bei url die ip adresse des gateways anpassen (192.168.1.40)
CURLOPT_URL =>'http://192.168.1.40i/command?code=12345678910&XC_FNC=Send2',
CURLOPT_USERAGENT => 'Codular Sample cURL Request'
));
// Send the request & save response to $resp
$resp = curl_exec($curl);
// Close request to clear up some resources
curl_close($curl);
}
?>
Die zahl 12345678910 zwischen
code= und dem & zeichen ist euer angelernter funkcode für die dose, mit welchem die dose ein und ausgeschaltet wird. Im php datei oben ist eine zeile wo der funkcode eingetragen wird für on befehl, sowie eine zeile für den off befehl
Auch die ip adresse des gateways sollte angepasst werden, ist abe alles im php code dokumentiert in den zeilen die mit // anfangen
jetzt brauchen wir noch eine datei (text) steckdose1.dat, in der wir nur eine 0 eintragen und speichern, in das www verzeichnis des webservers hochladen und die schreibrechte vergeben (666)
wer mehrere dosen so schalten möchte legt einfach mehrere php dateien mit anderen namen, genauso zugehörige systemvarieblen am gateway anlegen mit id adressen (02, 03 usw.) In der php dateien dann entsprechend die id-s anpassen.
Für jede dose wird eigene .dat datei benötigt und in dem zugehörigem php code wird dann, der name dieser datei geändert
in jeder zeile im php code, die folgende befehle enthält:
file_get_contents("steckdose1.dat");
file_get_contents("steckdose1.dat");
einfach steckdose2.dat zwieschen den anführungszeichen, einfügen
viel spass :)
Von
Ok, danke. Ist aber schon traurig das man dann noch eine Test Lizenz kaufen muß damit es evtl. Klappt.
Gruß
Michael
Von
die testlizenz ist umsonst 15 tage läuft sie
Von
Ah ok, hatte gedacht das wär das für 99cent. Muss ich da mediola anschreiben? Oder geht das automatisch wenn ich mir die Software runter lade?
Von
nein du musst schon schreiben an mediola, dort beim download steht auch wie es geht
Von
Leider existiert die Seite wo ich den Lizenzschlüsse erwerben kann nicht mehr.
Von
Hallo,
Handsender habe ich, kann dann aber keine Status Buttons benutzen.
Von
es geht hier um die lizenz des creator flex alt und nicht neo, miccel hat die neo version schon, aber das anlernen von intertechno mit adresse geht nicht im neo, die adresse wird zwar generiert, wenn man dan einen button erstellt wird nicht gesaltet, er sagt auch das gerät später in ircode angezeigt wird obwohl es als intertechno gerät angelernt wurde....lernt man die adresse (pairing) im altem creator und schreibt sie im neo, kann man die dosen schalten. Das ist schon im bugtracker beschrieben....hier: http://bugtracker.mediola.com/issues/709
Von
Genau so ist es.
Gruß
Neuen Kommentar hinzufügen