[Freeswitch-users] RESTful Bounty ..... Putting the competitionto REST with RestFul VoIP2.x services
Michael Collins
mcollins at fcnetwork.com
Tue May 27 15:09:25 PDT 2008
FYI,
I've been playing with this and it is very cool. I am working on a mini
web-page that will be like a control panel, although it's just for me to
watch what's happening on my FS box via a web page using Dojo widgets +
Ajax/(D)HTML/CSS. I have a need for my users to be able to monitor
certain aspects of OpenZAP calls/spans and a simple web page is the best
option I've got. The webapi is very cool - you can fetch via the web
interface anything that you could type at the CLI and get it back in an
HTML table, or in some cases, raw text. (I'm using 8080/api/oz?list,
etc. for OpenZAP list/dump commands but I'm using
8080/webapi/show?channels, etc. for the more traditional CLI commands.)
Note: use the question mark to separate the command from the first
argument, and then spaces to separate additional arguments:
http://my.fs.box:8080/webapi/show?channels
http://my.fs.box:8080/webapi/oz?dump 1
-or-
http://my.fs.box:8080/webapi/oz?dump%201
Enjoy!
-MC
________________________________
From: freeswitch-users-bounces at lists.freeswitch.org
[mailto:freeswitch-users-bounces at lists.freeswitch.org] On Behalf Of
Anthony Minessale
Sent: Tuesday, May 27, 2008 9:40 AM
To: freeswitch-users at lists.freeswitch.org
Subject: Re: [Freeswitch-users] RESTful Bounty ..... Putting the
competitionto REST with RestFul VoIP2.x services
Also, did you know that mod_xml_rpc not only does RPC but it also lets
you access FSAPI functions by URL access which sounds to be the same
idea as this.
Try it by building and loading mod_xml_rpc
The point your web browser at it
http://my.fs.box:8080/webapi/status
The default login/password is "freeswitch/works"
The voicemail app can do this too see:
http://my.fs.box:8080/api/voicemail/web
you can actually use user at domain login based on your vm directory and
auth per user and see your VM on the web.
When you go to /webapi/foo FSAPI function foo is called after an
implicit content-type: text/html is sent.
if you go to /api/foo it is up to your function to print the
Content-Type header similar to a cgi
On Tue, May 27, 2008 at 10:46 AM, Anthony Minessale
<anthony.minessale at gmail.com> wrote:
cool, how much is the bounty?
On Tue, May 27, 2008 at 10:42 AM, EdPimentl <edpimentl at gmail.com> wrote:
I am putting a bounty to add RESTful WebServices in FreeSwitch.
The bounty ask that TONIC is use as the RESTful Framework.
TONIC should then be use to create simple CALLback application
and establish ad-hoc VoiceConference.
To those not familiar with TONIC here is write up.
Tonic <http://tonic.sourceforge.net/> A RESTful Web App
Development Framework
Tonic is an open source less is more, RESTful Web application
development and Web site management PHP script designed to do things
"the right way", where resources are king and the framework gets out of
the way and leaves the developer to get on with it.
Tonic helps you develop Web applications that embrace the way
the Web really works, enabling your applications to scale, extend and
work with other systems easily.
Everything is a resource
Tonic works exclusively with resources, a resource is simply a
piece of data with some metadata accessable by a URL using HTTP methods.
Everything within a Tonic system is a resource and so can be handled via
the standard HTTP interface.
Domain modelling through resources
When modelling your problem domain within a Tonic system, every
domain object is a resource or a collection of resources.
Keep it simple, stupid!
Following the Unix philosophy of many small parts working
together via a common interface, Tonic uses resources as it's "programs"
and HTTP as it's "streams" to enable you to build complexity out of
simplicity.
Main features
Tonic embraces a number of standard Web features and best
practices, as well as features, principles and ideas taken from PHP,
Unix, and other software design patterns:
* Resource editing via HTTP PUT and DELETE methods (or via
the Resource::save() and Resource::remove() PHP methods)
* Easy to extend via new resource classes
* HTTP basic and digest authentication
* Resource method permissions to provide authorisation to
individual resource methods
* Output templating via Smarty
* Output caching via HTTP 304 response codes and modified
headers
* Extendable resource storage types via adapters
* Content negotiation
* Match multiple URLs to a single resource
* Follows Unix modular design principles
And here is why everything one does or will do, should be done
via RESTFul messaging..
Think about it, Google, AMAZON, YAHOO have standardized on REST.
http://www.infoq.com/articles/rest-introduction
http://wiki.opengarden.org/REST/REST_for_the_Rest_of_Us
http://en.wikipedia.org/wiki/Representational_State_Transfer
http://rest.blueoxen.net/cgi-bin/wiki.pl?FrontPage
http://www.jibbering.com/2002/4/httprequest.html
http://java.sun.com/developer/technicalArticles/WebServices/restful/
http://www.ics.uci.edu/~fielding/pubs/dissertation/software_arch.htm#sec
_1_2
<http://www.ics.uci.edu/%7Efielding/pubs/dissertation/software_arch.htm#
sec_1_2> ******
-E
http://mobiquity.ws
_______________________________________________
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
--
Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/
AIM: anthm
MSN:anthony_minessale at hotmail.com
<mailto:MSN%3Aanthony_minessale at hotmail.com>
GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
<mailto:PAYPAL%3Aanthony.minessale at gmail.com>
IRC: irc.freenode.net #freeswitch
FreeSWITCH Developer Conference
sip:888 at conference.freeswitch.org
<mailto:sip%3A888 at conference.freeswitch.org>
iax:guest at conference.freeswitch.org/888
googletalk:conf+888 at conference.freeswitch.org
<mailto:googletalk%3Aconf%2B888 at conference.freeswitch.org>
pstn:213-799-1400
--
Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/
AIM: anthm
MSN:anthony_minessale at hotmail.com
<mailto:MSN%3Aanthony_minessale at hotmail.com>
GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
<mailto:PAYPAL%3Aanthony.minessale at gmail.com>
IRC: irc.freenode.net #freeswitch
FreeSWITCH Developer Conference
sip:888 at conference.freeswitch.org
<mailto:sip%3A888 at conference.freeswitch.org>
iax:guest at conference.freeswitch.org/888
googletalk:conf+888 at conference.freeswitch.org
<mailto:googletalk%3Aconf%2B888 at conference.freeswitch.org>
pstn:213-799-1400
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20080527/580dbbbb/attachment-0002.html
More information about the FreeSWITCH-users
mailing list