Callmonitor 1.*

Status
Für weitere Antworten geschlossen.
Hallo mic29,

danke für deinen Bug-Report; du hast einen dummen Fehler aufgedeckt (ich hatte in der betroffenen Datei aufgeräumt und dabei etwas übersehen). Ich mache in den nächsten Tagen, spätestens zum Wochenende, eine neue Version fertig.

Vielen Dank nochmal,

Andreas
 
habe es gestern geschafft ds 0.2.9 mit firmware 4.21 auf meiner Fritzbox zu installieren.

Nun wollte ich auch in den Listener meine DreamBox eintragen.
Kann aber in die Fenster nichts eintagen, auf der WebOberfläche steht "nicht genügend rechte....."
 
das wars, aber ich komme in das ~tmp nicht rein:

/var/tmp/flash ist das gleiche wie /tmp/flash ?

bei mir ist aber kein unterordner security /tmp/flash/security


wie kann ich da Änderungen machen?
 
Zuletzt bearbeitet:
/tmp ist ein symbolischer Link auf /var/tmp, deswegen sind /tmp/flash und /var/tmp/flash dasselbe Verzeichnis. "security" ist eine Datei, die du in diesem Verzeichnis anlegen kannst, am einfachsten mit dem genannten Befehl "echo x > /tmp/flash/security" (überschreibt den verherigen Inhalt von security mit dem Wert x).

Andreas
 
jetzt kann ich Aktionen in den Listener schreiben, Danke.

Ich bin begeistert, Anrufe werden auf meiner Dreambox angezeigt!

kompliment, Ihr seit super!!
 
Zuletzt bearbeitet:
Ich kriege Folgendes nicht realisiert:
Wenn ein Anruf an MSN1 nicht erfolgreich war, sende eine E-Mail an [email protected] (mit Inverssuche).
Wenn ein Anruf an MSN2 nicht erfolgreich war, sende eine E-Mail an [email protected] (mit Inverssuche).

Was klappt, ist das Versenden einer E-Mail an den Push Empfänger bei jedem nicht erfolgreichem Anruf auf allen MSN ohne Inverssuche.

Um was muss ich
Code:
in:cancel   ^   ^   mailmessage
erweitern?

Danke!
 
melino schrieb:
Wenn ein Anruf an MSN1 nicht erfolgreich war, sende eine E-Mail an [email protected]
Code:
in:cancel   ^   ^MSN1$   mailmessage -t [email protected]
Wenn ein Anruf an MSN2 nicht erfolgreich war, sende eine E-Mail an [email protected]
Code:
in:cancel   ^   ^MSN2$   mailmessage -t [email protected]
Ob die Rückwärtssuche durchgeführt wird, lässt sich nur global in der Callmonitor-Konfiguration einstellen.

Ich hoffe, das hilft Dir weiter,

Andreas
 
Auf Anruf Port für Remotedesktop freigeben

Hallo,

ich habe schon recht ordentlich im Forum gestöbert, allerdings fehlt mir noch ein wenig das Linux- und Fritz-Box-Verständnis, um mit einem Script, das ich mit dem Callmonitor starten kann, den Port für meine Remotedesktopverbindung freizugeben. Ich habe eine Fritz-Box 7170 mit Firmware Firmware-Version 29.04.15ds-0.2.9. Der Callmonitor läuft bereits super, mein Problem ist wohl eher das Script. Es soll einfach die vorhandene, aber nicht aktivierte Portfreigabe aktivieren. Folgendes Script habe habe ich im Thread http://www.ip-phone-forum.de/showthread.php?t=85700&highlight=portfreigabe+callmonitor
gefunden (es müßte nach meinem Verständnis meine Portfreigabe für 120s aktivieren):

Code:
#/bin/sh
export REQUEST_METHOD="POST"
export REMOTE_ADDR="127.0.0.1"
export CONTENT_TYPE="application/x-www-form-urlencoded"

POST_DATA="login:command/password=forumtest"
POST_DATA="forwardrules:settings/rule0/activated=1"
export CONTENT_LENGTH=${#POST_DATA}

echo -n "$POST_DATA" | /usr/www/html/cgi-bin/webcm > /dev/null

echo "port offen, gehe schlafen"
sleep 120
echo "wieder wach, schließe..."

export REQUEST_METHOD="POST"
export REMOTE_ADDR="127.0.0.1"
export CONTENT_TYPE="application/x-www-form-urlencoded"

POST_DATA="forwardrules:settings/rule0/activated=0"
export CONTENT_LENGTH=${#POST_DATA}

echo -n "$POST_DATA" | /usr/www/html/cgi-bin/webcm > /dev/null

echo "wieder zu, viel spass!!"
Leider funktioniert die Portfreigabe aber nach dem Start des Scripts nicht (Ausschrift: "port offen, gehe schlafen" kommt), ich komme nicht an meinen Remotedesktop (funktioniert aber, wenn ich sie manuell im Webinterface aktiviere). Was mache ich falsch? Ich habe nur die eine Portfreigabe. In der ar7.cfg steht sie an 22.Stelle...

Jeder Tip ist willkommen.

Vielen Dank und Grüße

Miwu
 
Hallo Miwu,

eigentlich hat dein Problem, wie du selbst erkannt hast, ja wenig mit dem Callmonitor zu tun. Wenn das hier länger werden sollte, sollten wir das in einem eigenen Thread diskutieren.
miwu schrieb:
Code:
POST_DATA="login:command/password=forumtest"
POST_DATA="forwardrules:settings/rule0/activated=1"
Die zweite Zeile überschreibt den Wert der Variablen POST_DATA, der in der ersten Zeile zugewiesen wurde. Es kommt also nie zum Login; und die folgenden Befehle können nicht funktionieren. Dazwischen muss noch ein Aufruf von webcm (stell dir das wie das Klicken auf einen Button in deinem Browser vor); etwa so (ungetestet; und damit das Ganze doch wieder etwas mit dem Callmonitor zu tun hat, unter Verwendung einer Funktion aus dem Callmonitor):
Code:
#! /bin/sh
WEBCM_DIR=/usr/www/html/cgi-bin
WEBCM=$WEBCM_DIR/webcm

webui_post_form() (
    cd "$WEBCM_DIR"
    local post_data=$1
    echo -n "$post_data" |
    REQUEST_METHOD=POST REMOTE_ADDR=127.0.0.1 \
    CONTENT_TYPE=application/x-www-form-urlencoded \
    CONTENT_LENGTH=${#post_data} \
    "$WEBCM"
)

webui_post_form "login:command/password=forumtest"
webui_post_form "forwardrules:settings/rule0/activated=1"

echo "port offen, gehe schlafen"
sleep 120
echo "wieder wach, schließe..."

webui_post_form "forwardrules:settings/rule0/activated=0"

echo "wieder zu, viel spass!!"

Gruß,
Andreas
 
Hallo Andreas,

vielen Dank für Deine schnelle Hilfe, ich probiers gleich morgen aus und poste das Ergebnis - oder mache einen neuen Thread auf :) -

Viele Grüße

Miwu
 
Nachrichtentext ändern

Ich kriege den Nachrichtentext nicht geändert.
Sobald ich meine foobar.sh in actions.local.d hochgeladen habe, lässt sich callmonitor nicht mehr starten. (Wohl weil ich Murks schreibe)
Hat jemand einen Tip, wie die foobar.sh aussehen muss, wenn ich folgende mail bekommen möchte:

Subject: Anruf von Sebastian
Body: Anruf von Sebastian (017612345689)
17.11.06 20:53:11


Ansonsten klappt alles super! Danke an buehmann
 
Im einfachsten Fall (ohne Behandlung der Fälle, dass kein Name gefunden wurde, etc.):
Code:
mail_subject() {
  echo "Anruf von $SOURCE_NAME"
}
mail_body() {
  echo "Anruf von $SOURCE_NAME ($SOURCE)"
  echo "$TIMESTAMP"
}

Viel Spaß beim Ausbauen ...

Andreas
 
Hi Andreas,

Du hast es mal wieder geschafft, alles funktioniert prächtig und ich bin wiedermal beeindruckt, was so alles geht - auch Portfreigaben mit dem Callmonitor :) -

Was in Deinem Script nicht funktionierte war das Abschalten des Ports nach 2 Minuten. Es lag daran, dass man sich bei der Fritz-Box nach 2 Minuten wohl wieder neu einloggen muß. Hier das bei mir perfekt funktionierende Script:

Code:
#! /bin/sh
WEBCM_DIR=/usr/www/html/cgi-bin
WEBCM=$WEBCM_DIR/webcm

webui_post_form() (
    cd "$WEBCM_DIR"
    local post_data=$1
    echo -n "$post_data" |
    REQUEST_METHOD=POST REMOTE_ADDR=127.0.0.1 \
    CONTENT_TYPE=application/x-www-form-urlencoded \
    CONTENT_LENGTH=${#post_data} \
    "$WEBCM"
)

webui_post_form "login:command/password=forumtest"
webui_post_form "forwardrules:settings/rule0/activated=1"

echo "port offen, gehe schlafen"
sleep 120
echo "wieder wach, schließe..."

webui_post_form "login:command/password=forumtest"
webui_post_form "forwardrules:settings/rule0/activated=0"

echo "wieder zu, viel spass!!"

Nochmals Danke und Viele Grüße

Miwu

P.S. Hier gibts mittlerweile viele Fans von sbmarquee :)) Außerdem kann man den Callmonitor (callaction <Befehl>) auch super dazu mißbrauchen, crongesteuert im Script abends die Soundbridge dunkelzuschalten
 
Na, dann haben sich unsere gemeinsamen Experimente von damals, um die sb*-Funktionen zu schreiben, ja ausgezahlt. Noch ein schönes Wochenende!

Andreas

P.S.: Wie funktioniert der Missbrauch zum Dunkelschalten? Leere Nachricht für ein paar Stunden?
P.P.S.: Wenn die Frage nach An-/Abschalten der Portfreigaben nochmal auftaucht, muss ich wohl mal eine passende Aktion in den Callmonitor einbauen ... ;-)
 
Die Versuche haben sich auf alle Fälle ausgezahlt wie man auch beim Hell- und Dunkelschalten sieht.

Das Dunkelschalten geht ganz einfach. Die Soundbridge kann im ausgeschalteten Zustand mit der links- und rechts-Taste der Fernbedienung dunkel bzw. hell geschaltet werden. Mit dem irman-Kommando kann man der Soundbridge solche Fernbedienungsbefehle auch per Netzwerk senden. Tja, und da ich bei unseren Tests callaction und rawmsg gelernt habe war es einfach, ein Script zu schreiben und es einfach in den Cron einzutragen. Das Script sieht wie folgt aus (es gibt sehr viele Dimmstufen):

Code:
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_EAST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_EAST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_EAST \n'
callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_EAST \n'
Ein ähnliches Script läuft morgens, um die SB wieder hell zu schalten :)

Viele Grüße

Miwu

zu P.P.S.: Sowas kann nie schaden, allerdings kann ich mir nicht vorstellen, dass es viele Leute gibt die temporär Portfreigaben per Anruf aktivieren wollen, aber toll wäre es schon ;-)
 
Zuletzt bearbeitet:
miwu schrieb:
da ich bei unseren Tests callaction und rawmsg gelernt habe
Dann lernst du jetzt noch, eine einfache Schleife zu schreiben: ;-)
(es gibt sehr viele Dimmstufen):
Code:
n=0
while [ $n -lt 22 ]; do
  callaction rawmsg -p 4444 192.168.142.221 'irman dispatch CK_WEST \n'
  let n++
done
...
dass es viele Leute gibt die temporär Portfreigaben per Anruf aktivieren wollen, aber toll wäre es schon ;-)
Ich lese das schon mindestens zum dritten Mal; und es gab noch andere Variationen (SIP-Account oder WLAN (de)aktivieren). Im nächsten Callmonitor wird erstmal folgendes als Aktion gehen:
Code:
config forward 1 on  # 1. Portforwarding aktivieren
config forward 3 off # 3. Portforwarding deaktivieren
config wlan off      # WLAN aus
config wlan on       # WLAN an
config sip 4 on      # 4. SIP-Account aktivieren
config sip 2 off     # 2. SIP-Account deaktivieren

Andreas
 
Nachrichtentext ändern

@buehmann: Mit Deinem Code läßt sich callmonitor nun wieder starten, aber die E-Mail ist leer! :noidea:
Ich habe schon selbst viel probiert, aber sobald ich wieder ans Werk gehe, lässt sich callmonitor nicht mehr starten.
 
@melino: Bekommst du irgendwelche aussagekräftigen Fehlermeldungen, wenn du einen Testanruf machst? Wenn in deiner Datei ein Fehler ist, müsste dir das nach dem "Including ...." angezeigt werden.

Das mit der leeren E-Mail muss ich gleich mal ausprobieren; kann ich mir gar nicht vorstellen.

Andreas

P.S.: Bei mir funktioniert's wie erwartet mit den oben angegebenen Definition von mail_subject und mail_body:
Mail schrieb:
Anruf von Andreas Handy
Datum: Heute 10:45:18
Von: "FRITZ!Box" <[email protected]>
An: [email protected]

Anruf von Andreas Handy (01xxxxxxxxxx)
18.11.06 10:45:14
 
Zuletzt bearbeitet:
Nein, außer
Code:
Nov 18 10:45:24 mailer[2277]: Couldn't load shared library  libavmssl.so - File not found - Bad file descriptor (9)
, die ich aber immer bekomme, wenn alles funzt. Der Rest ist wie bei einer mail ohne Textanpassung, also ganz ohne foobar.sh.
 
Status
Für weitere Antworten geschlossen.
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.