[Freeswitch-users] Event socket and commands/apis
Anthony Minessale
anthmct at yahoo.com
Fri Jan 18 06:20:41 PST 2008
When you execute a command you always get the reply to
that command before anything else. This means that
with something like the originate command you will
have to wait for the call to establish media to get the
reply.
There are however 2 ways to get async results.
The event socket uses the "api" command to interface
with the FSAPI interface (for originate, show, etc),
but there is also a bgapi command.
When using bgapi, a unique id is generated and returned
instantly as the result of the command and the desired
command is executed in it's own thread. When that
command is finished it fires the event
SWITCH_EVENT_BACKGROUND_JOB
If you are subscribed to that event you can check the
header 'Job-UUID' and look for a match to the uuid
you were given when you executed the command.
The body of the event message will contain the command
output.
Also as of this week, since this was a useful feature,
I also created the bgapi FSAPI function which is the same
thing only implmented as an FSAPI command in mod_commands.
This allows you to execute background jobs from the cli
or xml-rpc etc.
so with event socket you can send:
bgapi show dialplan\n\n
bgapi show dialplan
Content-Type: command/reply
Reply-Text: +OK Job-UUID: 3cd1c51e-dac4-4cfc-8567-3a440673feed
if you are waiting for the background_job event you will
eventually get:
Job-UUID: 3cd1c51e-dac4-4cfc-8567-3a440673feed
Job-Command: show
Job-Command-Arg: dialplan
Event-Name: BACKGROUND_JOB
Core-UUID: d1a1f5b8-4f68-4406-97fa-89a597bb014a
FreeSWITCH-Hostname: mera.tollfreeexpress.com
FreeSWITCH-IPv4: 208.64.201.69
FreeSWITCH-IPv6: 127.0.0.1
Event-Date-Local: 2008-01-18%2009%3A18%3A25
Event-Date-GMT: Fri,%2018%20Jan%202008%2014%3A18%3A25%20GMT
Event-Date-timestamp: 1200665905784042
Event-Calling-File: mod_event_socket.c
Event-Calling-Function: api_exec
Event-Calling-Line-Number: 559
Content-Length: 65
type,name
dialplan,enum
dialplan,XML
dialplan,asterisk
3 total.
Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/
AIM: anthm
MSN:anthony_minessale at hotmail.com
GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
IRC: irc.freenode.net #freeswitch
FreeSWITCH Developer Conference
sip:888 at conference.freeswitch.org
iax:guest at conference.freeswitch.org/888
googletalk:conf+888 at conference.freeswitch.org
pstn:213-799-1400
----- Original Message ----
From: Jonas Gauffin <jonas.gauffin at gmail.com>
To: freeswitch-users at lists.freeswitch.org
Sent: Thursday, January 17, 2008 9:42:17 AM
Subject: [Freeswitch-users] Event socket and commands/apis
Hello
Are the commands sent over the event socked handled synchronously or
asynchronously?
I mean, if I send two commands, can the first reply that I get back be
for the second command as it completed faster?
//Jonas
_______________________________________________
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
____________________________________________________________________________________
Never miss a thing. Make Yahoo your home page.
http://www.yahoo.com/r/hs
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20080118/75f2a7b6/attachment-0002.html
More information about the FreeSWITCH-users
mailing list