Script bei abgehendem Telefonanruf

Lemur

Mitglied
Mitglied seit
17 Mai 2007
Beiträge
281
Punkte für Reaktionen
0
Punkte
0
Hallo Ihr's,

ich wüsste gerne, ob die Box eine bestimmte Datei einliest, wenn ein Telefonat abgehend geführt wird. Leider verarbeitet die /var/flash/calllog nur eingehende Telefonate.

Sinn dahinter ist ein simples Script auszuführen, sobald ein Anruf zu einer bestimmten Nummer erfolgt. Hier soll z.B. bei einem Notruf auf 110 / 112, automatisch eine SMS an mein Handy mit rufender MSN gehen.

Das Script selber sollte kein Problem sein, mir fehlt nur die Info, wo ich den abgehenden Anruf "abgreifen / auslesen " kann.

PS: Ich weis, das der Callmonitor das kann, allerdings erscheint mir der Callmonitor zu mächtig, für meine Zwecke.

Vielen Dank im voraus.

Grüße Lemur
 
Hi,

vielleicht hilft das ja etwas:
Code:
dtrace -* -s -d2 -d3 | grep "Called party number: .*"
 
Hi bodega,

danke für die Antwort! An dtrace hatte ich noch garnicht gedacht, damit sollte sich dass realisieren lassen.

LG Lemur
 
@Lemur: Du postest aber uns dein Skript nachher? Würde mich interessieren. Vor allem, wie du sms vesendest. Wenn du betamax verwendest, hatte ich hier mal dazu schon was gepostet (sendsms.sh).
Zu deinem eigenen Vorhaben / zu deiner Frage. Da kann dir eigentlich auch callmonitor helfen. Suche bitte bei den callmonitor-Aktionen nach ausgehenden Anrufen und wähle als auszuführende Aktion dein Skript. Ich habe zwar jetzt kein Syntax parat, weiß aber, dass es grundsätzlich möglich ist.

MfG
 
Hallo hermann,

natürlich poste ich das fertige Script, sobald ich dieses erstellt und getestet habe. Für die SMS verwende ich den boxinternen Mailer, der eine E-Mail an einen prepaid Mail-to-SMS Gateway (irgendwas ala 2,5 ct. p. SMS) schickt.

Wie im ersten Posting schon geschrieben, ist mir bekannt dass Callmonitor das kann. Allerdings soll dieses Script auf Boxen laufen, die Callmonitor nicht installiert haben. Ich bin daher bedacht, das Vorhaben mit ein paar Zeilen b(ash) Code zu lösen und kein, zwar sehr gutes, allerdings für dieses Vorhaben zu mächtiges Paket zu nutzen.

Grüße Lemur

EDIT: Vielleicht wäre es noch einfacher, die Anrufmonitorschnittstelle auszulesen (port 1012), allerdings suche ich noch eine Möglichkeit die Werte zusätzlich einfach in eine Datei schreiben zu lassen. Kennt jemand den Ursprungsprozess, der die Callausgaben auf Port 1012 zur Verfügung stellt?

EDIT2:
Code:
busybox nc 127.0.0.1 1012
bringt da schon fast das gewünschte Ergebnis.
 
Zuletzt bearbeitet:
Hallo Lemur,

ich benutze Dein Script (etwas modifiziert) zur Benachrichtigung über eingehende Anrufe. Erstmal herzlichen Dank dafür, funktioniert super.
Dann habe ich auch gleich zwei Fragen:

1. Bist Du hier mit einem Script bei abgehenden Anrufen weitergekommen (hat das mit dtrace funktioniert?)?

2. Über das callog im Flash werden ja nur Anrufe signalisiert, die extern reinkommen. Gibt es eine Möglichkeit, auch interne Anrufe zu erkennen? Bei mir wäre das die Haustür-Klingel, die über meine Fritz.Box kommt. Ich möchte halt wissen, wenn jemand geklingelt hat, wenn ich nicht zu Hause bin.

Grüße

pjo
 
Zuletzt bearbeitet:
Hi,
[...] (port 1012), allerdings suche ich noch eine Möglichkeit die Werte zusätzlich einfach in eine Datei schreiben zu lassen.
Du kannst mehrere Verbindungen gleichzeitig zu Port 1012 herstellen, z.B. eine zum Loggen.
Kennt jemand den Ursprungsprozess, der die Callausgaben auf Port 1012 zur Verfügung stellt?
"telefon" bietet diesen Dienst an.

Gruß

Andreas
 
Hallo pjo,

zu 1., ich habe da nicht mehr weiter probiert, da ich eine simplere Lösung über meinen Asterisk Server gefunden habe ( hat aber nix mit der Fritzbox zu tun)

zu 2., ich bin mir nicht sicher, ob die internen Verbindungen auf P 1012 zu sehen sind, kann das auch gerade mangels Hardware nicht testen, sofern Du eine Box zur Hand hast, schau doch mal kurz in die Ausgabe und drück auf die Klingel...

Sofern sich da was tut, wäre das relativ simpel zu mit nem Script zu lösen.

samsmooth hat mal etwas entwickelt, was den Port überwacht und an eine externe SQL Datenbank schickt, hier ist sein Ansatz dazu:

Code:
#!/bin/sh

if [ "$(pidof nc)" = "" ] ; then
 $0 | nc localhost 1012 | while read nc; do
   wget http://host/skript.php?string=$(echo -n $nc | tr -d '\015' | sed -e 's/+/%2b/g;s/ /%20/g;s/#/%23/g;s/;/%3b/g;s/:/%3a/g;s/\./%2e/g') -qO /dev/null
  done
  else
   while true; do
    sleep 300
   done
  fi
Die wget-Zeile müsste dann durch deine gewünschte Verarbeitung ersetzt werden.

Grüße Lemur

@buehmann
Danke für die Info, könnte man evtl. den telefond anweisen, auch interne Verbindungen zu übergeben/loggen?

*EDIT*
Zumindest in der Standartkonfiguration, der aktuellen FW einer 7170 mit eingeschaltetem Callmonitor 1012, werden weder die Analogen FON 1-3, noch Verbindungen über den internen S0 gelistet.
Das einzige was mir dazu spontan einfällt, wäre eine fiktive Rufumleitung deines Türsignals, sodass die Box diese als externe Verbindung verarbeitet und listet.
 
Zuletzt bearbeitet:
könnte man evtl. den telefond anweisen, auch interne Verbindungen zu übergeben/loggen?
Ich kenne keine Möglichkeit, die Ausgabe in irgendeiner Art und Weise zu beeinflussen.

Andreas
 
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.