Anrufbeantworter auf der FB installiert

Also für meine Begriffe ist das hier im Sourcecode die Stelle wo der Name vergeben wird:

File cconn.cpp

Code:
char dummy[1024];

 if( (*c).find("filename")!=(*c).end() )
  sprintf(dummy,(*c)["filename"].c_str(),ii.c_str(),oo.c_str(),atol((*c)["usagecount"].c_str()),tv.tv_sec,tv.tv_usec,t_local->tm_year+1900,t_local->tm_mon+1,t_local->tm_mday,t_local->tm_hour,t_local->tm_min,t_local->tm_sec);
 else
  sprintf(dummy,"%s-%06d-%s--%d-%d.alaw",ii.c_str(),atol((*c)["usagecount"].c_str()),oo.c_str(),tv.tv_sec,tv.tv_usec);

 ofile=datadir+"/"+dummy;
 }

Lenni
 
ich habe den fehler anscheinend gefunden

ich habe mal im telnet geschaut was der mailer macht.
dieser versendet die .wav aber es kommt bei mir (getestet mit 1und1 und gmx) eine .dat an.

ich habe es jetzt mal per hand mit dem mailer gesendet und dabei die wav. vorher in test.wav umbenannt.
angekommen ist dann auch ne test.wav

vielleicht kann der mailer oder manche provider nicht mit so langen namen umgehen. daher sollte die aufnahme einen kurzen dateinamen haben
 
###edit: telnet zeigt an, das die datei.wav versendet wird aber ankommen tut eine .dat

Also bei mir über Kmail kommt die Datei ohne Endung an, ein Speichern unter was auch immer, die Maus im KDE draufgehalten und schon wird abgepielt.

Mal was anderes:

Was ich aber grad auf ftp://ftp.berlios.de/pub/capircvd/contrib sehe, ein capircvd.handler der aus dem Wav nen mp3 macht:

Code:
  mp3)
    basefile=`echo $file|sed -e "s/\.alaw//"`
    mp3file=$basefile.mp3
    wavfile=$basefile.wav
    newwavfile=$basefile.new.wav
    isdn2wav $file $wavfile
    sox $wavfile  -r 32000 $newwavfile
    /home/fax/bin/BladeEnc -quiet $newwavfile $mp3file

Allerdings mit bladeenc von:

http://bladeenc.mp3.no/

Keine Ahnung wie man dies für das Fritz CPUchen kompiliert, ich kenne die Compiler Optionen dafür nicht. Es könnte auch sein, das die Fritz damit überfordert wäre, bzw. müßte die Cpu Belastung wenn Bladeenc greift auf einem bestimmten Niveau gehalten werden und nicht auf 100% Schnellen.

Lenni
 
das zeigt telnet beim automatischen versenden

Code:
2007-01-02 15:55:55 mailer: avmssl_init: done
Jan  2 15:55:55 mailer[1508]: avmssl_init: done
2007-01-02 15:55:55 mailer: startup (Nov 17 2006 11:45:39) Mail: Subject: Anruf
von Rufnummer xxx auf xxx, From: [email protected]
, To: [email protected], Attachment: /var/media/ftp/cnmemory-Partitio
n-0-1/anrufbeantworter/neue_anrufe/49xxx902-000002-49xxx901--116774972
2-708285.wav
Jan  2 15:55:55 mailer[1508]: startup (Nov 17 2006 11:45:39) Mail: Subject: Anru
f von Rufnummer 49xxx auf 49x, From: [email protected], To: [email protected], Attachment: /var/media/ftp/cnmemory-Partit
ion-0-1/anrufbeantworter/neue_anrufe/49xxxx690902-000002-49xxxx901--1167749
722-708285.wav
2007-01-02 15:55:55 mailer: dns: smtp.1und1.de: query
Jan  2 15:55:55 mailer[1508]: dns: smtp.1und1.de: query
2007-01-02 15:55:55 mailer: dns: smtp.1und1.de: 212.227.15.167 ttl=202 from 127.
0.0.1.
Jan  2 15:55:55 mailer[1508]: dns: smtp.1und1.de: 212.227.15.167 ttl=202 from 12
7.0.0.1.
2007-01-02 15:56:01 mailer: Testmail sent
Jan  2 15:56:01 mailer[1508]: Testmail sent
2007-01-02 15:56:01 mailer: mailer finished with 0, Mailer-Response=250 Message
0ML25U-1H1l3U0hQn-0001Vy accepted by mrelayeu5.kundenserver.de
Jan  2 15:56:01 mailer[1508]: mailer finished with 0, Mailer-Response=250 Messag
e 0ML25U-1H1l3U0hQn-0001Vy accepted by mrelayeu5.kundenserver.de
2007-01-02 15:56:01 mailer: cons_restore: tcsetattr(0) failed - Input/output err
or (5)
Jan  2 15:56:01 mailer[1508]: cons_restore: tcsetattr(0) failed - Input/output e
rror (5)


wenn ich die email im 1und1 webmailer öffne, dann hat die datei überhaupt keine endung.
am einfachsten wäre wenn die datei einfach vor dem senden in aufnahme.wav umbenannt wird, und dann versendet, dann sollten keine mehr probleme haben
 
Zuletzt bearbeitet:
hallo!

den betreff der nachricht kannst du beliebig anpassen...einfach im handler den string:
Code:
mailer -s "AB - $basefile" -f "$mailer_from" -t "$mailer_to" -m "$mailer_server" -a "$mailer_username" -w "$mailer_password" -d "$wavfile"
suchen und Alles in den Hochkommas "AB - $basefile" ist der Betreff...einfach nach belibeen anpassen...ich habe mir "Ein Anruf auf dem Anrufbeantworter" draus gemacht.
das mit dem .dat file ist interessant...bodeag und ich sind grad am überlegen ob das mit der alten busybox zutun haben könnte...
hast du nen ds-mod drauf??
 
ich habe keinen ds-mod drauf. bei mir läuft nur die debug.cfg.

das mit dem betreff ist ja klar, habe ich auch schon geändert.

dies müsstet ihr mal testen
wenn ich die email im 1und1 webmailer öffne, dann hat die datei überhaupt keine endung.
am einfachsten wäre wenn die datei einfach vor dem senden in aufnahme.wav umbenannt wird, und dann versendet, dann sollten keine mehr probleme haben
 
Hi. also bei 1und1 werden nur 50 Zeichen als Anhangname verarbeitet, der Rest wird abgeschnitten!!!

Hab die capircvd.handler entsprechend angepasst und zwar so:

Code:
  wavfile=$basefile.wav
  $isdn2wav "$file" "$wavfile"
  mv "$wavfile" voicemail.wav <---hier wird umbenannt
  mailer -s "AB - $basefile" -f "$mailer_from" -t "$mailer_to" -m "$mailer_server" -a "$mailer_username" -w "$mailer_password" -d voicemail.wav <----- hier ändern

  rm voicemail.wav <----- hier ändern
  rm "$file"

Somit heißt der Anhang voicemail und den Betreff wie schon gesagt entsprechend anpassen. Wegen Zeit und Datum sieht man ja anhand des Mail Eingangs.

Lenni
 
da stimmt irgendwas nicht. ich bekomme zwar eine voicemail.wav, doch diese ist immer 184b gross und kann nicht abgespielt werden.

habe zu test
rm voicemail.wav weggelassen und man sieht das diese datei nicht erstellt wird .dafür ist die andere datei mit dem langen namen.wav auf dem usb stick
 
ja ich bekomme die per mail. und ja ich habe die mailerzeile auch geändert.
anscheinend wird aber auf dem usb stick überhaupt keine voicemail.wav erzeugt, denn sonst wäre sie ja noch da, da nix gelöscht wird
 
Nehme alles zurück...habe im log gesehen, das es ihn stört das die datei schon da ist...
also dringlichst rm dateiname machne...oder nen anderen pfad nehmen...dann geht es einwandfrei...
habe mein zipfile und den wiki eintrag schon disbezüglich aktualisiert...
 
Zuletzt bearbeitet:
danke das wars.

könnte man noch eine abfrage rein bauen

wenn die angerufene nummer = 1234
dann soll in der email anruf für BÜRO stehen?

oder vielleicht könnte man das ganze ja mit der callmessage.sh verknüpfen
 
Hallo, hab nochmal an der capircvd.handler gefrickelt. Nun wird die aktuelle Zeit und das Datum für die Vergabe der Voicemail herangezogen.
Auch der Betreff sieht anders aus "FRITZ!BoxAB: Anruf in Abwesenheit von anrufender Nummer". Allerdings weiß ich nicht wie man das mit sed richtig filtert, die 41 in der Klammer sind die Anzahl an Zeichen die bis zu anrufenden Nummer weggefiltert werden, inkl relatativen Path. ggf. anpassen oder weiterentwickeln.

Code:
voice)
 if test -e $file ; then
  basefile=`echo $file|sed -e "s/\.alaw//"`
  subject=`echo $basefile|sed '-e s/--.*$//' -e 's/^.\{41\}//'`
  wavfile=$basefile.wav
  $isdn2wav "$file" "$wavfile"
  date=`date '+Voicemail_um_%H:%M_vom_%d.%m.%Y'`
  newname=$date.wav
  mv "$wavfile" "$newname"
  
  mailer -s "FRITZ!BoxAB: Anruf in Abwesenheit von $subject" -f "$mailer_from" -t "$mailer_to" -m "$mailer_server" -a "$mailer_username" -w "$mailer_password" -d "$newname"

Lenni
 
oder in der .conf den Dateinamen ändern:

Code:
# filename string	# describes how filenames generated look like:
                        #       Parameters:
                        #        %1$s   calledparty
                        #        %2$s   callingparty
                        #        %3$d   auto_increment
                        #        %4$d   seconds since 1970-01-01 
                        #        %5$d   microseconds to %4
                        #        %6$d   year
                        #        %7$d   month
                        #        %8$d   day
                        #        %9$d   hour
                        #        %10$d  minute
                        #        %11$d  second
# example: filename     from-%2$s-to-%1$s-%3$06d_%6$04d-%7$02d-%8$02d_%9$02d-%10$02d-%11$02d.alaw
# results in            from-495459801045-to-495459801046-000041_2000-06-14_19-48-52.alaw

Danke für den Tip mit dem Dateinamen ;)
 
Hallo, ja so geht´s natürlich auch, nur wird mir Tag und Monat als 0 ausgegeben und die Uhrzeit als Dezimalzahl. Ich bleib bei meiner Variante, funzt auch ganz gut.

Nun bleibt aber ein ganz gravierendes Problem offen. Ich habe einige einkommende Rufnummer gesperrt, trotzdem geht da jetzt der AB ran, wie kann man das umschiffen?

Mal was anderes:
@bodega
Hast du diesen Patch von www.spblinux.de/fbox/capircvd_fbox.diff in deinem Comilat drinne? Ich glaube eher nicht, weil dieser fügt ja den Beep im Anschluß zur Ansage zu. Wie macht ihr das mit dem Beep? Bisher hab ich den immer mit reineditiert, was aber letztendlich sehr nervig ist wenn man mal den Text ändert.

Lenni
 
Zuletzt bearbeitet:
Keiner hier heut:p

@Darkyputz und Bodega

Hier ist noch ein Problem und zwar kann man ja verschiedene Emailadressen für die MSNs konfigurieren, Bsp.:

Code:
# MSN2 (Landesvorwahl + Ortsvorwahl + Rufnummer)
=49***********
mode		voice
delay		20
announcement	ansage*******.la	
record		later
recipient      		********@*********.de

Leider wird der Empfänger (recipient) in der capircvd.conf ignoriert, es wird immer die hinterlegte Adresse der capircvd.handler genommem. Ich weiß das es mit der Variante von Seite 4 in dem Thread hier mal funktionierte, dort waren aber die Maildaten in der capircvd.handler hinterlegt. Einer ne Idee wo es klemmt, klappt das vielleicht bei euch und ich hab nen Denkfehler?

Lenni
 
was hast du denn bei default als recipient?

und keine angst...wir leben noch...*GRINS*
kämpfe grad an anderer front um mein yac mit dem ab zu syncen...habe sonst unmotivierte anrufe per yac, wobei nur der ab dran geht...

habe das mit den unterschiedlichen e-mails allerdings noch nicht probiert...
lese aber gern mit und unterstütze wo ich kann...
 
was hast du denn bei default als recipient?

Mhm, da steht nur root drin!

Hab mir nochmal die capircvd.conf aus dem Quellcode angesehen, dort kann man eigentlich nen extra handler File für jede MSN angeben.

Code:
# handler string	# the handler for received files
			# use capircvd.handler.
			# you can use own programs if yuo wish
			# for commandlineoptions to the handler
			# see sourcecode of capircvd.handler

Hab ich probiert, entsprechende handler files angelegt und die mailadresse darin jeweils abgeändert. Ausführbar gemacht und siehe da es klappt wieder.

was anderes:
Was ist wenn gleichzeitig auf beiden Kanälen ein Anruf eingeht und gleichzeitig der AB rangeht? Laut den handlerscript wird immer nur auf ein *.alaw file geprüft und endsprechend nach wav gewandelt. Was ist nu wenn zwei *.alaw files existieren?

Lenni
 
Fragen über Fragen

1. Was ist wenn gleichzeitig auf beiden Kanälen ein Anruf eingeht und gleichzeitig der AB rangeht? Laut den handlerscript wird immer nur auf ein *.alaw file geprüft und endsprechend nach wav gewandelt. Was ist nu wenn zwei *.alaw files existieren?

2. Wozu dient die PIN Vergabe in der capircvd.conf? Fernabfrage?

3. @bodega
Hast du diesen Patch von www.spblinux.de/fbox/capircvd_fbox.diff in deinem Comilat drinne? Ich glaube eher nicht, weil dieser fügt ja den Beep im Anschluß zur Ansage zu und wenn mich nicht alles täuscht begrenzt der Patch auch die Aufnahmedauer wenn der Speicher knapp wird, sprich ohne USB Stick fährt. Wie macht ihr das mit dem Beep? Bisher hab ich den immer mit reineditiert, was aber letztendlich sehr nervig ist wenn man mal den Text ändert.

4. Suche noch nach einer Möglichkeit um Voicemails wo der Anrufende keinen Text spricht, also gleich wieder auflegt, anhand der Dateigröße solche Nachrichten gleich nach /dev/null zuschieben. Mit dem Befehl du -sk * bekomme ich nur eine Ausgabe das alle Datein 0Bytes wären. Ich stell mir das so vor und zwar vor dem Wandeln nach wav per kbytes=`echo $basefile| du -sk ' feststellen wie groß die *.alaw ist und mit einem festen Wert zb von 3 Sekunden vergleichen. Wenn die *.alaw kleiner als 3 Sekunden(zB 100Kbyte), dann löschen, ansonsten weitermachen.

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