[Frage] [SensorAndSwitch] Feature-Anfrage

S

SF1975

Guest
Hallo,
Ich hatte in den letzten Wochen ab und an das Problem, dass einige meiner VoIP-Rufnummern nicht mehr registriert/angemeldet waren.
Daher kam mir die Idee, ob man das mit BoxToGo "überwachen" könnte. Die Netzwerkgeräte werden ja gelistet. Vielleicht kann man das mit den in der FBF registrierten Rufnummern auch machen. Diese werden dann in einem Widget gelistet. Keine Bearbeitung o.ä., lediglich eine Art Übersicht:

Code:
    [x] Rufnummer 123456
    [x] Rufnummer 234567
    [x] Rufnummer 345678
    [x] Rufnummer 456789
    ...
Wobei das [x] für eine grüne "LED" steht, die bei Registrierung/Aktivität leuchtet.
Alt:
Code:
[x] Rufnummern registriert
[x] steht für die Anzahl der registrerten Rufnummern.

IMHO kann man diese Daten ja aus der FBF auslesen. SAS meldet sich ja bei der FBF an.

Daher auch meine Frage, ob man, ohne Mods an der BOX, das WLAN oder RULs damit schalten kann.
Die Abfrage, ob Nachrichten auf dem AB sind, wäre aoch ohne Mods schön. Vielleicht kann man ja den SAS in die Richtung entwickeln.

Leider habe ich diese Kenntnisse nicht und stelle daher des öfteren Fragen, bei denen sich andere vor den Kopf schlagen.

Schöne Grüße,
Frank
 
Leider habe ich diese Kenntnisse nicht und stelle daher des öfteren Fragen, bei denen sich andere vor den Kopf schlagen.

Schöne Grüße,
Frank
Entsprechend dem Motto: "Es gibt keine dummen Fragen, nur dumme Antworten."
versuche ich mal, das zu erklären.

Den sashelper habe ich dafür konzipiert, Betriebssystembefehle auf Fritzbox oder RaspPI auszuführen. Dies ist notwendig, denn eine reine Anmeldung an die Fritzbox, erlaubt noch herzlich wenig. Dafür bedarf es busybox mit httpd, php und curl. Dieses Paket ist kein eigentlicher Mod für die Fritzbox, da es an ihrem System nicht das Geringste verändert. Wenn du diese Komponenten wie im sasweb beschrieben im Fritzbox-Speicher oder auf einem Stick installierst, hast du per sas die gewünschten Funktionen. Eine andere Möglichkeit sehe ich momentan nicht.

Das mit der VoIP-Registrierung auf der Fritzbox könnte dir evtl. koyaanisqatsi beantworten. Er kennt sich da besser aus als ich.
 
Schönen Abend

Nun, die Info was an den Fritz!Box Registraren hängt liefert auf der Box: showvoipdstat
Mit ctlmgr_ctl können die auch durchgezählt und Name und Nummer ausgegeben werden...
Code:
local count=0
local maxcount=$(ctlmgr_ctl r telcfg settings/VoipExtension/count)
if [ ${maxcount} -gt 0 ] ; then
echo 'Angelegte IP-Telefone (LAN/WLAN):'
while [ ${count} -lt ${maxcount} ] ; do
local name=$(ctlmgr_ctl r telcfg settings/VoipExtension${count}/Name)
local number=$(ctlmgr_ctl r telcfg settings/VoipExtension${count}/Number)
echo ${name}': '${number}
: $((count++))
done
fi
Auch kann die Registrierung erzwungen werden, indem so eine "Extension" deaktiviert und eine Minute später wieder aktiviert wird.
Die Registrierung von Internetseite lässt sich genauso leicht schalten.
rfo.sh (Auszug)
Code:
#!/bin/sh
rfo () {
ctlmgr_ctl w voipextension settings/extension$1/reg_from_outside $2
echo 'Extension 62'$1' setting: '$(ctlmgr_ctl r voipextension settings/extension$1/reg_from_outside)
}
enable_ext () {
if [ $# -eq 2 ] ; then
ctlmgr_ctl w voipextension settings/extension$1/enabled $2
fi
echo 'Extension 62'$1' setting: '$(ctlmgr_ctl r voipextension settings/extension$1/enabled)
}
all_rfo () {
local count=0
local maxcount=$(ctlmgr_ctl r voipextension settings/extension/count)
while [ $count -lt $maxcount ] ; do
rfo $count $1
: $((count++))
done
}
all_enable () {
local count=0
local maxcount=$(ctlmgr_ctl r voipextension settings/extension/count)
while [ $count -lt $maxcount ] ; do
enable_ext $count $1
: $((count++))
done
}
 
Zuletzt bearbeitet:
Hallo,
Im Moment läuft der RaspPi soweit. Ich werde in den nächsten Wochen mal schauen, was ich da noch mache.

Grüße,
Zwerch
 
Abend Allerseits

JL3 hat mal erwähnt, nützliche Funktionen bereitzustellen.
Eine die ich nicht mehr missen möchte ist diese hier...
my_funcs.inc (isServer)
PHP:
function isServer($ip,$port) {
$timeout = 1;
$fp = @fsockopen($ip, $port, $timeout);
if($fp)
{
return true;
}
else
{
return false;
}
}

Ein Beispiel für einen Sensor...
pseudosnom1sensor.php
PHP:
<?php
require_once("my_funcs.inc");
if ($_GET["info"]=="status") {
$fp = isServer("snom1.fritz.box","443");
if($fp==true)
{
$Status="P#1*Online#T#30#W#2.25#";
}
else
{
$Status="P#0*Offline#T#20#W#0#";
}}
echo $Status;
?>

PS: Der phpmailer läuft anstandslos, danke dafür. ;)
 
Zuletzt bearbeitet:
PS: Der phpmailer läuft anstandslos, danke dafür. ;)
Prima :)

Hab in der 1277 jetzt noch weiter die Einstellungen-Seite überarbeitet und eine Art Autoreparatur eingebaut.

Deine Funktion habe ich in die

includefunctions.php

PHP:
function istOnline($ip,$port) {
/***************************/
	$timeout=1;
	$fp=@fsockopen($ip,$port,$timeout);
	if($fp)	{
		return true;
	}
	else {
		return false;
	}
}
aufgenommen. Unter neuem Namen, dass sie nicht mit deiner bereits eingebundenen kollidiert.
 
Hallo,
Falls möglich: Eine Art "Testmail" wäre nett, falls man keine schaltbaren Geräte an der Box hat ;)
 
In der Oberfläche einen Button der den Browser mit der IP der Fritz!Box öffnet (wenn eine Fritz!Box) eingetragen wurde!
 
Was haltet ihr von einer Fußball Ergebnis Anzeige?

Wenn ein Tor fällt könne dann auch etwas geschaltet werden ;)
 
Wer das haben möchte, kann sich ein Pseudo dazu basteln :mrgreen:
 
...wenn ein zweiter SaS Klient als Slave in Form gemeinsamer Datenbankbenutzung eingebunden werden könnte.

Dann bräuchte der noch nicht mal eine Fritz!Box Anmeldung, oder Pseudoskripte und und und...
:rolleyes:
 
Zuletzt bearbeitet:
Richtig, der nutzt nur die Datenbank.

Aber was konkret schwebt dir da vor?
 
Rechen-, oder Zeitintensive Dinge könnten aufgeteilt werden.
Sodaß mehr Geräte, Kettenglieder möglich wären, als ohne.
...macht am meisten Sinn.

Starker Rechner = viel PHP, schwacher = weniger PHP
 
Ja, verstehe, vom Konzept her ohne Probleme umsetzbar. Wer in die DB was schreibt und von wo ist ja im Prinzip egal. ;)
 
Bin am Überlegen. Es betrifft vor allem sasag.php. Das Script liest die psg...php's und schreibt die Aktualisierung in die Datenbank. Mal sehen, ob mit sqlite ein Schreiben auf einen anderen Server Probleme macht. Ansonsten müss dann nur sasag.php beigebracht bekommen, wohin es aktualisieren soll. So können auch mehrere sasag.php auf verschiedenen Geräten die zentrale Datenbank beliefern.
Grundsätzlich sehe ich das im Bereich des Machbaren.
 
So eine Art Interprozesskommunikation.

Der Slave meldet sich und gibt bekannt was er kann.
Daraufhin übernimmt sasag.php die interne Bereitstellung der Datenbank,
wichtig fürs Timing, weil ich hab eher an einen Download der Datenbank,
also vom Slave initiert (wget), wenn sasag.php meint ist OK, oder nötig.
Andersrum, Slave ändert "seine" Datenbank und signalisiert das sasag.php.
Dann holt sich sasag.php die Datenbank (wget).

Eventuell liesse sich dieses "gedownloade" höchstwahrscheinlich vermeiden,
wenn nur die entsprechenden SQL Kommandos ausgetauscht/verschickt
und ausgeführt werden.
 
Zuletzt bearbeitet:
Behalte ich im Auge. ;)
 

Statistik des Forums

Themen
244,808
Beiträge
2,218,758
Mitglieder
371,494
Neuestes Mitglied
msh7
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.