SIP APPLICATIONS Developing SIP applications using OpenSER, WeSIP, HTTP and Java...yes you can ! SAN JOSE 17-3-2008
WHY WOULD I NEED TO DO THAT ? IMPRESS YOUR BOSS FIND SOMETHING WEIRD FOR YOUR THESIS EXPAND THE BOUNDARIES OF YOUR KNOWLEDGE BEYOND C (YES!! LIVE EXISTS BEYOND C!!) CREATE  RICH MULTIPROTOCOL DISTRIBUTED APPLICATIONS
APPLICATION EXAMPLES A JAVASCRIPT CLICK-2-CALL WITH REAL-TIME REPORT OF CALL STATUS
APPLICATION EXAMPLES A PREPAID SYSTEM WITH ASTERISK OR AN VXML MEDIA SERVER
A CALEA REAL-TIME INTERCEPTION SYSTEM APPLICATION EXAMPLES
A WEB 2.0 PBX SYSTEM APPLICATION EXAMPLES
THEY ALL HAVE IN COMMON THAT ARE SOMEHOW COMPLEX APPLICATIONS INVOLVE SEVERAL COMMUNICATION PROTOCOLS AND SEVERAL SYSTEMS “ DIVIDE AND CONQUER!!” it always results. HERE IS WHERE WESIP COMES APPLICATION EXAMPLES
WeSIP WeSIP is a  SIP Application Server built on top of OpenSER
WeSIP WeSIP adds a  SIP Servlet  programming layer to OpenSER You can develop your services and applications using existing OpenSER modules (like nat_traversal,registrar,etc...) ...while at the same time enjoying the java programming language facilities Huge set of java libraries SOAP,EJB,JDBC.... WeSIP helps you to integrate OpenSER with other  systems and protocols enabling the offer of a new set services
OpenSER SIP HTTP WeSIP J2EE  environment (EJBs, Servlet, JNDI, JMX, JMS, etc) Low level, telephony-related functions: -Call Routing (LCR) -Access Control (ACL, Auth,etc.) -Accounting (Radius) -Nat Traversal -UsrLoc -Etc... usrs Application Logic B2BUA Web or SIP triggered PBX functionality (JAVA APIs) Trigger IVR Trigger Media Services Intelligent call routing Annoying (no! you're not!) Business Logic -Provisioning -Invoking thrid party services -Billing -(Accounting) -Statistics -... Architecture OTHER  COMM PROTOCOL
Architecture OpenSER script: Domain Specific Language (DSL) Hiper efficient Call handling Feature-rich: auth, acc, loc, lcr, radius, etc. JAVA: General Purpose Language SipServlet: SIP (& HTTP) Protocl Programming with Servlets J2EE: Business Logic programming Environment.
WeSIP OpenSER Integration WeSIP – OpenSER Integration
OpenSER DSL 1- Authenticate 2-Account 3-UsrLoc 4-Nat Traversal . . N-Invoke App-Server WeSIP OpenSER Integration
SIP SERVLET JAVA API!! JUST LIKE SIP INHERITS PART OF ITS BEHAVIOUR FROM HTTP, SIP SERVLET PROGRAMMING IS SIMILAR TO HTTP SERVLET PROGRAMMING DEFINED IN JAVA COMMUNITY STANDARD JSR116  NEW VERSION 1.1 DEFINED IN JSR289 COMING SOON
SIP SERVLET PROGRAMMING MODEL SIP SERVLET APPLICATIONS CONSIST OF SERVLETS RUNNING INSIDE A SERVLET CONTAINER
SIP SERVLET PROGRAMMING MODEL SERVLETS ARE WRITTEN IN JAVA AND  TRIGGERED UPON RECEPTION OF REQUESTS   AND RESPONSES
SIP SERVLET PROGRAMMING MODEL SERVLETS ARE WRITTEN BY THE PROGRAMMER TO IMPLEMENT BUSINESS LOGIC WITH LOW PROTOCOL KNOWLEDGE REQUIRED PROGRAMMERS USE CONTAINER RESOURCES  SIP Resources Message creation reception and delivery Transaction Managemet Dialog Management Parallel/Sequential Proxying J2EE JNDI Resources Database Pooling Resource references  Environment entries
WeSIP site WWW.WESIP.EU Download (Free for non-commercial uses) Tutorial Sample Applications
THANK YOU Thanks for your time!!! More questions ?? [email_address]

Gines Gomez

  • 1.
    SIP APPLICATIONS DevelopingSIP applications using OpenSER, WeSIP, HTTP and Java...yes you can ! SAN JOSE 17-3-2008
  • 2.
    WHY WOULD INEED TO DO THAT ? IMPRESS YOUR BOSS FIND SOMETHING WEIRD FOR YOUR THESIS EXPAND THE BOUNDARIES OF YOUR KNOWLEDGE BEYOND C (YES!! LIVE EXISTS BEYOND C!!) CREATE RICH MULTIPROTOCOL DISTRIBUTED APPLICATIONS
  • 3.
    APPLICATION EXAMPLES AJAVASCRIPT CLICK-2-CALL WITH REAL-TIME REPORT OF CALL STATUS
  • 4.
    APPLICATION EXAMPLES APREPAID SYSTEM WITH ASTERISK OR AN VXML MEDIA SERVER
  • 5.
    A CALEA REAL-TIMEINTERCEPTION SYSTEM APPLICATION EXAMPLES
  • 6.
    A WEB 2.0PBX SYSTEM APPLICATION EXAMPLES
  • 7.
    THEY ALL HAVEIN COMMON THAT ARE SOMEHOW COMPLEX APPLICATIONS INVOLVE SEVERAL COMMUNICATION PROTOCOLS AND SEVERAL SYSTEMS “ DIVIDE AND CONQUER!!” it always results. HERE IS WHERE WESIP COMES APPLICATION EXAMPLES
  • 8.
    WeSIP WeSIP isa SIP Application Server built on top of OpenSER
  • 9.
    WeSIP WeSIP addsa SIP Servlet programming layer to OpenSER You can develop your services and applications using existing OpenSER modules (like nat_traversal,registrar,etc...) ...while at the same time enjoying the java programming language facilities Huge set of java libraries SOAP,EJB,JDBC.... WeSIP helps you to integrate OpenSER with other systems and protocols enabling the offer of a new set services
  • 10.
    OpenSER SIP HTTPWeSIP J2EE environment (EJBs, Servlet, JNDI, JMX, JMS, etc) Low level, telephony-related functions: -Call Routing (LCR) -Access Control (ACL, Auth,etc.) -Accounting (Radius) -Nat Traversal -UsrLoc -Etc... usrs Application Logic B2BUA Web or SIP triggered PBX functionality (JAVA APIs) Trigger IVR Trigger Media Services Intelligent call routing Annoying (no! you're not!) Business Logic -Provisioning -Invoking thrid party services -Billing -(Accounting) -Statistics -... Architecture OTHER COMM PROTOCOL
  • 11.
    Architecture OpenSER script:Domain Specific Language (DSL) Hiper efficient Call handling Feature-rich: auth, acc, loc, lcr, radius, etc. JAVA: General Purpose Language SipServlet: SIP (& HTTP) Protocl Programming with Servlets J2EE: Business Logic programming Environment.
  • 12.
    WeSIP OpenSER IntegrationWeSIP – OpenSER Integration
  • 13.
    OpenSER DSL 1-Authenticate 2-Account 3-UsrLoc 4-Nat Traversal . . N-Invoke App-Server WeSIP OpenSER Integration
  • 14.
    SIP SERVLET JAVAAPI!! JUST LIKE SIP INHERITS PART OF ITS BEHAVIOUR FROM HTTP, SIP SERVLET PROGRAMMING IS SIMILAR TO HTTP SERVLET PROGRAMMING DEFINED IN JAVA COMMUNITY STANDARD JSR116 NEW VERSION 1.1 DEFINED IN JSR289 COMING SOON
  • 15.
    SIP SERVLET PROGRAMMINGMODEL SIP SERVLET APPLICATIONS CONSIST OF SERVLETS RUNNING INSIDE A SERVLET CONTAINER
  • 16.
    SIP SERVLET PROGRAMMINGMODEL SERVLETS ARE WRITTEN IN JAVA AND TRIGGERED UPON RECEPTION OF REQUESTS AND RESPONSES
  • 17.
    SIP SERVLET PROGRAMMINGMODEL SERVLETS ARE WRITTEN BY THE PROGRAMMER TO IMPLEMENT BUSINESS LOGIC WITH LOW PROTOCOL KNOWLEDGE REQUIRED PROGRAMMERS USE CONTAINER RESOURCES SIP Resources Message creation reception and delivery Transaction Managemet Dialog Management Parallel/Sequential Proxying J2EE JNDI Resources Database Pooling Resource references Environment entries
  • 18.
    WeSIP site WWW.WESIP.EUDownload (Free for non-commercial uses) Tutorial Sample Applications
  • 19.
    THANK YOU Thanksfor your time!!! More questions ?? [email_address]