SipXconfig REST libraries
From SIPfoundry sipXecs IP PBX, The Open Source SIP PBX for Linux - Calivia
Work in progress
sipXconfig have several existing rest services. We are trying to extend the support in 4.2 to include all services required to implement User Portal functionality.
Useful links:
Notes on libraries that sipXconfig and sipXivr can use to implement extend RESTful interfaces.
Contenders
- RESTlet - that's what we currently use
- Apache CXF
Is JAX-RS (JSR 311) something we want to use? (From George's e-mail: I think we should also take a look on other JAX-RS (JSR 311) implementations considering the EOD (producing XML/JSON/atom feeds responses by simply annotating a method in a POJO).
- user guide for JAX-RS with CXF: http://cwiki.apache.org/CXF20DOC/jax-rs.html
- short discussion about JAX-RS implementations: http://www.infoq.com/news/2008/10/jaxrs-comparison
| Criteria | RESTlet | Apache CXF |
|---|---|---|
| Licence | LGPL 3.0, LGPL 2.1, CDDL 1.0, EPL 1.0 | Apache license |
| Dependencies | Probably no new dependencies (other than RESTlet itself). There are couple of interesting extensions that migh require new dependencies if we use them. | |
| JAX-RS (JSR-311) | extension available | yes |
| Spring integration | Several methods:
We can probably stick with SpringFinder. Documentation suggests that it requires Sping 2.5 now (we still use 2.0). |
Criteria
- integrates with Spring well (works well in sipXconfig jetty/spring/hibernate environment)
- minimal dependencies
- compatible FOSS licence
Process
Implement call forwarding REST service: list, add, remove forwarded numbers - disable and enable forwarding (what about schedules?)
Implement VoiceMail REST services, and VoiceMail RSS/ATOM feed
