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

Benutzer welcher Anruf angenommen hat in CDR schreiben

Dieses Thema im Forum "Asterisk Allgemein" wurde erstellt von EazyAdm, 20 Feb. 2012.

  1. EazyAdm

    EazyAdm Neuer User

    Registriert seit:
    1 Juni 2005
    Beiträge:
    109
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo,

    wir haben bei uns Rufgruppen welche über LOCAL Rules und Macros gehen. Wenn nun ein Gespräch angenommen wird kann ich mit der CDR nicht nachvollziehen an welchem Telefon das Gespräch angenommen wurde.

    Gibt es eine möglichkeit diese Info z.B. in das userfield zu schreiben? Meine bisherige Suche hat leider nichts ergeben.

    extensions.conf Auszug:
    Code:
    [from-extern]
    exten => _6542[5,6]X,1,Set(CALLERID(NUM)=0${CALLERID(NUM)})
    exten => _6542[5,6]X,n,MixMonitor(${STRFTIME(${EPOCH},,%Y-%m-%d_%H:%M)}_${CALLERID(NUM)}_${EXTEN}.wav)
    exten => _6542[5,6]X,n,Dial(SIP/${EXTEN:4}&LOCAL/RULE-ms-Group-Alle,20,o)
    exten => _6542[5,6]X,n,Hangup
    
    [macro-ms-Alle]
    exten => s,1,Dial(SIP/252&SIP/254&SIP/260&SIP/262&SIP/264&SIP/266&SIP/268&LOCAL/RULE-ms-Voicemail,15,tTi)
    
    [default]
    exten => _RULE-ms-Voicemail,1,Wait(7)
    exten => _RULE-ms-Voicemail,n,agi(eazyvoice/eazyvoice.php,${CALLERID(NUM):0})
    exten => _RULE-ms-Voicemail,n,hangup
    
    DANKE

    bye
    eazy
     
  2. rentier-s

    rentier-s Guest

    Hab's nicht ausprobiert, aber das könnte funktionieren über eine Subroutine im Dial (Flag U) und dort das CDR Userfield anhand der Informationen aus CHANNEL(peername) beschreiben. :noidea:

    Ich bin mir einigermaßen sicher, dass wir das Thema schon mal hatten, finde es aber grad auch nicht.
     
  3. EazyAdm

    EazyAdm Neuer User

    Registriert seit:
    1 Juni 2005
    Beiträge:
    109
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Danke rentier ...
    das hat sich nun ein wenig überschnitten. Habs nun so gebaut, ich weis nicht ob das auch schöner geht, aber so funktioniert es auf jeden Fall.

    Evtl. gibt es ja noch Tips das schöner zu bekommen.

    Code:
    [intern-default]
    exten => _XXX,hint,SIP/${EXTEN}
    
    exten => 123,1,Answer
    exten => 123,2,Playback(demo-instruct)
    exten => 123,3,Hangup
    
    exten => 299,1,Dial(SIP/252&SIP/254&SIP/256&SIP/258&SIP/260&SIP/262&SIP/264&SIP/266&SIP/268)
    exten => 299,n,hangup()
    
    exten => _XXX,1,Dial(SIP/${EXTEN},60,M(log,${CALLERID(NUM)}))
    exten => _XXX,n,Hangup
    
    exten => _XXX.,1,Dial(SIP/${EXTEN}@bri,60,M(log,${CALLERID(NUM)}))
    exten => _XXX.,n,Hangup
    
    
    [from-extern]
    exten => _6542[5,6]X,1,Set(CALLERID(NUM)=${CALLERID(NUM)})
    exten => _6542[5,6]X,n,MixMonitor(${STRFTIME(${EPOCH},,%Y-%m-%d_%H:%M)}_${CALLERID(NUM)}_${EXTEN}.wav)
    exten => _6542[5,6]X,n,Dial(SIP/${EXTEN:4}&LOCAL/RULE-ms-Group-Alle,20,oM(log))
    exten => _6542[5,6]X,n,Hangup
    
    [macro-ms-Alle]
    exten => s,1,Dial(SIP/252&SIP/254&SIP/260&SIP/262&SIP/264&SIP/266&SIP/268&LOCAL/RULE-ms-Voicemail,20,tTiM(log))
    
    [macro-log]
    exten => s,1,GotoIf($["${ARG1}" != ""]?arg1)
    exten => s,n,GotoIf($[${LEN(${DIALEDPEERNUMBER})} = 3]?peernum)
    exten => s,n,GotoIf($["${CALLERID(num)}" != ""]?callerid)
    exten => s,n(arg1),Set(CDR(userfield)=${ARG1})
    exten => s,n(arg1),Goto(end)
    exten => s,n(peernum),Set(CDR(userfield)=${DIALEDPEERNUMBER})
    exten => s,n(peernum),Goto(end)
    exten => s,n(callerid),Set(CDR(userfield)=${CALLERID(num)})
    exten => s,n(callerid),Goto(end)
    exten => s,n(end),Noop(mapped)
    
    Vielen Dank für die Idee funktioniert seit 9 Uhr.

    Danke

    bye
    eazy