SensorAndSwitch: Ideen Sammlung - Wunschliste

Ok, habs nachgeprüft.
test.php
PHP:
<?php
echo test("hallo welt"); // Funktionsaufruf
exit; // Skript beenden
function test($arg) { // Funktionsdefinition
return $arg;
}
?>
Das geht ja tatsächlich.
Für Shellskripfunktionen gilt das aber.
Ich mein PHP macht das dann irgendwie anders als andere Sprachen.
Naja, ein Fehler (Nonsens) ist es jedenfalls nicht, eher guter Stil, dann.
Das ist Programmierphilosophie, jedem wie er es mag. ;)

PHP verhält sich hier allerdings wie die meisten Programmiersprachen. Bei reinen Scriptsprachen ist das auch schon technisch bedingt etwas anders.

Vom Deklarieren von Funktionen und Variablen halte ich seit Einführung dieser (für mich gesprochen) "Untugend" nichts, da sie schnelles Programmieren und Abändern verhindert. Wenn die Programmiersprache einen so ausbremst, dass sie es nicht gestattet, während man sich mit seinem Gegenüber - ich nenne es mal Auftraggeber - unterhält, eine Lösung nebenbei für sein Problem zu programmieren, dass man eine Beta seiner Idee ihm auch gleich vorführen kann, taugt sie für mich nicht für den schnellen Einsatz. Sowas taugt nur fürs abgeschiedene, stille Kämmerlein und wird leider vielen "Neuen" als "guter Stil" gelehrt.

Auch wenn sas (bzw. anfangs SmartHome) mein erstes PHP-Script überhaupt ist, (habs mal schnell gelernt, um das Vorhaben mit meinen Steckdosen zu verwirklichen) war ich froh, dass es keinen Deklarationszwang hat. Man kann, muss aber nicht. Nach über 30 Jahren als Software-Entwickler hat man seinen eigenen Programmierstil entwickelt und da ist man dann auch bei einer neu erlernten Sprache froh, wenn sie so unkompliziert und einfach wie PHP ist. :)

Im Übrigen: Kennt man eine Programmiersprache, kennt man im Prinzip alle. ;)
 
@dtrieb: http://localhost:8934/blink1/pattern/play?pname=EKG ist kein Pfad, den man in die pseudoblinkschalter.php einsetzen darf. Hier muss localhost durch die IP:8934 ersetzt werden.
Probier das mal.

Es muss die IP des Gerätes benutzt werden, an dem das Teil angeschlossen ist.

localhost ist ja nur ein Synonym für den lokalen Rechner und wird auch in eine IP transferiert.
 
Zuletzt bearbeitet:
@dtrieb: http://localhost:8934/blink1/pattern/play?pname=EKG ist kein Pfad, den man in die pseudoblinkschalter.php einsetzen darf. Hier muss localhost durch die IP:8934 ersetzt werden.
Probier das mal.

Es muss die IP des Gerätes benutzt werden, an dem das Teil angeschlossen ist.

localhost ist ja nur ein Synonym für den lokalen Rechner und wird auch in eine IP transferiert.

Stimmt ja ich kann doch nicht die IP vom NAS nehmen auf dem SaS läuft,
sondern muss die ja nehmen an dem mein Blink(1) angechlossen ist.

DANKE!
 
Wenn es läuft, sag Bescheid.
 
@dtrieb: Kein Problem :)


@JL3
Freue mich schon auf die Beta/Labor/nächste Version :D
Hier die Alpha-Version für beliebig viele Fritzboxen:
Download: entfernt
Die erste Fritzbox nimmt er aus den Einstellungen. Existiert eine conf/sensorandswitchfb.conf, nimmt er daraus die weiteren FB.
Beispiel: conf/sensorandswitchfb.conf
Code:
http://fritz2.box	Benutzer	Kennwort
http://fritz3.box	Benutzer	Kennwort
http://fritz4.box	Benutzer	Kennwort
Die Daten sind:
Fritzbox-Adresse oder IP mit evtl. Port
Benutzer
Kennwort

Jede Zeile eine Fritzbox.

Die Angaben sind mit Tabs getrennt.

Da ich nicht mehrere Fritzboxen in Betrieb habe, kann ich es nicht wirklich testen... hoffe, dass es läuft. :)
 
Zuletzt bearbeitet:
Hallo,
Werde ich mir ansehen und berichten :)

[EDIT]
Da ich nicht mehrere Fritzboxen in Betrieb habe, kann ich es nicht wirklich testen... hoffe, dass es läuft. :smile:
Aber einen PLA546e :hehe:.

Btw: Muss in den Pseudoscripten noch etwas verändert werden?
Wenn ich jetzt das WLAN der FritzBox und des PLA546e sehen möchte, wie kann ich das für beides aktivieren?
 
Zuletzt bearbeitet von einem Moderator:
Es geht um die angemeldeten Geräte, nicht um die internen Betriebssystemfunktionen. An einen 546e kann ich keine DECT200 anmelden, nur an eine Fritzbox.

Steuerung von Betriebssystemfunktionen geht generell nur über sashelper. Da muss dieser auf der jeweiligen Box mit busybox httpd installiert sein und dieser kann dann mit jeweilig angepasstem direkten PseudoGeräte-Script aufgerufen werden, um auf der jeweiligen Box einen entsprechenden Betriebssystembefehl zu starten, um die benötigten Infos zu holen oder zu schalten. Die 546e geht dafür nicht, da sie keinen Telnetzugang hat, um auf ihr busybox httpd und sashelper zu bekommen.

Nachtrag: die conf/sensorandswitchfb.conf muss UTF-8 ohne BOM oder ANSI kodiert sein.

Nachtrag2: Ob man die 546e bzw. deren WLAN über die FB an der sie angemeldet ist per Betriebssystembefehl steuern kann, müsste man koyaanisqatsi fragen, ob es die entsprechenden Befehle in der FB gibt. :)

Nachtrag3: Jedenfalls kann man nun mit der conf/sensorandswitchfb.conf und mehreren Fritzboxen die 10 DECT200 erweitern, indem man an jede Box 10 anmeldet.
 
Zuletzt bearbeitet:
Hallo,
Ich spiele die nächste Tage auf jeden Fall damit weiter :mrgreen: Über die App BoxToGo (sehr zu empfehlen, als Pro Version), kann man das WLAN schalten. Sollte ggf, irgendwie möglich sein. Aus dem LAN auch beim PLA. Aber schauen wir uns das alles gaaanz in Ruhe an. Es brennt ja nichts und bald ist Weihnachten.

Schöne Grüße aus dem Dreiländereck (D/NRW/NL).
 
Kann man mit dem Browser auch direkt die 2'te Auswahl / den 2'ten Reiter ansteuern? Dann könnte ich meiner Frau einen Link auf Ihre Zusammenstellung in den Browser packen.
 
In der nächsten Version ... gerade in meine Alpha eingebaut und geht. sas.php?tab=2 startet z. B. mit dem 2. Tab.
 
super prüf mal bitte ob das geht wenn auch der Name nicht vergeben wurde, also die Namen alle leer sind und damit nicht auf der Oberfläche erscheinen. Dann könnte jeder seine Oberfläche bekommen aber nicht in die andere wechseln.
 
Moins

Hey, wirds das auch für die Version 3.00 geben?

Und was haltet ihr von einer SaS Steuerung via Asterisk und Telefon?

Den Context für das Menü hab ich schon fertig...
extension.conf
Code:
[sas]
;
; We start with what to do when a call first comes in.
;
exten => s,1,Wait(1)
exten => s,n,Answer
exten => s,n(restart),Set(TIMEOUT(digit)=5)
exten => s,n,Set(TIMEOUT(response)=60)
exten => s,n,Gosub(time,singletime)
exten => s,n,StartMusicOnHold
exten => s,n,WaitExten

exten => time,1(twotimes),Set(FUTURETIME=$[${EPOCH} + 5])
exten => time,n,SayUnixTime(${FUTURETIME},${timezone},HM)
exten => time,n(singletime),Set(FUTURETIME=$[${EPOCH} + 5])
exten => time,n,SayUnixTime(${FUTURETIME},${timezone},HM)
exten => time,n,Return()
...und wartet mit Hintergrundmusik auf Eingabe, wobei jede Minute die Zeit angesagt wird.
 
@HarryHase: Ja, das geht auch mit "ausgeblendeten" Tabs. Allerdings kann man immer über die Einstellungen in die andere Oberfläche wechseln. Wird die WebGUI zur gleichen Zeit auf zwei Geräten aufgerufen, wird die letzte Einstellung auf allen gültig. Es gibt nur eine sas.conf. Das Ganze ist eine "Notlösung" und wenn ich mal an die 5.00 komme, bastel ich es vielleicht für mehrere "Benutzer".

@koyaanisqatsi: Nein, Neuentwicklungen gibt es nur für die 4.00. Da diese auch auf der Fritzbox laufen kann (mit der Einschränkung, dass sasap.php und sasag.php halt minütlich von cron gestartet werden sollten, statt kaskadierendem Selbstaufruf), wird die 3.00 noch eine Weile gepflegt (Bugfixes), aber nicht weiterentwickelt. Das ist mir dann zu viel Aufwand.
 
Nagut.

Hab gerade zwei Extensions fürs Asteriksprachmenü gebastelt.
Damit werden die SNOM Telefone angewiesen "die aktuelle Uhrzeit zu sagen"

Bei Wahl von 7 oder 8...
extension.conf (Context [sas])
Code:
exten => 8,1,Answer
exten => 7,n,TrySystem(curl -k https://192.168.178.5/sas/pseudosnom1.php?schalter=0)
exten => 7,n,Goto(s,restart)

exten => 8,1,Answer
exten => 8,n,TrySystem(curl -k https://192.168.178.5/sas/pseudosnom2.php?schalter=0)
exten => 8,n,Goto(s,restart)
...Benutzer asterisk und www-data dürfen curl Aufrufe absetzen, kein sudo oder su notwendig.
 
Zuletzt bearbeitet:
@HarryHase: Ja, das geht auch mit "ausgeblendeten" Tabs. Allerdings kann man immer über die Einstellungen in die andere Oberfläche wechseln. Wird die WebGUI zur gleichen Zeit auf zwei Geräten aufgerufen, wird die letzte Einstellung auf allen gültig. Es gibt nur eine sas.conf. Das Ganze ist eine "Notlösung" und wenn ich mal an die 5.00 komme, bastel ich es vielleicht für mehrere "Benutzer".

PERFEKT !!!! Das reicht vollkommen; Ich will ja nichts verstecken sondern es meiner Frau erleichtern. Habe auch meinen Pogoplug auf 4.x hochgezogen, auch da geht es super ...
 
Etwas OT: Ich bastle gerade an meinem Pi-NAS, das jetzt eine Infoseite mit allen Daten des Pi und der angeschlossenen HDD anzeigt. Selbst da ist mir sashelper eine gute Hilfe. Für was man das alles verwenden kann. ;)

Nachtrag: So sieht es dann aus...
dbnas.jpg
 
Zuletzt bearbeitet:
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.