A SIP-Based Programming Framework for Advanced Telephony Applications

  • Wilfried Jouve
  • Nicolas Palix
  • Charles Consel
  • Patrice Kadionik
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5310)


The scope of telephony is significantly broadening, providing users with a variety of communication modes, including presence status, instant messaging and videoconferencing. Furthermore, telephony is being increasingly combined with a number of non-telephony, heterogeneous resources, consisting of software entities, such as Web services, and hardware entities, such as location-tracking devices. This heterogeneity, compounded with the intricacies of underlying technologies, make the programming of new telephony applications a daunting task.

This paper proposes an approach to supporting the development of advanced telephony applications. We introduce a declarative language to define the entities of a target telephony application area. This definition is passed to a generator to produce a Java programming framework, dedicated to the application area. The generated frameworks provide service discovery and high-level communication mechanisms. These mechanisms are automatically mapped into SIP, making our approach compatible with existing SIP infrastructures and entities. Our work has been validated on various advanced telephony applications.


Interaction Mode Service Discovery Service Class Instant Messaging Service Broker 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    JAIN-SIP, JAVA API for SIP Signaling,
  2. 2.
  3. 3.
    OpenSER - the open source SIP server,
  4. 4.
    SUN microsystems, Java Media Framework API (JMF),
  5. 5.
    X10 communication protocol,
  6. 6.
    Apel, S., Bohm, K.: Towards the development of ubiquitous middleware product lines. In: Gschwind, T., Mascolo, C. (eds.) SEM 2004. LNCS, vol. 3437, pp. 137–153. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  7. 7.
    Berger, S., Schulzrinne, H., Sidiroglou, S., Wu, X.: Ubiquitous computing using SIP. In: NOSSDAV 2003: Proceedings of the 13th international workshop on Network and operating systems support for digital audio and video, pp. 82–89. ACM, New York (2003)Google Scholar
  8. 8.
    Burgy, L., Consel, C., Latry, F., Lawall, J., Palix, N., Réveillère, L.: Language technology for Internet-telephony service creation. In: IEEE International Conference on Communications (June 2006)Google Scholar
  9. 9.
    Campbell, B., Rosenberg, J., Schulzrinne, H., Huitema, C., Gurle, D.: Session initiation protocol (SIP) extension for instant messaging. RFC 3428, IETF (2002)Google Scholar
  10. 10.
    Chou, W., Li, L., Liu, F.: Web service enablement of communication services. In: ICWS 2005: Proceedings of the IEEE International Conference on Web Services, Washington, DC, USA, 2005, pp. 393–400. IEEE Computer Society Press, Los Alamitos (2005)Google Scholar
  11. 11.
    Eisler, M.: XDR: External Data Representation Standard. RFC 4506, IETF (May 2006)Google Scholar
  12. 12.
    Ekman, T., Hedin, G.: The JastAdd extensible Java compiler. In: OOPSLA 2007: Proceedings of the 22nd annual ACM SIGPLAN conference on Object oriented programming systems and applications, pp. 1–18. ACM Press, New York (2007)Google Scholar
  13. 13.
    Ekman, T., Hedin, G.: The JastAdd system – modular extensible compiler construction. Science of Computer Programming 69(1-3), 14–26 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    Glitho, R., Poulin, A.: A high-level service creation environment for Parlay in a SIP environment. In: ICC 2002. IEEE International Conference on Communications, vol. 4, pp. 4:2008–2013 (2002)Google Scholar
  15. 15.
    Handley, M., Jacobson, V.: SDP: Session Description Protocol. RFC 2327, IETF (1998)Google Scholar
  16. 16.
    Hedin, G., Magnusson, E.: JastAdd: an aspect-oriented compiler construction system. Science of Computer Programming 47(1), 37–58 (2003)CrossRefzbMATHGoogle Scholar
  17. 17.
    Java Community Process. SIP Servlet API (2003),
  18. 18.
    Jiang, W., Lennox, J., Narayanan, S., Schulzrinne, H., Singh, K., Wu, X.: Integrating Internet telephony services. IEEE Internet Computing 6(3), 64–72 (2002)CrossRefGoogle Scholar
  19. 19.
    Jouve, W., Ibrahim, N., Réveillère, L., Le Mouël, F., Consel, C.: Building home monitoring applications: From design to implementation into the Amigo middleware. In: ICPCA 2007: IEEE International Conference on Pervasive Computing and Applications, pp. 231–236 (2007)Google Scholar
  20. 20.
    Khurana, S., Gurung, P., Dutta, A.: Device Message Protocol (DMP): An XML based format for wide area communication with networked appliances. Internet draft, IETF (2000)Google Scholar
  21. 21.
    Klyne, G., Atkins, D.: Common Presence and Instant Messaging (CPIM): Message format. RFC 3862, IETF (2004)Google Scholar
  22. 22.
    Krishnamurthy, S., Lange, L.: Distributed interactions with wireless sensors using TinySIP for hospital automation. In: PerSeNS 2008: The 4th International Workshop on Sensor Networks and Systems for Pervasive Computing, Hong-Kong, China. IEEE Computer Society Press, Los Alamitos (2008)Google Scholar
  23. 23.
    Latry, F., Mercadal, J., Consel, C.: Staging Telephony Service Creation: A Language Approach. In: Principles, Systems and Applications of IP Telecommunications, IPTComm, USA. ACM Press, New-York (July 2007)Google Scholar
  24. 24.
    Liu, F., Chou, W., Li, L., Li, J.: WSIP - Web service SIP endpoint for converged multimedia/multimodal communication over IP. In: ICWS 2004: Proceedings of the IEEE International Conference on Web Services, Washington, DC, USA, p. 690. IEEE Computer Society Press, Los Alamitos (2004)Google Scholar
  25. 25.
    Moyer, S., Marples, D., Tsang, S.: A protocol for wide area secure networked appliance communication. Communications Magazine, IEEE 39(10), 52–59 (2001)CrossRefGoogle Scholar
  26. 26.
    Niemi, A.: Session initiation protocol (SIP) extension for event state publication. RFC 3903, IETF (2004)Google Scholar
  27. 27.
    Oki, B., Pfluegl, M., Siegel, A., Skeen, D.: The information bus: an architecture for extensible distributed systems. In: SOSP 1993: Proceedings of the fourteenth ACM symposium on Operating systems principles, pp. 58–68. ACM Press, New York (1993)CrossRefGoogle Scholar
  28. 28.
    Roach, A.B.: Session Initiation Protocol (SIP)-specific event notification. RFC 3265, IETF (2002)Google Scholar
  29. 29.
    Rosenberg, J.: A presence event package for the session initiation protocol SIP: Session Initiation Protocol. RFC 3856, IETF (2004)Google Scholar
  30. 30.
    Rosenberg, J.: A watcher information event template-package for the Session Initiation Protocol (SIP). RFC 3857, IETF (2004)Google Scholar
  31. 31.
    Rosenberg, J., Lennox, J., Schulzrinne, H.: Programming Internet telephony services. IEEE Internet Computing 3(3), 63–72 (1999)CrossRefGoogle Scholar
  32. 32.
    Rosenberg, J., Schulzrinne, H.: An offer/answer model with the Session Description Protocol (SDP). RFC 3264, IETF (2002)Google Scholar
  33. 33.
    Rosenberg, J., et al.: SIP: Session Initiation Protocol. RFC 3261, IETF (June 2002)Google Scholar
  34. 34.
    Schulzrinne, H., Casner, S., Frederick, R., Jacobson, V.: RTP: A transport protocol for real-time applications. RFC 3550, IETF (2003)Google Scholar
  35. 35.
    Shacham, R., Schulzrinne, H., Thakolsri, S., Kellerer, W.: Ubiquitous device personalization and use: The next generation of IP multimedia communications. ACM Trans. Multimedia Comput. Commun. Appl. 3(2), 12 (2007)CrossRefGoogle Scholar
  36. 36.
    Sugano, H., Fujimoto, S., Klyne, G., Bateman, A., Carr, W., Peterson, J.: Presence Information Data Format (PIDF). RFC 3863, IETF (2004)Google Scholar
  37. 37.
    Sun Microsystems. The JAIN SIP API specification v1.1. Technical report, Sun Microsystems (June 2003)Google Scholar
  38. 38.
    Tsang, S., Moyer, S., Marples, D.: SIP extensions for communicating with networked appliances. Internet draft, IETF (May 2000)Google Scholar
  39. 39.
    Vaha-Sipila, A.: URLs for telephone calls. RFC 2806, IETF (2000)Google Scholar
  40. 40.
    Wu, X., Schulzrinne, H.: Programmable end system services using SIP. In: Proceedings of The IEEE International Conference on Communications 2002. IEEE, Los Alamitos (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Wilfried Jouve
    • 1
  • Nicolas Palix
    • 1
  • Charles Consel
    • 1
  • Patrice Kadionik
    • 2
  1. 1.INRIA / LaBRIFrance
  2. 2.IMS / University of BordeauxTalence CedexFrance

Personalised recommendations