On 7/19/07, Mike Ashton <[EMAIL PROTECTED]> wrote:
Reza,
There are a lot of ways to do this sort of thing, it really depends on the
needed functionality.
On the asterisk side you can do it one of two ways:
- have an app listening via the management port, the advantage of this
is it puts no extra burden/delays in your dial plan.
I would tend to support one of Mike's suggestions.
What is typically seen in call centre (not to say that it's best, but just
what's standard) is that an application registers with an AMI (Asterisk
Manager Interface) type CTI interface and listens to all events for a
particular station, popping caller info as soon as it its available, then
going to do a database dip to populate the screen with more information.
It's important to pop what you have before doing the database hit because if
things bottleneck at the server for several seconds, the conversation gets
very awkward when agents don't know who they're talking to or why.
I'm not sure if you've worked with AMI, I think I can dig up an old Python
app that I wrote for experimenting with AMI. Basically, the screen is
divided into 3 parts:
1) Raw event output monitor
2) A place to enter commands
3) A place to see the results of commands.
Drop me a note if it would be helpful, I can dig it up. It was only used on
an older version of Asterisk and it wasn't meant for mass consumption. It
probably has my IP address hard coded :-). You could probably get it up and
running in 20 minutes. I think the only dependencies are wx and twisted.
All the best,
Dave