[Freeswitch-users] ESL Managed IVR and CallControl

Hector Geraldino Hector.Geraldino at ip-soft.net
Thu Jan 12 19:42:25 MSK 2012


I have experience setting up something like that, but in Java.

You should use ESL in outbound mode. For every new incoming call, FS will open a socket connection to an ip:port where your application should be listening to, and you will have complete control over the incoming call. So, in theory, you should only need to have a SocketServer listening to an specific port, and send commands/receive events from FS to your application (you can play a little bit with this in linux using the netcat (nc) utility, or maybe in windows by installing Cygwin  and using nc.exe)

I'm happy using the Java ESL library, a pure socket-based java application (jboss/netty based) with no dependencies on system libs.  Maybe (and this is a BIG MAYBE) you can reuse this library from .NET, relying on Mono's IKVM tool, that allows Java-to-NET interoperability by converting Java's JVM bytecode to .NET CLR. I've taken this approach before, when I found a terrific tool in Java (jPOS, for example) with no counterparts in .NET.

This is only one option. There's always the option of building your own application listening on a socket, or using the .NET libraries listed on the wiki:

http://wiki.freeswitch.org/wiki/Mod_event_socket#.NET_Client_library

Good luck!

From: freeswitch-users-bounces at lists.freeswitch.org [mailto:freeswitch-users-bounces at lists.freeswitch.org] On Behalf Of Michael Lutz
Sent: Thursday, January 12, 2012 10:02 AM
To: FreeSWITCH-users at lists.freeswitch.org
Subject: [Freeswitch-users] ESL Managed IVR and CallControl

Hi,

I have been playing with mod_managed for a while now but nobody realy seems to be able to help me out. So now I am trying to go to ESL. (which most of the people suggest anyway).

What I need is control from .net over the complete call! (so even when bridged and returns).

I need to build  a main library where all my generic functions will be put in so I can use them in my different scripts.

What I''ve figured out is problably the best way is to write a server which connects to my FS an listens to all events.
When a call comes in I need to fire a stored procedure to my sqlserver and based on the reply I will decide if the call needsto be answerred, early media needs to be played, or the call needs to be rejected.

In any case, at the end of every call (answered or not) I need to finalize my call with another stored procedure.

When teh call is answered based on stored procedure result I need to run a script (also managed code)
run a script from another dll so I have all my scripts separate but they share the corelib I create.

I have been searching the web for a long time now to see if I can find something simular, but I only see generic examples wich don't actually show how to control multiple calls in a scenario like this.

Who can help me out point me to the right direction or has experience in setting something up like this?


Thanks in advance,
Michael Lutz.



-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20120112/1b9c0d61/attachment-0001.html 


Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users mailing list