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

Gesprächmonitor mit Mail zustellung der Aufzeichnung

Dieses Thema im Forum "Asterisk Skripte" wurde erstellt von Besserso, 30 Aug. 2005.

  1. Besserso

    Besserso Neuer User

    Registriert seit:
    16 Mai 2005
    Beiträge:
    11
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo,

    folgende Funktion würde ich gerne Realisieren.
    Es soll eine Ziffer vor der Rufnummer gewählt werden damit Asterisk das Gespräch aufzeichnet, nach dem Gespräch soll diese wav Datei dann per Mail an die entsprechende Person geschickt werden.
    Ich bin soweit das Asterisk automatisch das Gespräch aufzeichnet, allerdings komme ich nicht ganz mit der Mailzustellung zurecht, einmal weil bei mir sendEMail immer behauptet das die Datei nicht existiert und weil Asterisk nur dann weiter im Script geht wenn der Anrufer auflegt, legt die gegenstelle schneller auf passiert nix weiter....
    Da ich noch kein Asterisk Guru bin sieht vielleicht meine vorgehensweise etwas umständlich aus...

    Code:
    [to-isdn]
    exten => _99.,1,SetGlobalVar(nu=${EXTEN})
    exten => _99.,2,goto(test,1,1)
    exten => _XXXX.,1,Dial(CAPI/967:b0${EXTEN})
    exten => _33XX,1,Dial(CAPI/967:b${EXTEN})
    exten => _96XXX,1,MeetMe(${EXTEN:2},dMq)
    exten => _XXX,1,goto(intern,${EXTEN},1)
    exten => _XX,1,goto(intern,${EXTEN},1)
    
    [test]
    exten => 1,1,MYSQL(Connect connid localhost asterisk asterisk asterisk)
    exten => 1,2,MYSQL(Query resultid ${connid} SELECT\ email\ from\ voicemail_users\ where\ mailbox=${CALLERIDNUM})
    exten => 1,3,MYSQL(Fetch fetchid ${resultid} em)
    exten => 1,4,MYSQL(Clear ${resultid})
    exten => 1,5,MYSQL(Disconnect ${connid})
    exten => 1,6,SetGlobalVar(CALLFILENAME=${TIMESTAMP})
    exten => 1,7,Monitor(wav,${CALLFILENAME},m)
    exten => 1,8,SetGlobalVar(rec=1)
    exten => 1,9,SetGlobalVar(email=${em})
    exten => 1,10,goto(to-isdn,${nu:2},1)
    
    [rec]
    exten => 1,1,GotoIf($["${rec}" = "1"]?2:4)
    exten => 1,2,System(sendEmail -f [email]asterisk@asem.de[/email] -t ${email} -u Ihr Telefongespräch -m Jo -a /var/spool/asterisk/monitor/${CALLFILENAME}.wav)
    exten => 1,3,SetGlobalVar(rec=0)
    exten => 1,4,Hangup
    
    [intern]
    exten => 89,1,GotoIf($["${rec}" = "1"]?5:2)
    exten => 89,2,Dial(SIP/89,${wt})
    exten => 89,3,Voicemail(89)
    exten => 89,4,Hangup
    exten => 89,5,Dial(SIP/89,,g:)
    exten => 89,6,goto(rec,1,1)
    
    
    Zum testen benutze ich zurzeit nur eine Interne Nr.

    Gruss
    Frank
     
  2. rannseier

    rannseier Aktives Mitglied

    Registriert seit:
    5 Mai 2004
    Beiträge:
    986
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #2 rannseier, 6 Mai 2010
    Zuletzt bearbeitet: 6 Mai 2010
    Arbeite im intern-Context mit der h-Extension.

    Code:
    exten => h,1,NoOP(Ankommend aufgelegt)
    exten => h,2,GotoIf($["${rec}" = "1"]?3:8)
    exten => h,3,System(/usr/bin/mutt -s "Aufgezeichnetes Gespräch von ${CALLERID(num)} an ${ziel}" astermonitor@xxxx.de -a \"/var/spool/asterisk/monitor/${CALLFILENAME}-in.wav\" <.)
    exten => h,4,System('/usr/bin/mutt -s "Aufgezeichnetes Gespräch von ${CALLERID(num)} an ${ziel}" astermonitor@xxxx.de -a \"/var/spool/asterisk/monitor/${CALLFILENAME}-out.wav\" <.)
    exten => h,5,System(/bin/rm \"/var/spool/asterisk/monitor/${CALLFILENAME}-out.wav\")
    exten => h,6,System(/bin/rm \"/var/spool/asterisk/monitor/${CALLFILENAME}-in.wav\")
    exten => h,7,SetGlobalVar(rec=0)
    exten => h,8,HangUp()
    
    
    So tuts für mich.