Skip to main content

FS Air

About

by Seven Du

FreeSWITCH AIR is an Adobe AIR-based GUI for FreeSWITCH. It makes FreeSWITCH as easy to use as a softphone.

The idea is to connect to FreeSWITCH mod_event_socket and control mod_portaudio by using API commands. Also it listens to the events such as portaudio::ringing and CHANNEL_HANGUP to update the GUI accordingly.

Sure portaudio includes a Web based GUI, which is really nice. But FSAir is just more like a softphone.

Click here to expand Table of Contents

FreeSWITCH AIR

Platform

Run everywhere FreeSWITCH and Adobe AIR runs.

Download

Source code in

AIR application: FreeSWITCH-Air.air

Install

Install [Adobe AIR runtime] first. And then double click FreeSWITCH-Air.air should be able to start the installation process.

ESL in ActionScript

To communicate with FreeSWITCH through Event Socket, an ESL-like lib implemented in ActionScript 3. Source code available in src/libs.

Due to the async socket and lack of sleep function in ActionScript, I found it's hard to implement API function like sendRecv() in ESL. So it's lacking some functionality compared to the C version of ESL. But, it kind of works. Any feedback and improvement suggestions are highly appreciated.

Screenshots

FreeSWITCH Air GUI

Attachments:

fsair_screenshot.png (image/png)

Comments:

// sleep() function for actionscript:function sleep(counter:int,subsequentFunction: Function,args:Array):void\ { if(counter > 0)\ { callLater(sleep,[counter- 1,subsequentFunction,args]); }else { callLater(subsequentFunction,args); }}// call trace('Hello') after 100 cyclessleep(100,trace,[ 'Hello']);// call myFunction() after 50 cyclessleep(50, myFunction,[]); Posted by madovsky at Feb 17, 2018 07:16