Project

General

Profile

Sip session » History » Version 30

Adrian Georgescu, 09/08/2009 11:02 PM

1 2 Adrian Georgescu
== sip_session ==
2 1 Adrian Georgescu
3 2 Adrian Georgescu
[[TOC(SipTesting*, sip_*, depth=2)]]
4
5 4 Adrian Georgescu
=== Description ===
6 5 Adrian Georgescu
7 28 Adrian Georgescu
'''sip_session''' script is a show-case for the powerful features of SIP SIMPLE software development kit related to establishing, modifying and terminating SIP sessions with multiple media types. 
8
9 30 Adrian Georgescu
The script registers with a SIP registrar, handles multiple parallel incoming or outgoing SIP sessions with combinations of media types based on RTP and MSRP protocols, handles NAT traversal using ICE and MSRP relay extension, switches between sessions, provides control for the input, output and alert audio devices, in-call controls like Hold, Mute and Recording of RTP audio streams, enable text input and output for Instant Messaging and delivers real-time trace both on console or save in a file of all involved protocols.
10 28 Adrian Georgescu
11
=== Example ===
12 1 Adrian Georgescu
13 27 Adrian Georgescu
{{{
14
adigeo@ag-imac3:~$sip_session 
15
Using account 31208005169@ag-projects.com
16
Logging SIP trace to file "/Users/adigeo/Desktop/FileTransfers/sip_trace.txt"
17
Logging notifications trace to file "/Users/adigeo/Desktop/FileTransfers/notifications_trace.txt"
18
Available audio input devices: None, system_default, Built-in Input, Built-in Microphone, Logitech Wireless Headset
19
Available audio output devices: None, system_default, Built-in Output, Logitech Wireless Headset
20
Using audio input device: Logitech Wireless Headset
21
Using audio output device: Built-in Output
22
Using audio alert device: Built-in Output
23
Type /help to see a list of available commands.
24
2009-09-07 09:20:48 Registered contact "sip:koincezd@192.168.1.6:54441" for sip:31208005169@ag-projects.com at 81.23.228.150:5060;transport=udp (expires in 600 seconds).
25
Other registered contacts:
26
  sip:31208005169@192.168.1.123:5060 (expires in 176 seconds)
27
  sip:31208005169@192.168.1.1;uniq=5B2860C44383A3D6705629A7E1FB8 (expires in 526 seconds)
28
31208005169@ag-projects.com> /help
29
General commands:
30
  /call {user[@domain]}: call the specified user using audio and chat
31
  /audio {user[@domain]} [+chat]: call the specified user using audio and possibly chat
32
  /chat {user[@domain]} [+audio]: call the specified user using chat and possibly audio
33
  /next: select the next connected session
34
  /prev: select the previous connected session
35
  /sessions: show the list of connected sessions
36
  /trace [[+|-]sip] [[+|-]pjsip] [[+|-]notifications]: toggle/set SIP trace on the console (ctrl-x s | ctrl-x j | ctrl-x n)
37
  /rtp [on|off]: toggle/set printing RTP statistics on the console (ctrl-x p)
38
  /mute [on|off]: mute the microphone (ctrl-x m)
39
  /input [device]: change audio input device (ctrl-x i)
40
  /output [device]: change audio output device (ctrl-x o)
41
  /alert [device]: change audio alert device (ctrl-x a)
42
  /echo [+|-][value]: adjust echo cancellation (ctrl-x < | ctrl-x >)
43
  /quit: quit the program (ctrl-x q)
44
  /help: display this help message (ctrl-x ?)
45
In call commands:
46
  /hangup: hang-up the active session (ctrl-x h)
47
  /record [on|off]: toggle/set audio recording (ctrl-x r)
48
  /hold [on|off]: hold/unhold (ctrl-x SPACE)
49
  /add {chat|audio}: add a stream to the current session
50
  /remove {chat|audio}: remove a stream from the current session
51
Detected NAT type: Port Restricted
52
}}}