1 / 14

PJSUA – A command line SIP user agent

PJSUA – A command line SIP user agent. Advisor: Quincy Wu Reporter: Ni-Ya Li. Outline. Getting Started PJSUA Option Application Menu (User Interface) Samples of PJSIP and PJMEDIA Demo Reference. Getting Started. Download Source Code

kamin
Download Presentation

PJSUA – A command line SIP user agent

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. PJSUA – A command line SIP user agent Advisor: Quincy Wu Reporter: Ni-Ya Li

  2. Outline • Getting Started • PJSUA • Option • Application Menu (User Interface) • Samples of PJSIP and PJMEDIA • Demo • Reference

  3. Getting Started • Download Source Code • http://www.pjsip.org/release/1.5/pjproject-1.5.tar.bz2 // newest version is 1.5 • Install (Linux) • # tar [-z] –vxf pjproject-1.5.tar.bz2 • # cd pjproject-1.5 • # ./configure • # make • # make install (need superuser privilege) IPv6 support must be enabled during build process by declaring “ #define PJ_HAS_IPV6 1” in your config_site.h (/pjlib/include/pj/config_site.h)

  4. PJSUA – RUN • # cd /pjproject-1.5/pjsip-apps/bin/ • # ./pjsua [option] [SIP URL to call]

  5. PJSUA – Options • General Options: • --help, show the command line help • --version, display version • Account Options: • --id=URL, ex: --id sip:linear@test.com • --registrar=URL, ex: --registrar sip:test.com • Authentication Options: • --username=STRING, ex: --username linear • --password=STRING,ex: --password secret

  6. PJSUA – Options (cont.) • Transport Options: • --ipv6, added in v1.2 • --local-port=PORT, default is 5060 for UDP and TCP • Media Options: • --add-codec=NAME, pcma, pcmu, speex/8000, speex/16000, speex/32000, ilbc, gsm, l16/44100/2, etc. • --play-file=WAVFILE, play the WAV file to incoming call • --auto-loop, loop-back call to itself

  7. PJSUA – Options (cont.) • Media Transport Options • --rtp-port=N, default is 4000 • --use-ice, enable ICE (Interactive Connectivity Establishment) • --use-turn, enable TURN(Traversal Using Relay NAT) • Buddy List • --add-buddy=URL, like yellow pages

  8. PJSUA – Options (cont.) • User Agent Options: • --auto-answer=CODE, answer incoming call with specific code, default is 100(Trying) • --max-calls=N, Maximum number of incoming calls, default is 4

  9. Application Menu(User Interface)

  10. Architecture

  11. Samples of PJSIP and PJMEDIA • PJSIP • simpleua – simple UA application, be able receive a call • simple_pjsua – with registration, more advanced than simpleua • PJMEDIA • playfile – playing wav file to sound device • recfile – capture audio to wav file • streamutil – stream media file to remote peer using RTP • siprtp – measure the network quality

  12. Demo – IPv4 <SIP server> 10.10.59.91 IPv4 SIP signaling IPv4 SIP signaling UA1(PJSUA) UA2(X-Lite) IPv4 RTP transmitting

  13. Demo – IPv6 <SIP server> 2001:e10:6840:21:21e:90ff:fe18:4cc IPv6 SIP signaling IPv6 SIP signaling UA1(PJSUA) UA2(PJSUA) IPv6 RTP transmitting 13

  14. Reference • http://www.pjsip.org/ - PJSIP Home Page • http://www.pjsip.org/pjsua.htm - PJSUA Manual Page • http://www.pjsip.org/pjmedia/docs/html/page_pjmedia_samples.htm - PJMEDIA and PJMEDIA-CODEC Examples

More Related