In-Call Call Recording (How to use?)

I’m trying to get call recording to work (feture code I belive is *1), I’ve tried pressing *1 during a call but I don’t know whether is actuall recorded or not. Where would I look to find and playback the recording? (asuming it did work)

I should add that all extentions are set to record incomming/outgoing “On Demand”

it should work and does.

There can be one of several reasons why it’s not working.
First check that you enabled the feature, to do that go into the feature codes and check that it is defined and enabled. If it is disabled it will not work.

Second, the issue might be that your local phone dialplan does not allow for that code sequence to be transmitted thus used. So try and adjust the phones internal dialplan to allow it and/or go into the general features and change the code to something it will allow.

Before I go attempting to fix it, how do I check whether it worked or not? Where do I go to playback the recording if it did work?

BTW the feature code is set to enabled, but as for the local phone dialplan, I don’t know how to check that.

There are couple of ways to view the recordings:

1 - By default, recordings are stored in /var/spool/asterisk/monitor

2 - You can view the recordings in Voicemail & Recordings, the User Portal. Asterisk may not be compiled to support this option, the instructions for using Unique ID’s can be found here: http://www.voip-info.org/wiki-Asterisk+cdr+mysql

Scott

Okay thanks. there’s nothing in /var/spool/asterisk/monitor

How do I find out if there’s a problem with the local phone dialplan?

BTW I don’t see anything on the asterisk -r output when i hit *1

In FreePBX,

1 - Ensure Feature Code “In-Call Asterisk Toggle Call Recording” is enabled and set to *1.

2 - On the General Settings page, add “wW” to “Asterisk Dial command options” making its value “trwW”. Also, add “wW” to “Asterisk Outbound Dial command options.” Hover over the labels for a full description of these options.

3 - On the extension, make sure “Record Incoming” and “Record Outgoing” are set to “On Demand”.

Attempt to record the call. If that does not work, set the extension to always record the phone call and make a test call. Check the location /var/spool/asterisk/monitor for wav files.

With the correct settings and setup you should see lines like this in cli:
[I]
– Executing [[email protected]:8] Macro(“Zap/1-1”, “record-enable|2001|IN”) in new stack
– Executing [[email protected]:1] GotoIf(“Zap/1-1”, “1?check”) in new stack
– Goto (macro-record-enable,s,4)
– Executing [[email protected]:4] AGI(“Zap/1-1”, “recordingcheck|20081007-112701|1223396821.334”) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/recordingcheck
recordingcheck|20081007-112701|1223396821.334: Inbound recording not enabled
– AGI Script recordingcheck completed, returning 0
[/I]


Let me know how everything works.
Scott

Thanks, I’ve tried that now. When set to record calls always, it works but when on demand, nothing happens when I do *1, it doesn’t even add anything on the CLI. My dial command options were set to “tr”, now it’s “trwW”. Here is the output on the CLI for the call tried.

[code][email protected]:~ $ asterisk -r
Asterisk 1.4.21.2, Copyright © 1999 - 2008 Digium, Inc. and others.
Created by Mark Spencer [email protected]
Asterisk comes with ABSOLUTELY NO WARRANTY; type ‘core show warranty’ for detail
s.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type ‘core show license’ for details.

Connected to Asterisk 1.4.21.2 currently running on pbx (pid = 2752)
Verbosity is at least 3
– Executing [9{CALLED#REMOVED}@from-internal:1] Macro(“SIP/203-b771edf8”, “user-
callerid|SKIPTTL|”) in new stack
– Executing [[email protected]:1] Set(“SIP/203-b771edf8”, “AMPUSER=203”
) in new stack
– Executing [[email protected]:2] GotoIf(“SIP/203-b771edf8”, “0?report”
) in new stack
– Executing [[email protected]:3] ExecIf(“SIP/203-b771edf8”, “1|Set|REA
LCALLERIDNUM=203”) in new stack
– Executing [[email protected]:4] Set(“SIP/203-b771edf8”, “AMPUSER=203”
) in new stack
– Executing [[email protected]:5] Set(“SIP/203-b771edf8”, “AMPUSERCIDNA
ME={SIPCALLERNAMEREMOVED}”) in new stack
– Executing [[email protected]:6] GotoIf(“SIP/203-b771edf8”, “0?report”
) in new stack
– Executing [[email protected]:7] Set;40m(“SIP/203-b771edf8”, “AMPUSERC
ID=203”) in new stack
– Executing [[email protected]:8] Set(“SIP/203-b771edf8”, “CALLERID(all
)=”{SIPCALLERNAMEREMOVED}" <203>") in new stack
– Executing [[email protected]:9] Set(“SIP/203-b771edf8”, “REALCALLERID
NUM=203”) in new stack
– Executing [[email protected]:10] ExecIf(“mSIP/203-b771edf8”, “1|Set|C
HANNEL(language)=uk”) in new stack
– Executing [[email protected]:11] GotoIf(“SIP/203-b771edf8”, “1?contin
ue”) in new stack
– Goto (macro-user-callerid,s,20)
– Executing [[email protected]:20] NoOp(“SIP/203-b771edf8”, “Using Call
erID “{SIPCALLERNAMEREMOVED}” <203>”) in new stack
– Executing [9{CALLED#REMOVED}@from-internal:2] Set(“SIP/203-b771edf8”, “NODEST
=") in new stack
– Executing [9{CALLED#REMOVED}@from-internal:3] Macro(“SIP/203-b771edf8”, “recor
d-enable|203|OUT|”) in new stack
– Executing [[email protected]:1] GotoIf(“SIP/203-b771edf8”, “1?check”)
in new stack
– Goto (macro-record-enable,s,4)
– Executing [[email protected]:4] AGI(“SIP/203-b771edf8”, “recordingche
ck|20081008-084701|1223452021.2308”) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/recordingcheck
recordingcheck|20081008-084701|1223452021.2308: Outbound recording not enabled
– AGI Script recordingcheck completed, returning 0
– Executing [[email protected]:5] MacroExit(“SIP/203-b771edf8”, “”) in
new stack
– Executing [9{CALLED#REMOVED}@from-internal:4] Macro(“SIP/203-b771edf8”, “dialo
ut-trunk|1|{CALLED#REMOVED}||”) in new stack
– Executing [[email protected]:1] Set(“SIP/203-b771edf8”, “DIAL_TRUNK=”
) in new stack
– Executing [[email protected]:2] GosubIf(“SIP/203-b771edf8”, “0?sub-pi
ncheck|s|1”) in new stack
– Executing [[email protected]o-dialout-trunk:3] GotoIf(“SIP/203-b771edf8”, “0?disable
trunk|1”) in new stack
– Executing [[email protected]:4] Set(“SIP/203-b771edf8”, “DIAL_NUMBER=
{CALLED#REMOVED}”) in new stack
– Executing [[email protected]:5] Set(“SIP/203-b771edf8”, “DIAL_TRUNK_O
PTIONS=trwW”) in new stack
– Executing [[email protected]:6] Set(“SIP/203-b771edf8”, “OUTBOUND_GRO
UP=OUT_1”) in new stack
– Executing [[email protected]:7] GotoIf(“SIP/203-b771edf8”, “0?nomax”)
in new stack
– Executing [[email protected]:8] GotoIf(“SIP/203-b771edf8”, “0?chanful
l”) in new stack
– Executing [[email protected]:9] GotoIf(“SIP/203-b771edf8”, “0?skipout
cid”) in new stack
– Executing [[email protected]:10] Set(“SIP/203-b771edf8”, "DIAL_TRUNK

OPTIONS=”) in new stack
– Executing [[email protected]:11] Macro(“SIP/203-b771edf8”, “outbound-
callerid|1”) in new stack
– Executing [[email protected]:1] ExecIf(“SIP/203-b771edf8”, “0|Set
CallerPres|”) in new stack
– Executing [[email protected]:2] ExecIf(“SIP/203-b771edf8”, “0|Set
|REALCALLERIDNUM=203”) in new stack
– Executing [[email protected]:3] GotoIf(“SIP/203-b771edf8”, “1?nor
mcid”) in new stack
– Goto (macro-outbound-callerid,s,6)
– Executing [[email protected]:6] Set(“SIP/203-b771edf8”, “USEROUTC
ID=”) in new stack
– Executing [[email protected]:7] Set(“SIP/203-b771edf8”, “EMERGENC
YCID=”) in new stack
– Executing [[email protected]:8] Set(“SIP/203-b771edf8”, “TRUNKOUT
CID={OURPHONE#REMOVED}”) in new stack
– Executing [[email protected]:9] GotoIf(“SIP/203-b771edf8”, “1?tru
nkcid”) in new stack
– Goto (macro-outbound-callerid,s,12)
– Executing [[email protected]:12] ExecIf(“SIP/203-b771edf8”, “1;35
;40m1|Set|CALLERID(all)={OURPHONE#REMOVED}”) in new stack
– Executing [[email protected]:13] GotoIf(“SIP/203-b771edf8”, “1?ex
it”) in new stack
– Goto (macro-outbound-callerid,s,11)
– Executing [[email protected]:11] MacroExit(“SIP/203-b771edf8”, “”
) in new stack
– Executing [[email protected]:12] ExecIf(“SIP/203-b771edf8”, “0|AGI|fi
xlocalprefix”) in new stack
– Executing [[email protected]:13] Set(“SIP/203-b771edf8”, “OUTNUM=
{CALLED#REMOVED}”) in new stack
– Executing [[email protected]:14] Set(“SIP/203-b771edf8”, “custom=ZAP/
1”) in new stack
– Executing [[email protected]:15] ExecIf(“SIP/203-b771edf8”, “0|Set|DI
AL_TRUNK_OPTIONS=M(setmusic^)”) in new stack
– Executing [[email protected]:16] Macro(“SIP/203-b771edf8”, “dialout-t
runk-predial-hook|”) in new stack
– Executing [[email protected]:1] MacroExit(“SIP/203-b771e
df8”, “”) in new stack
– Executing [[email protected]:17] GotoIf(“SIP/203-b771edf8”, “0?bypass
|1”) in new stack
– Executing [[email protected]:18] GotoIf(“SIP/203-b771edf8”, “0?custom
trunk”) in new stack
– Executing [[email protected]:19] Dial(“SIP/203-b771edf8”, “ZAP/1/
{CALLED#REMOVED}|300|”) in new stack
– Called 1/{CALLED#REMOVED}
– Zap/1-1 answered SIP/203-b771edf8
– Hungup ‘Zap/1-1’
== Spawn extension (macro-dialout-trunk, s, 19) exited non-zero on ‘SIP/203-b7
71edf8’ in macro ‘dialout-trunk’
== Spawn extension (macro-dialout-trunk, s, 19) exited non-zero on ‘SIP/203-b7
71edf8’
– Executing [[email protected]:1] Macro(“SIP/203-b771edf8”, “hangupcall
|”) in new stack
– Executing [[email protected]:1] ResetCDR(“SIP/203-b771edf8”, “w;37;40m”)
in new stack
– Executing [[email protected]:2] NoCDR(“SIP/203-b771edf8”, “”) in new sta
ck
– Executing [[email protected]:3] GotoIf(“SIP/203-b771edf8”, “1?skiprg”) i
n new stack
– Goto (macro-hangupcall,s,6)
– Executing [[email protected]:6] GotoIf(“SIP/203-b771edf8”, “1?skipblkvm”
) in new stack
– Goto (macro-hangupcall,s,9)
– Executing [[email protected]:9] GotoIf(“SIP/203-b771edf8”, “1?theend”) i
n new stack
– Goto (macro-hangupcall,s,11)
– Executing [[email protected]:11] Hangup(“SIP/203-b771edf8”, “”) in new s
tack
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on ‘SIP/203-b771e
df8’ in macro ‘hangupcall’
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on ‘SIP/203-b771e
df8’
== Starting post polarity CID detection on channel 1
– Starting simple switch on ‘Zap/1-1’
– Hungup ‘Zap/1-1’[/code]

On October 8th, 2008 Lee Christie (tadpole) said:

[I]“When set to record calls always, it works but when on demand, nothing happens when I do *1, it doesn’t even add anything on the CLI.”[/I]

Great, that means it works. My asterisk CLI doesnt add any on demand recording lines either, so we are fine there.

[I]“My dial command options were set to “tr”, now it’s “trwW”. Here is the output on the CLI for the call tried.”[/I]

Ok, so you changed “Asterisk Dial command options” to trwW, but did you also change “Asterisk Outbound Dial command options” to wW?

Based on the output you provided, the change was not made successfully.
[I]-- Executing [[email protected]:19] Dial(“SIP/203-b771edf8”, “ZAP/1/ {CALLED#REMOVED}|300|”) in new stack[/I]

The options you specified should have shown up in this line. Mine looks like this:
[I]-- Executing [[email protected]:19] Dial(“SIP/1003-b7700468”, “IAX2/DAL/2015|300|trwW”) in new stack[/I]

The only difference is that yours is using a ZAP trunk and I am using an IAX2 trunk.

Please let me know if that change was made to both options in FreePBX and that it has been applied. If it has already, try an on demand recording of an incoming call and include CLI output in your response.
Scott

Okay I’d forgotten to add wW to outbound options but i have now, and applied changes, outbound still won’t record.

-- Executing [[email protected]:19] Dial("SIP/203-b7725c08", "ZAP/1/{CALLED#REMOVED}|300|wW") in new stack

As for inbound call I’ll get back to you on that one a little later.

Hello,

here I have the same problem.
I did all the settings explained here, but no result.

When I set recording to allways, it records, but when I set it to on demand, it doesn’t.

When I press *1 during a call, nothing happends.

Any further suggestions on that?

cu
Helmut

Ok, I do get .wav files in /var/spool/asterisk/monitor/ so the recordings are working, but I don’t see anything in the Voicemail page (/recordings). Any reason the recording would not show up there? Is there any other way for a regular user to get these recordings other than pulling them from the server?

You can view the recordings in Voicemail & Recordings, the User Portal. Asterisk Addons is probably not compiled to support this option, the instructions for using Unique ID’s can be found here: http://www.voip-info.org/wiki-Asterisk+cdr+mysql

Scott

My problem is different, I am seeing recordings both in the /var/spool/asterisk/monitor directory AND under voicemail&recordings>call monitor, but again, only if i set Extentions > Recordings > Record Always. If it’s On Demand, nothing records even when I try *1.

I am seeing exactly the same as Lee - Recordings are being made if settings are set to always, if set to On Demand, no recordings are being made if dialing *1 during call.

I had the same problem when I setup my systems. What I did to fix it was go into your extension and change dictation service to disabled. Then reload the dial plan. Now go back to the extension and change the dictation service back to enabled and the format to wav.

For some reason this made it work for me.

Rob

Thanks for the suggestion Rob - Unfortunately it made no difference.
Dictation was already disabled, so enabled, tested, disabled, tested, enabled and tested. All failed to record when pressing *1 during a call.

same, still nothing but thanks

What types of phones are you using?

Have you tried this with a softphone like x-lite?

I assume that /etc/asterisk/features_featuremap_additional.conf contains automon=*1

What are the permissions and owner:group set to on /var/spool/asterisk/monitor

Which version of asterisk? Which version of FreePBX? What Operating System?

Perhaps this will help:
http://www.trixbox.org/forums/trixbox-forums/help/call-recording-trouble-trixbox-2-2-freepbx-2-4-anyone-else

I am not sure why this is occurring. When I setup my asterisk systems, after setting the options specified above, recording on demand works great. I use the PBX-In-A-Flash ISOs and when it comes to asterisk I am still a newbie.

Scott

Hope I am not ‘stealing’ Lee’s thread, it is just that it appears at the moment that we both have the same problem.

I have tried using two different phones (Grandstream & Linksys) plus Eyebeam / Xlite, and no recordings are being made when dialing *1 during a call.

/etc/asterisk/features_featuremap_additional.conf
contains
automon=*1

drwxrwxr-x 2 asterisk asterisk 4096 2008-10-14 11:10 monitor

Using
Asterisk 1.4.18
FreePBX 2.5.0.1

Dial command options: trWw
Outbound Dial command options: TWw

===============================
Update
Your link solved the problem
Add the following line to /etc/asterisk/features_general_custom.conf

featuredigittimeout = 1500

Thanks for the suggestions Scott.