.titleBar { margin-bottom: 5px!important; }

Aufnahme aller Gespräche + Ansage vor dem Gespräch

Dieses Thema im Forum "Asterisk Allgemein" wurde erstellt von neXon7, 28 Nov. 2006.

  1. neXon7

    neXon7 Neuer User

    Registriert seit:
    28 Nov. 2006
    Beiträge:
    45
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo Forum

    erstmal dickes Lob hier an die Mitglieder, ein wirklich gutes Forum hier, konnte mich hier schon sehr gut informieren! Hab ein kleines Projekt zu realisieren (Details siehe Signatur) und hab dank eurem Asterisk Kurs schon ein PC in meinem lokalen Netz auf die Beine gestellt mit dem ich schon erfolgreich intern und extern anrufen und angerufen werden kann. Jetzt gehts aber an die etwas komplexeren Sachen ran und da bräuchte ich eure Hilfe. Hab so weit wie möglich bereits die Suchfunktion benutzt!

    Mein erstes Problem wäre wie genau ich das hinbekomme, dass alle Gespräche (oder noch besser nur alle die von extern kommen bzw. nach extern gehen) automatisch aufgezeichnet werden. Es ist mir bewusst dass ich aus rechtlichen Gründen den Anrufer darauf aufmerksam machen muss, dies soll auch mit einer Ansage geschehen, welcher jeder Anrufer zu hören bekommen soll, bevor das Gespräch beginnt. Das wäre mein zweites Problem. Sollte doch machbar sein oder? :cool:

    Vielen Dank für jede Hilfe im voraus!
     
  2. divB

    divB Mitglied

    Registriert seit:
    14 Juli 2006
    Beiträge:
    324
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ich mache das mit einem Konstrukt à

    Code:
    ; Syntax
    ; MyDial(<number>,<timeout>,<flags>,<opt:numbertocall>)
    [macro-MyDial]
    exten => s,1,Set(MY_EXTEN=${MACRO_EXTEN})
    exten => s,2,GotoIf($["${ARG4}"!=""] ? 3 : 5)
    exten => s,3,Set(MY_EXTEN=${ARG4})
    exten => s,4,Goto(11)
    exten => s,5,GotoIf($["${MACRO_EXTEN}" = "868593"] ? 6 : 8)
    exten => s,6,Set(CALLFILENAME=IN-${TIMESTAMP}-personal-${CALLERID(number)}-${CALLERID(name)})
    exten => s,7,Goto(12)
    exten => s,8,GotoIf($["${MACRO_EXTEN}" = "s"] ? 9 : 11)
    exten => s,9,Set(CALLFILENAME=IN-${TIMESTAMP}-${CALLERID(number)}-${CALLERID(name)})
    exten => s,10,Goto(12)
    exten => s,11,Set(CALLFILENAME=OUT-${TIMESTAMP}-${MY_EXTEN})
    exten => s,12,Monitor(wav,${CALLFILENAME},mb)
    exten => s,13,Dial(${ARG1},${ARG2},${ARG3})
    exten => s,114,Goto(${MACRO_CONTEXT},${MACRO_EXTEN},$[${MACRO_PRIORITY}+101])
    
    Also kurz gesagt: Vor dem Call-Befehl (der der dann bridged) Monitor ausführen!
     
  3. Stefan8

    Stefan8 Mitglied

    Registriert seit:
    6 Okt. 2005
    Beiträge:
    207
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ich habe das leider nicht begriffen :roll:. Kannst Du mal einen Aufruf für das Makro beschreiben?
     
  4. divB

    divB Mitglied

    Registriert seit:
    14 Juli 2006
    Beiträge:
    324
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Anrufen zu extern:

    Code:
    exten => s,1,Macro(MyDial,${TRUNK}/04565564/bo,,TW,04565564)
    
    Eingehende Anrufe:

    Code:
    [...]
    exten => s,5,Macro(MyDial,${RECIPIENT},${DELAY_DFLT},rtw)
    [...]
    

    Das ganze ist halt eher ein Hack und nicht so elegant aber es geht gut. Die ganzen IF's sind da weil ich zwei MSNs habe und die Gespräche in zwei Kategorien aufteilen will: personal und nicht personal.
    Zusätzlich gibts den Präfix IN für eingehende und OUT für ausgehende Gespräche.


    Mit dem Makro solltest du aber genügend Infos haben um dir eine eigene Funktion für deine Bedürfnisse zusammenschneiden zu können.
     
  5. Stefan8

    Stefan8 Mitglied

    Registriert seit:
    6 Okt. 2005
    Beiträge:
    207
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Okay, etwas klarer ist es schon. Was machen die Parameter genau?
    Danke und Gruß
    Stefan
     
  6. neXon7

    neXon7 Neuer User

    Registriert seit:
    28 Nov. 2006
    Beiträge:
    45
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Vielen Dank für die Hilfe! Klappt alles wunderbar. Auch diese Ansage davor mit PlayBack() hab ich realisiert bekommen. Hätte nicht gedacht das es so einfach ist :cool: