7270 und der AB zeitgesteuert

Sheder

Neuer User
Mitglied seit
23 Dez 2006
Beiträge
39
Punkte für Reaktionen
0
Punkte
0
Hallo,

auf meiner gefreetzten 7270 versuche ich den AB zeitgesteuert an oder auszuschalten.
Also zum Beispiel zwischen 12 und 13 Uhr an, dann aus und von 17 bis 08 Uhr wieder an.
Es gibt ein Script hier im Forum, leider funzt das nicht mehr.
Wohl auch wegen der neuen SID Sicherheitsmaßnahme von AVM.

Hat jemand ne Idee wie ich das gewünschte anders realisieren kann?
Danke.
 
Zuletzt bearbeitet:
Kannst du das Skriopt mal posten...dannhaben a: andere was davon und b: könnten dann mehr Leute dran helfen ,-)
Und per cronjob den Dienst einfach abschiessen und starten nnach Uhrzeit?
 
Das hier klappt, allerdings mit PHP:
http://www.ip-phone-forum.de/showthread.php?t=196309

Ich könnte nun PHP auf die Box packen.
Freetz hat nur den Apache zusammen mit PHP, ich benötige eigentlich ja nur den PHP Interpreter und zwei Extensions. Gibt es da ein einzelnes Paket oder ähnliches?
 
Zuletzt bearbeitet:
Hi,

hier mal eine neue Version, die mit der Session-ID funktioniert. Man braucht dafür aber jetzt curl.

Code:
#!/bin/sh

if [ x"$1" == x"" ]; then
	echo "Usage: $0 {0|1|2} (0=voicemail off, 1=voicemail on, 2=voicemail status)"
	exit 1
fi

IP=127.0.0.1
PASSWD=$(/bin/allcfgconv -C ar7 -c -o - | sed -ne '/^webui[[:space:]]*{/,/^}/{/=/{s/[[:space:]]*=[[:space:]]*/=/;s/^[[:space:]]*//;p}}' | grep '^password=' | cut -d '"' -f2)

CURL=$(which curl)

login(){
# neues Loginverfahren seit xx.04.76
if [ -e /var/html/html/login_sid.xml ];then
	#[ -f /tmp/sid ] && cgisid="$(cat /tmp/sid)"
	eval "$($CURL -s "http://$IP/cgi-bin/webcm" -d "getpage=../html/login_sid.xml" -d "sid=$cgisid" | sed -n 's,.*<\(Challenge\|iswriteaccess\|SID\)>\([^<]*\).*,\1=\2;,p')"
	if [ "$iswriteaccess" = 0 ] && [ "$SID" = "0000000000000000" -o -z "$SID" ]; then
		chksum="$(echo -n "$Challenge-$PASSWD" | sed -e 's,.,&\n,g' | tr '\n' '\0' | md5sum)"
		eval "$($CURL -s "http://$IP/cgi-bin/webcm" -d "getpage=../html/login_sid.xml" -d "login:command/response=$Challenge-${chksum%% *}" | sed -n 's,.*<SID>\(.*\)</SID>.*,SID=\1,p')"
		cgisid="$SID"
		#echo -n "$cgisid" >/tmp/sid
	fi
fi
}

voicemail_status(){
	status=$($CURL \
	-s "http://$IP/cgi-bin/webcm" \
	-d "login:command/password=$PASSWD" \
	-d "sid=$cgisid" \
	-d "getpage=../html/de/menus/menu2.html" \
	-d "errorpage=../html/de/menus/menu2.html" \
	-d "var:pagename=fon1tam" \
	-d "var:menu=home" |\
	grep "tam:settings/TAM0/Active" | sed -n 's,.*value="\([^\"]*\).*,\1,p')

	if [ "$status" = 0 ]; then
		echo "Voicemail is disabled."
	else
		echo "Voicemail is enabled."
	fi	
}

voicemail_change(){
	$CURL \
	-s "http://$IP/cgi-bin/webcm" \
	-d "login:command/password=$PASSWD" \
	-d "sid=$cgisid" \
	-d "getpage=../html/de/menus/menu2.html&errorpage=../html/de/menus/menu2.html&var:pagename=fon1tam&var:errorpagename=fondevices&var:menu=home" \
	-d "tam:settings/TAM0/Active=$1" \
	1>/dev/null
}

login

if [ x"$1" != x"2" ]; then
	voicemail_change $1
	voicemail_status
else
	voicemail_status
fi

Beste Grüße,
Whoopie
 

Anhänge

  • voicemail-on_off_new.sh.txt
    1.9 KB · Aufrufe: 24
Danke sehr, klappt prima. :)
 
Nun habe ich nur noch das Problem, die Datei aus dem /var/tmp/ Verzeichnis über einen Reboot hinweg zu behalten. Gibt es da eine Lösung? Danke
 
Klar - wie jedes Mal: Schreibe es in Deine debug.cfg:

Code:
echo > /var/tmp/ab_an_aus << 'EOFABANAUS'
(script)
EOFABANAUS

Aber Achtung!!! Nach dem "EOFABANAUS" darf KEIN Leerzeichen mehr stehen!

Schönen Gruß!

hssuhle
 
Hallo,

offenbar hat sich in der aktuellen Version mal wieder was geändert.
Das Script ist noch da, Cronjob auch. Wenn ich es manuell ausführe bekomme ich immer nur den Status disabled und die aktivierung klappt nicht mehr.
Hat jemand eine Idee was sich hier geändert hat?

Meine Version:
Firmware-Version 54.04.80freetz-devel-4091

Nur Curl als Paket ausgewählt, sonst nix.

Update:
Offenbar zeigt er zumindest den Status korrekt an. Nachdem ich den AB pber die Webseite aktiviert habe, bekomme ich enabled als Status. Scheinbar klappt also nur die Änderung nicht.
Update2:
Ok, jetzt wird es komisch. Nun klappt die mauelle aktivierung wieder. Geändert habe ich nichts. Ähm...
Der Cronjob macht aber jetzt offenbar nicht was er soll.
 
Zuletzt bearbeitet:
Ich helfe mir mal selber....
Da die Box derzeit nicht ins Netz kommt, stimmt die Zeit nicht mehr.
Da kann natürlich auch der Cronjob nicht richtig klappen.
Warum das Script aber erst manuell nicht ging, und nun doch geht ist mir ein Rätsel.
 

Statistik des Forums

Themen
244,885
Beiträge
2,220,163
Mitglieder
371,619
Neuestes Mitglied
Lebeat
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.