Anrufbeantworter auf der FB installiert

das mit dem sleep bringt nix. es steht immer noch ein R vor dem anrufbeantworter. wie schalte ich das logging ein? kann nix finden

Code:
#!/bin/sh

####################################################################
#
# Server-Variablen ferstlegen
#
####################################################################
#
# URL, von wo die zusätzlichen Daemons heruntergeladen werden
serverurl=
#
# Pfad der die benötigten Dateien enthält (z.B. OpenVPN, SSH, oder FTP)
serverdir=
#
# Lokale IP-Adresse des Syslog-Clients
syslogclient="192.168.69.1, z.B. IP von PC-1"
#
# Internet-URL zur Erkennung, ob Internetverbindung steht
internetpingurl="www.google.de"
#
####################################################################


####################################################################
#
# Telnet-Server starten
#
####################################################################
#
/usr/sbin/telnetd -l /sbin/ar7login
#
####################################################################

sleep 1

####################################################################
#
# Syslog-Daemon starten
#
####################################################################
#
#/sbin/syslogd -R $syslogclient
#
# Telefon-Daemon beenden, da die Einträge nur in STDOUT und nicht
# in den Syslog-Daemon protokolliert werden
#/usr/bin/killall telefon
#/bin/sleep 2
# Und Telefon-Daemon wieder neu starten - allerdings mit ungelenkter
# Ausgabe zum Syslog-Daemon :)
#/usr/bin/telefon 1 a127.0.0.1 | /usr/bin/logger &
####################################################################


####################################################################
#
# Warten bis Internet-Verbindung steht
#
####################################################################
#
#/usr/bin/logger "[DEBUG.CFG] 2. Warte auf Internet-Verbindung..."
while !(ping -c 1 $internetpingurl); do
#/usr/bin/logger "[DEBUG.CFG] 2.1 Prüfe Internet-Verbindung..."
sleep 2
done
#/usr/bin/logger "[DEBUG.CFG] 2. Internet-Verbindung vorhanden."
#
####################################################################


####################################################################
#
# FTP-Server einbinden und starten (hier bftp) wird mit.29 nicht 
# mehr gebraucht, nur noch der benutzer muss angelegt werden
####################################################################
#
#/usr/bin/logger "[DEBUG.CFG] 3. Starte FTP-Server..."
#cd /var/tmp
#wget http://$serverurl$serverdir/bftpd.conf
#wget http://$serverurl$serverdir/bftpd
#chmod +x bftpd
#chmod 777 bftpd.conf
echo  >> /var/tmp/passwd
#/var/tmp/bftpd -d -c /var/tmp/bftpd.conf | /usr/bin/logger &
#/usr/bin/logger "[DEBUG.CFG] 3. FTP-Server gestartet."
#
####################################################################


####################################################################
#
# OpenVPN starten
#
####################################################################
#
#/usr/bin/logger "[DEBUG.CFG] 4. Starte OpenVPN-Server..."
cd /var/tmp
mkdir vpn
cd vpn
# OpenVPN holen und ausführbar machen
#/usr/bin/logger "[DEBUG.CFG] 4.1 Lade OpenVPN und Zertifikate runter..."
wget http://$serverurl$serverdir/openvpn

#Zertifikate holen
wget http://$serverurl$serverdir/fritzbox.crt
wget http://$serverurl$serverdir/ca.crt
wget http://$serverurl$serverdir/dh1024.pem
/usr/bin/logger "[DEBUG.CFG] 4.1 OpenVPN und Zertifikate heruntergeladen."

#FritzBox Config erzeugen
#/usr/bin/logger "[DEBUG.CFG] 4.2 Erzeuge FritzBox-OpenVPN Konfigurationsdatei..."
cat > "/var/tmp/vpn/fritzbox.conf" << "EOLOOP0"
# Grundsaetzliches
port 1195
proto udp
dev tap0
dev-node /var/tmp/vpn/tun
# Server-Einstellungen
mode server
tls-server
server-bridge 192.168.69.254 255.255.255.0 192.168.69.80 192.168.69.85
#server 10.0.0.0 255.255.255.0
client-to-client
# Dies ist der IP-Bereich von eurem FritzBox-LAN
push "route 192.168.69.0 255.255.255.0"
# Authentifizierung und Verschluesselung
ca /var/tmp/vpn/ca.crt
cert /var/tmp/vpn/fritzbox.crt
key /var/tmp/vpn/fritzbox.key
dh /var/tmp/vpn/dh1024.pem
auth SHA1
cipher AES-256-CBC
# Sonstiges
ping 10
push "ping 10"
ping-restart 60
push "ping-restart 60"
EOLOOP0
#/usr/bin/logger "[DEBUG.CFG] 4.2 FritzBox-OpenVPN Konfigurationsdatei erzeugt."

#FritzBox Key erzeugen
#/usr/bin/logger "[DEBUG.CFG] 4.3 FritzBox-OpenVPN Key erzeugen..."
cat > "/var/tmp/vpn/fritzbox.key" << "EOLOOP1"
-----BEGIN RSA PRIVATE KEY-----

-----END RSA PRIVATE KEY-----
EOLOOP1
#/usr/bin/logger "[DEBUG.CFG] 4.3 FritzBox-OpenVPN Key erzeugt."

#Dateirechte vergeben
#/usr/bin/logger "[DEBUG.CFG] 4.4 Vergebe Dateirechte für OpenVPN-Dateien..."
chmod 600 /var/tmp/vpn/fritzbox.key
chmod 600 /var/tmp/vpn/fritzbox.conf
chmod +x /var/tmp/vpn/openvpn
mknod /var/tmp/vpn/tun c 10 200
/usr/bin/logger "[DEBUG.CFG] 4.4 Dateirechte für OpenVPN-Dateien vergeben."


#OpenVPN als Daemon starten
#/usr/bin/logger "[DEBUG.CFG] 4.5 Starte OpenVPN als Daemon..."
/var/tmp/vpn/openvpn --cd /var/tmp/vpn --config fritzbox.conf --daemon

#/usr/bin/logger "[DEBUG.CFG] 4.5 OpenVPN als Daemon gestartet."
#
####################################################################
#/usr/bin/logger "[DEBUG.CFG] 4. OpenVPN-Server gestartet."


####################################################################
#
# Prozess-Liste an Syslog-Daemon senden
#
####################################################################
#
sleep 2
#ps
#
#################################################################

# set hostname to fritz.box
hostname fritz.box

major=`grep tffs /proc/devices`
tffs_major=${major%%tffs}
#write calllog
cat > /var/calllog << 'ENDCALLLOG'
#!/bin/sh

CALLER=${1}
LINE=${3}
if [ -z "${LINE}" ]
then
  LINE=${2}
fi
if [ "${LINE}" = "ISDN" ]
then
  LINE=${2}
fi
if [ -z "${LINE}" ]
then
  LINE=${1}
  CALLER=""
fi

sh /var/tmp/parse_telefon.sh "${LINE}" "${CALLER}" &

ENDCALLLOG

# save /var/calllog
mknod /var/flash/calllog c $tffs_major $((0x77))
cp /var/calllog /var/flash/calllog

#CONTACTS
#contact=:anonym;

#CONTACTSEND

#LINES
#line=:anonym;

#LINESEND

# write reverse lookup script to file
cat > /var/tmp/invers.sh << 'ENDINVERS'
#!/bin/sh

number=$1

wget -q -O /var/tmp/page "http://www2.dasoertliche.de/?form_name=detail&lastFormName=search_inv&ph=${number}&recFrom=1&hitno=0" 2>/dev/null

while read reverse
do
  case ${reverse} in
    *detail_top*)
      name=${reverse#*\>}
      name=${name%%\<*}
      break
    ;;
  esac
done < /var/tmp/page

echo "${name}" > /var/tmp/name

# get address
while read reverse
do
  if [ -n "${gotaddress}" ]
  then
    address=${reverse#*\>}
    address=${address%\<*}
    break
  fi
  case ${reverse} in
    *da_adresse*)
      gotaddress=1
    ;;
  esac
done < /var/tmp/page

echo "${address}" | sed -e '{s/&nbsp;/ /g;s/<br \/>/;/g;}' > /var/tmp/address
ENDINVERS

# make it executable
chmod +x /var/tmp/invers.sh

# write send script to file
cat > /var/tmp/callmessage.sh << 'ENDCALLMESSAGE'
#!/bin/sh


caller=${2}
called=${1}

# search name in contact list
entry=`cat /var/flash/debug.cfg 2>/dev/null | fgrep "#contact=${caller}:" | sed "s/#contact=${caller}://"`
name=${entry%%\;*}
address=${entry#*\;}
address=${address%\;*}
street=${address%%\;*}
zip=${address##*\;}

# name not found?
if [ -z "${name}" ]
then
  # do reverse lookup at www.dasoertliche.de
  /var/tmp/invers.sh ${caller}
  name=`cat /var/tmp/name`
  # found name?
  if [ -n "${name}" ]
  then
    # add found contact to debug.cfg
    address=`cat /var/tmp/address`
    street=${address%%\;*}
    zip=${address##*\;}
    cat /var/flash/debug.cfg | sed -e "s/^#CONTACTSEND$/#contact=${caller}:${name};${address};#CONTACTSEND/g" | sed -e 's/#CONTACTSEND$/\
#CONTACTSEND/g' > /var/tmp/debug.cfg
  else
    # add anonymous for contact to debug.cfg
    cat /var/flash/debug.cfg | sed -e "s/^#CONTACTSEND$/#contact=${caller}:${caller};#CONTACTSEND/g" | sed -e 's/#CONTACTSEND$/\
#CONTACTSEND/g' > /var/tmp/debug.cfg
  fi
  cat /var/tmp/debug.cfg > /var/flash/debug.cfg
  rm /var/tmp/debug.cfg
fi

# name not found?
if [ -z "${name}" ]
then
  name=${caller}
fi
httpname=`echo "${name}" | sed -e '{s/ /%20/g;s/Ä/Ae/g;s/Ö/Oe/g;s/Ü/Ue/g;s/ä/ae/g;s/ö/oe/g;s/ü/ue/g;s/ß/ss/g;s/&/%26/g;}'`
httpstreet=`echo "${street}" | sed -e '{s/ /%20/g;s/Ä/Ae/g;s/Ö/Oe/g;s/Ü/Ue/g;s/ä/ae/g;s/ö/oe/g;s/ü/ue/g;s/ß/ss/g;s/&/%26/g;}'`
httpzip=`echo "${zip}" | sed -e '{s/ /%20/g;s/Ä/Ae/g;s/Ö/Oe/g;s/Ü/Ue/g;s/ä/ae/g;s/ö/oe/g;s/ü/ue/g;s/ß/ss/g;s/&/%26/g;}'`
echo "Name: ${name}"
echo "Strasse: ${street}"
echo "PLZ: ${zip}"

# search line in line list
theline=`cat /var/flash/debug.cfg 2>/dev/null | fgrep "#line=${called}:" | sed "s/#line=${called}://"`
theline=${theline%%\;*}

# line not found?
if [ -z "${theline}" ]
then
  theline=${called}
fi
httptheline=`echo "${theline}" | sed -e '{s/ /%20/g;s/Ä/Ae/g;s/Ö/Oe/g;s/Ü/Ue/g;s/ä/ae/g;s/ö/oe/g;s/ü/ue/g;s/ß/ss/g;s/&/%26/g;}'`

# Send information to all DHCP clients
while read x x IP x
do
  wget -O /dev/null "http://${IP}:23232/?caller=${caller}&called=${called}&name=${name}&line=${theline}" >/dev/null 2>&1 &
done < /var/flash/multid.leases

# send information to PCs
#wget -O /dev/null "http://192.168.69.1:23232/?caller=${caller}&called=${called}&name=${name}&line=${theline}" >/dev/null 2>&1 &

# send information to DBoxes -> TV screen



#!/bin/sh

####################################################################
#

      

# anrufliste auf die dbox
# write log
if [ "${name}" = "${caller}" ]
then
  name="unbekannt"
fi
date +"~BZeit:~S %d.%m.%Y, %H:%M:%S Uhr\\n~BAnrufer :~S ${name}\\n~BNummer:~S ${caller}\\n~BLeitung :~S ${theline}" > /var/tmp/anrufliste.tmp
echo "~Y----------------------------------------------------------------------~S" >> /var/tmp/anrufliste.tmp
sed  '100,$d' /var/tmp/anrufliste.txt >> /var/tmp/anrufliste.tmp
mv /var/tmp/anrufliste.tmp /var/tmp/anrufliste.txt



sleep 3
killall wget
ENDCALLMESSAGE

# make it executable
chmod +x /var/tmp/callmessage.sh

# write dummy WakeOnCall script
echo "#!/bin/sh" > /var/tmp/woc.sh
make it executable
chmod +x /var/tmp/woc.sh

# write parse_telefon script to file
cat > /var/tmp/parse_telefon.sh << 'ENDPARSETEL'
#!/bin/sh

trap "" SIGCHLD

prefix=
caller="$2"
called="$1"
called=${called%%#*}

# normalize caller
case ${caller} in
  0049*)
    caller=0${caller#*0049}
  ;;
  49????????*)
    caller=0${caller#*49}
  ;;
  [1-9]????????*)
    caller=0${caller}
  ;;
  [1-9]*)
    caller=${prefix}${caller}
  ;;
esac

# exec woc.sh
/var/tmp/woc.sh ${called} ${caller} &
# exec callmessage.sh
/var/tmp/callmessage.sh ${called} ${caller} &
ENDPARSETEL

# make it executable
chmod +x /var/tmp/parse_telefon.sh

# make FBF accessable from the internet (192.168.178.253)
sleep 10
ifconfig eth0:1 192.168.178.253 netmask 255.255.255.0 broadcast 192.168.178.255 up

# menue auf der dbox
# write cmd script to file
mkdir /var/tmp/cgi-bin
cp /usr/www/$OEM/cgi-bin/???* /var/tmp/cgi-bin
mount -o bind /var/tmp/cgi-bin /usr/www/$OEM/cgi-bin
cat > /var/tmp/cgi-bin/cmd << 'ENDCMD'
#!/bin/sh
echo -e "Content-type: text/html; charset=iso-8859-1\n\n<html><body>"
case $1
in
  uptime)
    run_clock;uptime;cat /var/config.def;;
  anrufe)
    echo -e "`cat /var/tmp/anrufliste.txt`";;
  reboot)
    echo -e "</body></html>";/sbin/reboot;;
  wstart)
    /etc/init.d/rc.net wlanstart;;
  wstop)
    /etc/init.d/rc.net wlanstop;;
  wreload)
    /etc/init.d/rc.net wlanreload;;
  wstatus)
    echo "`/sbin/ifconfig|grep wlan`";;
  vstart)
    /etc/init.d/rc.voip start;;
  vstop)
    /etc/init.d/rc.voip stop;;
  vreload)
    /etc/init.d/rc.voip reload;;
  vstatus)
    echo "`/bin/pidof voipd`";;
  dstart)
    /sbin/dsld -i -n;;
  dstop)
    /sbin/dsld -s;;
  dreload)
    /sbin/init.d/rc.net reload dsld;;
  dstatus)
     echo "`/bin/pidof dsld`";;
  *)
    echo "Unbekannter Parameter";;
esac
echo -e "</body></html>"

ENDCMD

# make it executable
chmod 777 /var/tmp/cgi-bin/???*

sleep 60
/var/media/ftp/cnmemory-Partition-0-1/anrufbeantworter/capircvd -b -d /var/media/ftp/cnmemory-Partition-0-1/anrufbeantworter/neue_anrufe -c /var/media/ftp/cnmemory-Partition-0-1/anrufbeantworter
 
Zuletzt bearbeitet:
Mhh.. ich bin mir da nicht sicher, ob irgendein Befehl (vorher) die debug.cfg zum Stillstand bringt. Hast du schonmal probiert, den AB als Erstes zu starten (also am Anfang der debug.cfg, inkl. sleep 60)?

Ansonsten ist alles soweit richtig.

EDIT:
zum Logging:
'./capircvd --help' gibt die Hilfe aus. Es gibt auch eine Option für Logging. Da musst du mal schauen.
 
Zuletzt bearbeitet:
das funktioniert auch nicht mit am anfang starten.

habe es bisher nur zum starten bekommen, wenn ich es manuell in telnet eintrage.
ich kann auch nicht, wenn die 7170 schon länger an ist, ein script starten in dem der start des anrufbeantworters drinnen ist.

wie gesagt es geht nur direkt im telnet mit dem string

das zeigt der capi log beim starten aus der debug
Code:
co=1 /var/log/capircvd
This is the child...
capircvd 0.2.42 started @ Fri Jan 26 11:59:19 2007

Trying to load /var/media/ftp/cnmemory-Partition-0-1/anrufbeantworter
/capircvd.conf
capircvd forked...

und das beim starten direkt aus telnet
Code:
co=1 /var/log/capircvd
This is the child...
capircvd 0.2.42 started @ Fri Jan 26 12:01:04 2007

Trying to load /var/media/ftp/cnmemory-Partition-0-1/anrufbeantworter/capircvd.conf
capircvd forked...
fileop	: configfile is '/var/media/ftp/cnmemory-Partition-0-1/anrufbeantworter/capircvd.conf'
'Exit on Error' is activated!
sinfo	: Using 49 as international prefix
sinfo	: Using 6403 as national prefix
fileop	: spool-directory:/var/media/ftp/cnmemory-Partition-0-1/anrufbeantworter/neue_anrufe
init	: CAPIApp() aufgerufen...
sinfo	: Anzahl Controller: 5

sinfo	:  Controller Nr.1
sinfo    : Anzahl B-Kanäle : 2
sinfo    :  Manufacturer    : AVM GmbH
sinfo    :   Serial#        : 0000000
sinfo    :   Version        : 2.0
sinfo    :   Firmwarever.   : 49.23


sinfo	:  Controller Nr.2
sinfo    : Anzahl B-Kanäle : 2
sinfo    :  Manufacturer    : AVM GmbH
sinfo    :   Serial#        : 0000000
sinfo    :   Version        : 2.0
sinfo    :   Firmwarever.   : 49.23


sinfo	:  Controller Nr.3
sinfo    : Anzahl B-Kanäle : 2
sinfo    :  Manufacturer    : AVM GmbH
sinfo    :   Serial#        : 0000000
sinfo    :   Version        : 2.0
sinfo    :   Firmwarever.   : 49.23


sinfo	:  Controller Nr.4
sinfo    : Anzahl B-Kanäle : 1
sinfo    :  Manufacturer    : AVM GmbH
sinfo    :   Serial#        : 0000000
sinfo    :   Version        : 2.0
sinfo    :   Firmwarever.   : 49.23


sinfo	:  Controller Nr.5
sinfo    : Anzahl B-Kanäle : 3
sinfo    :  Manufacturer    : AVM GmbH
sinfo    :   Serial#        : 0000000
sinfo    :   Version        : 2.0
sinfo    :   Firmwarever.   : 49.23

sinfo    : B-Kanäle gesamt: 10

fileop	: CAPI FileNr: 4
fileop	: ApplicationID=5

configuration for -  to controller1 -
capireq	: LISTEN_REQ fuer Controller 1
configuration for -  to controller2 -
capireq	: LISTEN_REQ fuer Controller 2
configuration for -  to controller3 -
capireq	: LISTEN_REQ fuer Controller 3
configuration for -  to controller4 -
capireq	: LISTEN_REQ fuer Controller 4
configuration for -  to controller5 -
capireq	: LISTEN_REQ fuer Controller 5
init	: CAPIApp() beendet...
init	: CAPIApp.Run() will be called
capiconf	: Received CAPI_CONF!
capiconf	: LISTEN_CONF
capiconf	: Received CAPI_CONF!
capiconf	: LISTEN_CONF
capiconf	: Received CAPI_CONF!
capiconf	: LISTEN_CONF
capiconf	: Received CAPI_CONF!
capiconf	: LISTEN_CONF
capiconf	: Received CAPI_CONF!
capiconf	: LISTEN_CONF
 
Zuletzt bearbeitet:
else
mailer -s "AB $timestamp $calling $called" -f "$mailer_from" -t "$mailer_to" -m "$mailer_server" -a "$mailer_username" -w "$mailer_password"
echo -e "To: $an\nSubject: Eingegangener Anruf!\n\nEingegangener Anruf von Rufnummer $calling auf $called, keine Aufnahme ! ...\n\n"
fi

Ich frag mich grad ob die Sachen nach "else" überhaupt je abgearbeitet werden? Ich glaub eher nicht, da während der Ansagetext läuft schon ein $file mit 0Byte angelegt wird. Wenn der Anrufer nun einfach wärend des Ansagetextes auflegt wird nie der Teil hinter "else" verarbeitet.
Hast das mal getestet?
 
hat denn sonst keiner solche probleme wie ich?
hilft euch mein log etwas?
 
bitte helft mir. bitte bitte bitte

ich bin schon am verzweifeln
 
@lolax:
Hab da leider keine Idee mehr. Irgendwie scheint er die capircvd.conf nicht zu finden und deshalb startet er nicht. Der Zeilenumbruch in der Logdatei ist auch merkwürdig:

lolax schrieb:
Code:
Trying to load /var/media/ftp/cnmemory-Partition-0-1/anrufbeantworter
/capircvd.conf

Da ich in meiner debug.cfg den USB-Stick remounte, würde ich das auch empfehlen. Hat den schönen Nebeneffekt, das der Name des Verzeichnisses immer der Selbe ist (bei mehreren USB-Sticks/-Platten).
 
könntest du mal deine debug zeigen, bzw wie du das mit dem usb stick machst, und dann capi startest?
 
capircvd so in der debug.cfg starten, wie du das bisher hast.
Mounten geht auch über debug.cfg. Siehe hier.

Da wo '# Skript ausführen' steht, sollte dann capircvd gestartet werden.

EDIT:
BTW, den Link den ich gerad gepostet habe, scheint ganz gut zu passen. Dort hatte nämlich jmd. das gleiche Problem, wie ich gerade sehe (Skript wird nicht gefunden).
 
Lenni2k1 schrieb:
Ich frag mich grad ob die Sachen nach "else" überhaupt je abgearbeitet werden? Ich glaub eher nicht, da während der Ansagetext läuft schon ein $file mit 0Byte angelegt wird.

Damit habe ich gerade etwas rumgespielt. Um den else Zweig zu aktivieren muss in capircvd.handler "test -e" durch "test -s" ersetzt werden. Leider kommt dann aber immernoch keine Mail bei Anruf ohne aufgenommener Nachricht, da der handler dann anscheinend nicht aufgerufen wird.
 
@bodega

ich habe das jetzt so wie in deinem link gemacht, doch leider klappt das nicht richtig. es wird jetzt nur ein ordner unter var/media/ftp/usb angelegt.

mein /var/media/ftp/cnmemory-Partition-0-1/ ist immer noch vorhanden, und nur hier kann ich drauf zugreifen und sehe meine daten auf dem stick
 
Das kann dann nur noch folgendes bedeuten:

1. Dein USB-Stick braucht länger als 60 Sek zum mounten (wobei er ja capircvd starten kann!).
2. Du hast irgendetwas falsch gemacht.

Klappt denn das manuelle mounten? Prüfe auch bitte, ob '/dev/scsi/host0/bus0/target0/lun0/part1' existiert (müsste eigentlich, da cnmemory-Partition-0-1 das andeutet)!!!

EDIT:
Ansonsten mein letzter Vorschlag (wobei das nur rumgestochert ist):
anstatt '/var/media/ftp/cnmemory-Partition-0-1/anrufbeantworter/' --> '/var/media/ftp/*/anrufbeantworter' verwenden beim Aufruf von capircvd (inkl. Parameter!).

Oder die capircvd.conf in ein anderes Vezeichnis kopieren vor dem Start (z.B. nach /var/tmp).

Ich glaube da hilft nur Try + Error. Ich hab da keine Idee mehr.
 
Zuletzt bearbeitet:
ich habe es jetzt so in der debug.cfg gemacht. und es geht nun. du hattest recht. das problem lag im laden der config. konnte man ja an dem zeilenumbruch in der log sehen.

Code:
#############################################################
# Startet den Anrufbeantworter
sleep 60
/var/media/ftp/cnmemory-Partition-0-1/ab/capircvd -D -I -b -c /var/media/ftp/cnmemory-Partition-0-1/ab -d /var/media/ftp/cnmemory-Partition-0-1/ab/neue_anrufe 


#############################################################
 
Hallo zusammen,

ich verfolge den Thread jetzt schon seit mehreren Monaten und bin sehr froh, das sich in den letzten Woche einiges zum Thema Anrufbeantworter getan hat.
Ich habe eine Fritz Box 7170 mit Originalimage und wollte den Anrufbaentworter installieren. Ist das ohne Mod möglich ?
Muss ich sonst noch etwas beachten, außer der Beschreibung aus dem Wiki ?

Gruß
Peter_Silie
 
peter_silie schrieb:
[...]Ich habe eine Fritz Box 7170 mit Originalimage und wollte den Anrufbaentworter installieren. Ist das ohne Mod möglich ? Muss ich sonst noch etwas beachten, außer der Beschreibung aus dem Wiki ?

Ja, bei mir hat das mit original Formware 29.04.29 ohne Probleme funktioniert. Wie in dem alten Beitrag beschrieben hatte ich die Anleitung im Wiki befolgt.

Lediglich das isdn2wav habe ich gestern noch ersetzt, nachdem bei der Umwandlung von Aufnahmen mit hoher Lautstärke Fehler aufgetreten sind, die die Aufnahmen schwer verständlich machen. Die Datei aus dem Beitrag von hannebambel löst das Problem. An dieser Stelle noch ein großes Danke!
 
Hi chameieon,

danke für die Info. Dann werde ich mich heute Abend mal ransetzten *freu*.

Gruß
Peter_Silie
 
bei mir läuft jetzt alles super, aber

die alaw dateien auf dem stick werden nicht gelöscht.

Noch eine Frage. Ist es auch möglich nur eine Ansage abspielen zu lassen, ohne das dann einen Nachricht aufgenommen wird?

Code:
format=$1
called=$2
calling=$3
file=$4
an=$5
remote=$6
mailformat=$7

sender=@SENDER@
cookie=`date +"%s"`

case "$format" in
voice)
 if test -e $file ; then
  basefile=`echo $file|sed -e "s/\.alaw//"`
  wavfile=$basefile.wav
  wavfile=$basefile.wav
  $isdn2wav "$file" "$wavfile"
  mv "$wavfile" /var/media/ftp/cnmemory-Partition-0-1/ab/neue_anrufe/verpasster_anruf.wav # Benennt das File das per mail kommen soll in verpasster_anruf.wav um.

  mailer -s "Eingegangener Anruf von Rufnummer $calling auf $called" -f "$mailer_from" -t "$mailer_to" -m "$mailer_server" -a "$mailer_username" -w "$mailer_password" -d /var/media/ftp/cnmemory-Partition-0-1/ab/neue_anrufe/verpasster_anruf.wav # und versendet diese Datei dann auch

  rm /var/media/ftp/cnmemory-Partition-0-1/ab/neue_anrufe/verpasster_anruf.wav 	#löscht das wave file nach erfolgter Aktion
  rm "$file"   		#löscht das alaw file nach erfolgter Aktion
 else
  
  echo -e "To: $an\nSubject: Eingegangener Anruf!\n\nEingegangener Anruf von Rufnummer $calling auf $called, keine Aufnahme ! ...\n\n"
 fi
;;		# voice 

exec)
 ;;		# exec
*)

 echo "Unknown call to capircvd.handler, see README and capircvd sourcecode!"

esac
 
Zuletzt bearbeitet:
Hallo Zusammmen,

ich habe auch eine 7170 mit 29.04.29 ohne mod. Ab wie hier beschrieben auch installiert und funktioniert auch soweit. Jetzt möchte ich die mails aber intern an einen mailserver (KEN) weiterleiten. Hier gibt es eine adresse [email protected] aber wenn ich das in der handler eingebe kommt die meldung user darf mail nicht ins inet versenden. lokaler server auch über telnet auf port 25 erreichbar. Jemand eine Idee??

gruß
thorsten67
 
keine einer idee?

Ist es auch möglich nur eine Ansage abspielen zu lassen, ohne das dann einen Nachricht aufgenommen wird?
 
@lolax: einfach die capircvd.conf lesen (=mit den Quellen von capircvd kommende Variante)
Code:
# mode voice		# call is a voicecall
			# valid options are:
# pin	integer		# the pin to identify the user
			# of this number, this pin is entered 
			# via DTMF while talking to the box...
# delay integer		# delay in seconds until call will be connected
# announcement string	# the filename of the announcement being played
			# relative to /var/spool/capircvd
# record string		# with "record" you can define when
			# recording should be started
			# [b]"off" means: no recording, call
			# will be dropped after announcement[/b]
			# "later" means: after the announcement
			# the recording will be started
Konkrete Beispiele hat es weiter unten in dieser Datei.

@Thorsten67: schonmal mit [email protected], d.h. mit der ip Adresse probiert?

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