1 / 26

ECE355 Project SIP Applications

ECE355 Project SIP Applications. Tiuley Alguindigue talguind@ecemail.uwaterloo.ca. Overview. SIP COMMUNICATOR JAIN-SIP-PRESENCE-PROXY Eclipse Projects Setup Basic CVS commands Running Apps Making a SIP Phone Call. Taken from http://www.iptel.org/sip/siptutorial.pdf.

nolcha
Télécharger la présentation

ECE355 Project SIP Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ECE355 ProjectSIP Applications Tiuley Alguindigue talguind@ecemail.uwaterloo.ca

  2. Overview • SIP COMMUNICATOR • JAIN-SIP-PRESENCE-PROXY • Eclipse Projects Setup • Basic CVS commands • Running Apps • Making a SIP Phone Call

  3. Taken from http://www.iptel.org/sip/siptutorial.pdf

  4. Taken from http://www.iptel.org/sip/siptutorial.pdf

  5. SIP COMMUNICATOR • A software-based IP phone that runs on a PCaudio/video. • You can use SIP COMMUNICATOR to place VoIP phone calls between two PCs or between a PC and an IP Phone(such as the one in the E2-2363 Lab) • A SIP User Agent in Java. • Can act as a client: creates a SIP request and sends it. • Also as a server: generates a response to a SIP request. • Based on JAIN SIP libraries and JMF (More info on the architecture at Emil Ivov’s project site http://www.emcho.com/) • Project info and download at https://sip-communicator.dev.java.net/ • ECE355 project will be based in the alpha version for Windows (sip-communicator-windows.zip).

  6. SIP COMMUNICATOR

  7. JAIN-SIP-PRESENCE-PROXY • SIP Proxy, SIP Registar, and SIP Presence server. • SIP proxy servers help route requests to the user's current location, authenticate and authorize users for services, implement provider call-routing policies, and provide features to users. • SIP Registar servers allows users to upload their current locations for use by proxy servers. • Based on JAIN SIP libraries • Project info and download at http://snad.ncsl.nist.gov/proj/iptel/

  8. Eclipse Projects SetupCVS Repositories in Group Accounts • You create your projects in Eclipse importing the source code from your group account in UNIX. • There is a CVS repository in each group account called sip-communicator.cvs • In this CVS Repository, there are projects that contain the base source code for the ECE355 project: • Sip-Comunicator-Fall05 • sipproxy

  9. Eclipse Projects Setup • For each project SIP COMMUNICATOR and JAIN-SIP-PRESENCE-PROXY, you will need to: • Checkout code from group CVS repository • Set up Run Configuration parameters in Eclipse • May need to change configuration settings for the project in project .xml files.

  10. Eclipse Projects Setup Checking Out Project from CVS • File|New|Project • In Project Wizard select CVS|Checkout Project from CVS • Next, select option “Create a new repository location” • Repository path is /home/e355gNN/sip-communicator.cvs NN : Group Number • User ID, and Password for UNIX Accounts.

  11. Eclipse Projects Setup Checking Out Project from CVS

  12. Eclipse Projects Setup Checking Out Project from CVS

  13. Eclipse Projects Setup Checking Out Project from CVS

  14. Eclipse Projects Setup Checking Out Project from CVS

  15. Eclipse Projects Setup Creating Run Configuration • Run|Run.. • New Configuration • Project Name • Main Class • Arguments (Program or Java VM)

  16. SIP COMMUNICATORCreating Run Configuration

  17. SIP COMMUNICATOR Creating Run Configuration

  18. SIP PROXY Creating Run Configuration

  19. SIP PROXY Creating Run Configuration

  20. Running AppsSIP COMMUNICATOR • SIP COMMUNICATOR reads execution parameters from sip-communicator.xml file • Parameters in this file are currently set so that SIP COMMUNICATOR will use the SIP Services provided by JAIN-SIP-PRESENCE-PROXY running locally (127.0.0.1). <sip> <PUBLIC_ADDRESS value="talguind"/> <TRANSPORT value=""/> <REGISTRAR_ADDRESS value="127.0.0.1:4000"/> <USER_NAME value="tiuley"/> <STACK_PATH value="gov.nist"/> <PREFERRED_LOCAL_PORT value=""/> <DISPLAY_NAME value="Tiuley Alguindigue"/> <REGISTRAR_TRANSPORT value="UDP"/> <REGISTRATIONS_EXPIRATION value="3600"/> <REGISTRAR_PORT value="5060"/> <DEFAULT_DOMAIN_NAME value="127.0.0.1:4000"/> <DEFAULT_AUTHENTICATION_REALM value="127.0.0.1:4000"/> <WAIT_UNREGISTGRATION_FOR value="1100"/> <SAME_USER_EVERYWHERE value="true"/> ….. </sip> JAIN-SIP-PRESENCE-PROXY IP Address and Port SIP COMMUNICATOR Port

  21. Running AppsSIP COMMUNICATOR • Parameters in sip-communicator.xml file also indicate the ports used for audio/video communication <sip> <media> <PREFERRED_AUDIO_ENCODING value="9"/> <PREFERRED_VIDEO_ENCODING value="26"/> <MEDIA_SOURCE value=""/> <MEDIA_BUFFER_LENGTH value="100"/> <IP_ADDRESS value=""/> <AUDIO_PORT value="22224"/> <VIDEO_PORT value="22222"/> </media> ….. </sip> • More about SIP COMMUNICATOR parameters at https://sip-communicator.dev.java.net/instructions.html Default Values are AUDIO 22224 VIDEO 22222

  22. Running AppsJAIN-SIP-PRESENCE-PROXY • SIP PROXY uses reads parameters from configuration.xml file • Parameters in this file are currently set so the SIP proxy runs in the same machine using Port 4000. <CONFIGURATION> <SIP_STACK stack_name="nist-proxy" stack_IP_address="127.0.0.1" router_path="gov.nist.sip.proxy.router.ProxyRouter" <?xml version='1.0' encoding='us-ascii'?> max_connections="20" thread_pool_size="20" > <LISTENING_POINT port="4000" transport="udp" /> <LISTENING_POINT port="4000" transport="tcp" /> <DOMAIN domain="there.com" /> <DOMAIN domain="pingtel.com" /> <DOMAIN domain="ubi.com" /> <DOMAIN domain="hotmail.com" /> <DOMAIN domain="nist.gov" /> <DOMAIN domain="nitrogen.epact.se" /> </SIP_STACK> Local Address Port

  23. Making a SIP Phone CallPorts used for SIP 4000 PROXY 5060 5060 SIP COM 1 SIP COM 2

  24. Making a SIP Phone CallAll ports 4000 PROXY 5060 5060 22222(Video) SIP COM 1 SIP COM 2 22224(Audio)

  25. Making a SIP Phone Call • For testing, you can run the two instances of SIP Communicator in one machine. You will need to change the SIP port, Audio and Video ports in the sip-communicator.xml files for the second instance.

  26. References • SIP COMMUNICATOR: https://sip-communicator.dev.java.net/ http://www.emcho.com/ • PROXY: http://snad.ncsl.nist.gov/proj/iptel/ • SIP: http://rfc.net/rfc3261.html

More Related