Record outgoing calls

I’m not able to get the outgoing call recording function properly.
After 5 day’s and night’s of reading and searching i’m close to giving up.

Inbound recording is working properly with the following code :

exten => 201,1,Set(DIREC=/var/spool/asterisk/monitor)
exten => 201,2,Set(CALLFILENAME=${TIMESTAMP}-${CALLERIDNUM}-${EXTEN:1})
exten => 201,3,MixMonitor(${CALLFILENAME}.gsm|(AV(0)V(0))
exten => 201,4,Dial(SIP/201,10,r)
exten => 201,5,Dial(SIP/xxxxxxxxxxx@xxxxxxxxx,10)
exten => 201,6,GoToIf($[${DIALSTATUS} = CHANUNAVAIL] ?10)
exten => 201,7,GoToIf($[${DIALSTATUS} = BUSY] ?12)
exten => 201,8,VoiceMail(201@default)
exten => 201,9,GoTo(201,13)
exten => 201,10,VoiceMail(u201@default)
exten => 201,11,GoTo(201,13)
exten => 201,12,VoiceMail(b201@default)
exten => 201,13,Hangup()

I think my problem with the outgoing calls might be my astbill.
This is my context for outgoing recording, it’s a 4x E1 interface to connect to our ACD system where all calls will be originated :

[vstream]
;
exten => _01.,1,Dial(SIP/0${EXTEN:1}@31457112197,130,r)
exten => _02.,1,Dial(SIP/0${EXTEN:1}@31457112197,130,r)
exten => _03.,1,Dial(SIP/0${EXTEN:1}@31457112197,130,r)
exten => _04.,1,Dial(SIP/0${EXTEN:1}@31457112197,130,r)
exten => _05.,1,Dial(SIP/0${EXTEN:1}@31457112197,130,r)
exten => _06.,1,Dial(SIP/0${EXTEN:1}@31457112197,130,r)
exten => _07.,1,Dial(SIP/0${EXTEN:1}@31457112197,130,r)
exten => _00.,1,Dial(SIP/0${EXTEN:1}@31457112197,130,r)

When I add the code I’ve used above :

exten => _01.,1,Set(DIREC=/var/spool/asterisk/monitor)
exten => _01.,2,Set(CALLFILENAME=${TIMESTAMP}-${CALLERIDNUM}-${EXTEN:1})
exten => _01.,3,MixMonitor(${CALLFILENAME}.gsm|(AV(0)V(0))
exten => _01.,4,Dial(SIP/0${EXTEN:1}@31457112197,130,r)

astbill won’t let me trough, and tells me there is not enough credit.

Astbill logs tell me the following :

No Route-RateAddcdr.proc-10164 vegastream 061351xxxx

The goal i’m trying to achive is to record all calls passing this context.

Is there maybe another way ?

Any tips ?

[quote=“kreijnen”]exten => _01.,1,Set(DIREC=/var/spool/asterisk/monitor)
exten => _01.,2,Set(CALLFILENAME=${TIMESTAMP}-${CALLERIDNUM}-${EXTEN:1})
exten => _01.,3,MixMonitor(${CALLFILENAME}.gsm|(AV(0)V(0))
exten => _01.,1,Dial(SIP/0${EXTEN:1}@31457112197,130,r)
[/quote]
is the last line a typo ? you already have a priority 1 defined for _01.

Excuse me the priority should be 4

Typo

Isn’t there aanother way of recording all bridged channels using the automon feature ? without having to push *0

what’s wrong with MixMonitor ? not sure of your application options though.

what happens when you use this ? what does the log show ?

Mixmonitor starts the recording but astbill is blocking the call…

I end up with empty files , and my agents only hear : you don’t have enough credits to dail this number.

In my opininion this problem is related to the astbill system, but I can’t seem to find out where exactly.

can i ask why you’re using astbill for a call centre ?

I use asterisk for two situations :

1 = for office telephony
2 = for the call centre

I have a seperate billing system for the ACD part.

These two are also in separate context’s

That’s why i’m wondering if its possible to record only one specific context.

Or maybe there’s a possibility to route calls originated from the ACD NOT trough Astbill. They are permitted to call anything.