I know, that I am missing a lot of things regarding freeswitch and that I still have to learn a lot about it (it would be sad, if could lear all aspects within a week ;-). I will come back to your answer tomorrow, because I want to understand every single aspect of it and I want to make my own little tests to understand more. I have to admit, that I have to think a little bit more about what I read, if it is written in english :-) Thanks again Dennis 2008/10/22 Anthony Minessale <anthony.minessale@gmail.com>:
You have to learn and understand the terminology and structure.
FSAPI is the name of the interface that allows the registration of arbitrary commands which can be executed by cli, xml-rpc and event socket, they are not tied to a specific channel at all.
APPLICATION is the name of the interface that provides applications to be executed by individual calls they are designed with the concept that you have a channel and you want to make the channel do something these are the things you execute in the dialplan in the <action> tags.
event socket has the command sendmsg which lets you send a message to a specific channel. This can be any message but the one you are familiar with is the one that tells the session to execute an application. Think of it as you are sending an instant message to the channel saying, please execute this dialplan application. The caveat to this is that it will only listen to you if you have first parked the call which is a mutual agreement between you and the call that you are allowed to control it. The outbound event socket to your program explicitly puts the call into park and the originated sessions that execute park also fall into this category.
the "api" event socket command is a way to execute FSAPI commands from the socket (anything you can type from the cli like "show channels") There are several FSAPI commands that can manipulate calls but rather than sending them a message to execte some app you are specifiying the uuid to gain acces to the channel in order to carry out your command. Most of these commands begin with uuid_ so there are things like uuid_bridge, uuid_kill, uuid_transfer etc.
So in short, the answer is, yes, it's because you only started last week. Everything you want to be able to do is there for you you just have to shift your paradigm or as like Doc Brown likes to say "learn to think 4th dimensionally!"
You may find it useful to join irc irc.freenode.net #freeswitch or use the applet on our homeage by looking for the chat login box on the right side of the page towards the bottom. There are over one hundered people in there who can offer advice etc.