[Freeswitch-users] Questions on Building an application for FreeSWITCH

Bob Coleman bobc at devassert.com
Tue Jun 1 15:27:33 PDT 2010


Ok, should work fine in the express version(free)

On Wed, Jun 2, 2010 at 9:42 AM, Phone <phone.bytes at gmail.com> wrote:
> Thanks for the sample Bob!  I am looking to do this in a linux
> environment...trying to get access to Visual Studio 2008 to explore your
> example.
>
> Anyone with examples that could be implemented on the linux side would
> be appreciated also.
>
> Thanks for all the comments and feedback...awesome forum!
>
> Bob Coleman wrote:
>> Ok
>>
>> On Mon, May 31, 2010 at 9:33 PM, Jan Berger <jan.berger at video24.no> wrote:
>>
>>> Bob,
>>>
>>> I suggest you write a wiki-article on FS about this, because this email is
>>> soon forgotten.
>>>
>>> -----Original Message-----
>>> From: freeswitch-users-bounces at lists.freeswitch.org
>>> [mailto:freeswitch-users-bounces at lists.freeswitch.org] On Behalf Of Bob
>>> Coleman
>>> Sent: 30. mai 2010 23:56
>>> To: freeswitch-users at lists.freeswitch.org
>>> Subject: Re: [Freeswitch-users] Questions on Building an application for
>>> FreeSWITCH
>>>
>>> I have put up an example for the outbound eventsocket in c#, it is
>>> real basic but gives you one approach to using this method. This has
>>> been coupled together by looking at other samples.
>>>
>>> There are two files, one is the dialplan ( 810_sample_ivr.xml ) which
>>> should be placed in the conf/dialplan/default folder
>>> The other file is a zip including a library for talking to the event
>>> socket and a simple test listener.
>>>
>>> http://www.devassert.com/apps/freeswitch/810_sample_ivr.xml
>>> http://www.devassert.com/apps/freeswitch/freeswitch.es.net.zip
>>>
>>> The password on the zip is cluecon
>>>
>>> To try the test, have the dialplan in place and run freeswitch,
>>> connect to an extension with a soft phone, eg 1001, dial 810 and
>>> listen.
>>>
>>> Assuming you have freeswitch callie prompts installed
>>> sounds\en\us\callie\conference\8000 all will be good.
>>>
>>> Sample is in Visual Studio 2008 and uses a threading library written
>>> by another party.
>>>
>>> If you have any questions just ask.
>>>
>>> On Fri, May 28, 2010 at 9:51 AM, Phone <phone.bytes at gmail.com> wrote:
>>>
>>>> Thanks,
>>>>
>>>> Examples and feedback are most helpful!
>>>>
>>>> Bob Coleman wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> Will incorporate some threading into the example I am working on for you.
>>>>>
>>>>> The outbound event socket method is very similar to the dialogic
>>>>> environment, I know how you felt though, but by starting small(like
>>>>> just even answering a call) gets you moving pretty quick. Freeswitch
>>>>> is lots of fun to work with, and the guys on here are very
>>>>> supportive!!
>>>>>
>>>>> Bob
>>>>>
>>>>> On Thu, May 27, 2010 at 3:59 AM, Phone <phone.bytes at gmail.com> wrote:
>>>>>
>>>>>
>>>>>> Thanks to all for the most helpful feedback.  Sharing your approaches
>>>>>> and experiences are a big help.  I look forward to the upcoming code
>>>>>> samples.
>>>>>>
>>>>>> I was coming from a windows/dialogic environment where I used a library
>>>>>> that allowed me to work on a little higher level.  For example, I had a
>>>>>> call to "play a file" that took a parameter of whether or not to allow a
>>>>>> dtmf to interrupt.  There was also a call to "ReadDtmfs" that took
>>>>>> parameters to specify the number of Dtmf's to read, how long to wait for
>>>>>> them, and what terminating character to use.  I guess that you could
>>>>>> write some scripts or compiled code with these same types of functions
>>>>>> to simplify some of these routine tasks with reusable code?
>>>>>>
>>>>>> Also, the library handled the threading and scheduling with the OS.  I
>>>>>> am still unclear on handling the events.  I guess you have a big loop
>>>>>> reading events and then acting on them using the uuid to determine which
>>>>>> call it is and how to deal with the next step of the call?  Any feedback
>>>>>> on this part of the project?
>>>>>>
>>>>>> Again, Thanks!
>>>>>>
>>>>>> Bob Coleman wrote:
>>>>>>
>>>>>>
>>>>>>> Ah sorry, I started with the esl to get an understanding then wrote my
>>>>>>> own socket library(was actually very easy to do), when I mean docs I
>>>>>>> mean the event socket docs. I still think of it as the esl, my
>>>>>>> mistake.
>>>>>>>
>>>>>>> http://wiki.freeswitch.org/wiki/Event_Socket
>>>>>>>
>>>>>>> I started with a codeplex project, that had been abandoned, and then
>>>>>>> once I understood the structure of the event socket language, was able
>>>>>>> to rewrite it to better handle what we were doing.
>>>>>>>
>>>>>>> I also married it up to an old gotdotnet asterisk fast agi project,
>>>>>>> once again abandoned, to allow for the use of asterisk as well, but in
>>>>>>> the end freeswitch won because we could use just one platform.
>>>>>>>
>>>>>>> I am busy writing a small sample app at the moment to demonstrate a
>>>>>>> problem I am trying to solve. Can release that code once sorted. Will
>>>>>>> be in a week or so. Am intending it as a quick way of testing event
>>>>>>> sockets, and trying various commands etc. before commiting to coding
>>>>>>> something.
>>>>>>>
>>>>>>> Bob
>>>>>>>
>>>>>>> On Wed, May 26, 2010 at 2:26 PM, Jan Berger <jan.berger at video24.no>
>>>>>>>
>>> wrote:
>>>
>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> Do you have some sample code you could share + what docs did you look
>>>>>>>>
>>> at?
>>>
>>>>>>>> I would like to write and test some C# using ESL for my own work.
>>>>>>>>
>>>>>>>> Jan
>>>>>>>>
>>>>>>>> -----Original Message-----
>>>>>>>> From: freeswitch-users-bounces at lists.freeswitch.org
>>>>>>>> [mailto:freeswitch-users-bounces at lists.freeswitch.org] On Behalf Of
>>>>>>>>
>>> Bob
>>>
>>>>>>>> Coleman
>>>>>>>> Sent: 26. mai 2010 04:07
>>>>>>>> To: freeswitch-users at lists.freeswitch.org
>>>>>>>> Subject: Re: [Freeswitch-users] Questions on Building an application
>>>>>>>>
>>> for
>>>
>>>>>>>> FreeSWITCH
>>>>>>>>
>>>>>>>> We used c# as the rest of our systems are windows based. The language
>>>>>>>> doesnt matter too much, as long as you know where you are headed, what
>>>>>>>> performance you require, and what platform you are going to be using.
>>>>>>>>
>>>>>>>> Found the ESL so much easier than the dialogic c library we were
>>>>>>>>
>>> using.
>>>
>>>>>>>> The docs for the esl are easy to understand, the thing I couldnt get
>>>>>>>> my head around initially was the dialing out, with the dialogic you
>>>>>>>> are in the middle when you dial, ie already on the channel, but with
>>>>>>>> freeswitch you are kind of the third party when you dial, the channel
>>>>>>>> being created by the dialing and handing it off to be worked on. We
>>>>>>>> make the call via an inbound event socket and hand it off to an
>>>>>>>> outbound event socket application via the dialplan.
>>>>>>>>
>>>>>>>> On Wed, May 26, 2010 at 10:08 AM, Phone <phone.bytes at gmail.com> wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>> Thanks for the info.  What language did you use?
>>>>>>>>>
>>>>>>>>> Bob Coleman wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> Have just recently completed a project to convert an old windows
>>>>>>>>>> dialogic application(vb6) to FreeSWITCH, would reccommend using the
>>>>>>>>>> ESL, was able to map the old dialogic calls to the ESL calls pretty
>>>>>>>>>> easily. We used a mixture of inbound and outbound sockets, as we
>>>>>>>>>>
>>> have
>>>
>>>>>>>>>> people dialing us, not just dialing out etc.
>>>>>>>>>>
>>>>>>>>>> With the dialogic you open a port and make the call and handle the
>>>>>>>>>> dtmf, with freeswitch you create a socket connection to FreeSWITCH
>>>>>>>>>>
>>> to
>>>
>>>>>>>>>> dial the number and then hand it off to an extension for processing
>>>>>>>>>> the dtmf(that is one approach any way)
>>>>>>>>>>
>>>>>>>>>> Bob
>>>>>>>>>>
>>>>>>>>>> On Wed, May 26, 2010 at 6:45 AM, Michael Collins
>>>>>>>>>>
>>> <msc at freeswitch.org>
>>>
>>>>>>>>>>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>> On Tue, May 25, 2010 at 11:38 AM, Jan Berger
>>>>>>>>>>>
>>> <jan.berger at video24.no>
>>>
>>>>>>>>>>>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>>> Actually - before you get "to smart" - may I suggest that you
>>>>>>>>>>>>
>>> start
>>>
>>>>>>>>>>>> writing
>>>>>>>>>>>> - or improving - the getting started sections of the doc. Address
>>>>>>>>>>>>
>>> the
>>>
>>>>>>>>>>>> areas
>>>>>>>>>>>> where you struggle and let others benefit from your work.
>>>>>>>>>>>>
>>>>>>>>>>>> I have been through similar issues myself - FS is one of the
>>>>>>>>>>>>
>>> easier
>>>
>>>>>>>>>>>> projects
>>>>>>>>>>>> to work with once you get under the hood, but you basically need
>>>>>>>>>>>>
>>> to
>>>
>>>>>>>>>>>>
>>>>>>>> evolve
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>>> to the level where you read the source code.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>> And if you can wait 2+ months for "the book" then that should help
>>>>>>>>>>>
>>> as
>>>
>>>>>>>>>>>
>>>>>>>> well.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>> :D
>>>>>>>>>>> -MC
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> FreeSWITCH-users mailing list
>>>>>>>>>>> FreeSWITCH-users at lists.freeswitch.org
>>>>>>>>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>>>>>>>>>
>>>>>>>>>>>
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>
>>>>>>>>>>> http://www.freeswitch.org
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> FreeSWITCH-users mailing list
>>>>>>>>>> FreeSWITCH-users at lists.freeswitch.org
>>>>>>>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>>>>>>>>
>>>>>>>>>>
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>
>>>>>>>>>> http://www.freeswitch.org
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> FreeSWITCH-users mailing list
>>>>>>>>> FreeSWITCH-users at lists.freeswitch.org
>>>>>>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>>>>>>>
>>>>>>>>>
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>
>>>>>>>>> http://www.freeswitch.org
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> FreeSWITCH-users mailing list
>>>>>>>> FreeSWITCH-users at lists.freeswitch.org
>>>>>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>>>>>>
>>>>>>>>
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>
>>>>>>>> http://www.freeswitch.org
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> FreeSWITCH-users mailing list
>>>>>>>> FreeSWITCH-users at lists.freeswitch.org
>>>>>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>>>>>>
>>>>>>>>
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>
>>>>>>>> http://www.freeswitch.org
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> FreeSWITCH-users mailing list
>>>>>>> FreeSWITCH-users at lists.freeswitch.org
>>>>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>>>>>
>>>>>>>
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>
>>>>>>> http://www.freeswitch.org
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>> _______________________________________________
>>>>>> FreeSWITCH-users mailing list
>>>>>> FreeSWITCH-users at lists.freeswitch.org
>>>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>>>> http://www.freeswitch.org
>>>>>>
>>>>>>
>>>>>>
>>>>> _______________________________________________
>>>>> FreeSWITCH-users mailing list
>>>>> FreeSWITCH-users at lists.freeswitch.org
>>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>>> http://www.freeswitch.org
>>>>>
>>>>>
>>>> _______________________________________________
>>>> FreeSWITCH-users mailing list
>>>> FreeSWITCH-users at lists.freeswitch.org
>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>> http://www.freeswitch.org
>>>>
>>>>
>>> _______________________________________________
>>> FreeSWITCH-users mailing list
>>> FreeSWITCH-users at lists.freeswitch.org
>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>> http://www.freeswitch.org
>>>
>>>
>>> _______________________________________________
>>> FreeSWITCH-users mailing list
>>> FreeSWITCH-users at lists.freeswitch.org
>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>> http://www.freeswitch.org
>>>
>>>
>>
>> _______________________________________________
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>>
>
>
> _______________________________________________
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>



More information about the FreeSWITCH-users mailing list