Call recording in Asterisk 15

Hi!
Could you help me to point out a decent manual how to record all calls which go through asterisk.
Do I need additional software for that?

sure. I have find my notes. mmm? what is your problem?

What’s your email? contact for you!!!

Use Mixmonitor() app description and samples are on the Asterisk wiki

I am almost done with incoming calls :slight_smile:

[from-callcentric]
exten => 17778969956,1,Set(fname=${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-${RAND(100,999)}-${CALLERID(number)})
exten => 17778969956,2,Set(monopt=nice -n 19 /usr/bin/lame -b 16 --silent "/var/spool/asterisk/monitor/${fname}.wav" "/var/spool/asterisk/monitor/${fname}.mp3" && rm -f "/var/spool/asterisk/monitor/${fname}.wav")
exten => 17778969956,3,MixMonitor(${fname}.wav,b,${monopt})
same => n,GotoIf($["${DEVICE_STATE(PJSIP/100)}" = "NOT_INUSE"]?dial100:check101)
same => n(dial100),Dial(PJSIP/100)
same => n(check101),GotoIf($["${DEVICE_STATE(PJSIP/101)}" = "NOT_INUSE"]?dial101:checkcell)
same => n(dial101),Dial(PJSIP/101)
same => n(checkcell),Dial(Local/17771234567@to-callcentric,25,Ttr)

[to-callcentric]
exten => _X.,1,Dial(PJSIP/${EXTEN}@callcentric)

I wanted to use milliseconds in order to create a unique file name for each call, but STRFTIME wouldn’t work.

it says

STRFTIME supports all of the same formats as the underlying C function
strftime(3). It also supports the following format: ‘%[n]q’ - fractions of a
second, with leading zeros.
Example: ‘%3q’ will give milliseconds and ‘%1q’ will give tenths of a second.
The default is set at milliseconds (n=3). The common case is to use it in
combination with %S, as in ‘%S.%3q’.

However, when I use %3q or %q, I get “000” instead of milliseconds.

I believe there is a UNIQUEID variable you can use to always get a unique file name. I forget if it’s a channel or CDR property and I’m on mobile so I can’t reference the wiki right now sorry.