Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Ankündigung
Einklappen
Keine Ankündigung bisher.
iTunes | Steuerung via Script über WebServer | Edomi
if (array_key_exists('Play', $output)) {setLogicLinkAusgang($id,1,$output['Play']);} if (array_key_exists('Pause',$output)) {setLogicLinkAusgang($id,2,$output['Pause']);} if (array_key_exists('Stop', $output)) {setLogicLinkAusgang($id,3,$output['Stop']);} if (array_key_exists('FF', $output)) {setLogicLinkAusgang($id,4,$output['FF']);} if (array_key_exists('FR', $output)) {setLogicLinkAusgang($id,5,$output['FR']);} if (array_key_exists('LS1', $output)) {setLogicLinkAusgang($id,6,$output['LS1']);} if (array_key_exists('LS2', $output)) {setLogicLinkAusgang($id,7,$output['LS2']);} if (array_key_exists('LSV1', $output)) {setLogicLinkAusgang($id,8,$output['LSV1']);} if (array_key_exists('LSV2', $output)) {setLogicLinkAusgang($id,9,$output['LSV2']);}
usleep(1000*10); //z.B. 10ms warten - wichtig, um die CPU-Last zu begrenzen!
Na komm... Socket_create() erstellt den Socket (öffnet ihn quasi), also muss socket_close() natürlich nur aufgerufen werden, wenn das Erstellen auch geklappt hat... Das schaffst du
Der rote Rahmen ist weg, weil der LBS nicht mehr den Status "läuft" erhält. Dies ist ja auch nicht erforderlich, weil der LBS ja lediglich das EXEC-Script startet und dann nichts mehr zu tun hat. Das laufende EXEC-Script hat mit diesem Rahmen nichts zu tun, weil es ja ein völlig lösgelöster Prozess ist. Du kannst aber in dem Statistik-Widget unter "PHP" erkennen, wieviele PHP-Prozesse aktuell laufen: Normal sind 5 (sofern KNX und Phonemonitor aktiviert sind, sonst 3 bzw. 4). Dein EXEC-Script wird diesen Wert um 1 erhöhen solange es läuft.
EDOMI - Intelligente Steuerung und Visualisierung KNX-basierter Elektro-Installationen (http://www.edomi.de)
Na ja, wenn es das create() und nicht das bind() beendet, dann muss close() um eine „Klammer“ aus #107, noch weiter nach unten, richtig ? Das muss man aber wissen und das weiß halt ein Programmierer ;-)
PHP-Code:
if (array_key_exists('LSV2', $output)) {setLogicLinkAusgang($id,9,$output['LSV2']);}
usleep(1000*10); //z.B. 10ms warten - wichtig, um die CPU-Last zu begrenzen!
} } socket_close($socket) } }
Der rote Rahmen ist weg, weil der LBS nicht mehr den Status "läuft" erhält.
Die Daemon Absicherung hast du ja schon eingeführt …
Die Überprüfung ob der Array die Werte vom String übergeben bekommen hat, auch erledigt ...
socket_close() ist auch erledigt ...
Da gäbe es noch so einiges, aber wir wollen mal die Kirche im Dorf lassen Gefahren wie SQL-Injections (ja, intern sind Datenbanken im Spiel...) etc. spielen hier kaum eine Rolle - schließlich kommen die UDP-Daten ja aus dem eigenen Netz von einem eigenen Script.
Sieht doch schon ganz gut aus, Dein LBS Dir kommen bestimmt noch einige Ideen, jetzt wo Du Blut geleckt hast
EDOMI - Intelligente Steuerung und Visualisierung KNX-basierter Elektro-Installationen (http://www.edomi.de)
Eine andere Frage, kann man aufgrund einer Eingabe am Eingang des LBS, z.B. Computer oder ATV … den Ausgang automatisch/dynamisch umbenennen ?
Quasi weg vom hard-codiertem Namen wie LS1, LS2, usw. zum individuellem Namen …
Den einem ist LS1, LS2, .. für die Lautsprecher ausreichend, den anderen nicht, der hätte lieber Computer, Apple-TV (ATV) oder AirportExpress, usw …
Aber eigentlich geht es mir um die Machbarkeit ob es geht … Was dazu lernen …. :-)
Wenn du so etwas benötigst, dann kannst du zusätzliche Ausgänge anlegen, an dem der Name ausgegeben wird. Das kannst du auch direkt durchreichen, wenn du an einem Eingang die Belegungsnamen vorgibst. Eine diekte Änderung der Ausgangsbezeichnungen wird nur durch Änderung des LBS möglich sein.
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar