[Asterisk-Users] Record call from switch using service observe? (execute command after dial?)
gpa2 at netacs.net
Thu Jun 24 11:54:33 MST 2004
I am working on a project to record agent calls when completing specific
transactions with customers.
Since these calls do not go through the asterisk box (They go through a
lucent G3), we're thinking that service observe would be the easiest way to
accomplish our goal.
Here's what I need:
On demand, I need to be able to attach to the switch, dial the service
observe code, make an announcement, record.
On the second event, I need to make an announcement, stop the recording, and
hang-up the channel to the switch.
Here's my plan:
1) Agent software calls a CGI on the asterisk box. This passes extension
the agent is talking on.
2) CGI program somehow makes asterisk call to the switch, dials
160w<extension> which does a service observe (i.e. attaches the <extension>
audio to our channel)
3) Asterisk play recording about transaction being recorded
4) Start recording
5) Software calls CGI again to notify asterisk to stop the recording.
6) Asterisk plays recording that the transaction is recorded
7) Asterisk disconnects channel.
Eventually I will have a T1 interface into the switch, but for testing I'm
just using the X100P and an analog port on the switch.
The two communicate properly, I can call the asterisk box and have it
answer, and I can generate a call to the switch from a different extension
on the Asterisk box.
Here's my attempted solutions:
1) When I try to generate the call from a SIP phone, it works fine. The
extensions.conf contains a dial(zap/1/160w<extension>)
2) When I try to generate the call from the manager interface, I cannot do
it without having a different input.
Extension 555 does a dial(zap/1/160w<extension>)
a) The problem is I have no other channels but the ZAP channel for the
X100p. I can't connect both ends to the same channel.
b) Also, I cannot send audio to this channel from the manager channel
(for the announcement of the recording)
c) Dial doesn't exit until hang-up, so I cannot background() the audio
to the channel.
3) When I try to dial by generating a call file in the proper outbound call
directory, I still get stuck on the dial command.
Any ideas? Am I just not understanding something critical?
Thanks for any help! I've search the archives and the WIKI for about 3
days. I'm stumped!
More information about the asterisk-users