Sip register

Version 28 (Adrian Georgescu, 08/19/2009 02:07 pm)

1 16 Adrian Georgescu
== sip_register ==
2 1 Adrian Georgescu
3 17 Adrian Georgescu
[[TOC(SipTesting*, sip_*, depth=2)]]
4 17 Adrian Georgescu
5 16 Adrian Georgescu
=== Description ===
6 6 Adrian Georgescu
7 12 Adrian Georgescu
SIP protocol offers a discovery capability. If a user wants to initiate a session
8 12 Adrian Georgescu
with another user, he must discover the current host(s) at which the
9 8 Adrian Georgescu
destination user is reachable. To do this, SIP network elements consult an
10 8 Adrian Georgescu
abstract service known as a location service, which provides address
11 8 Adrian Georgescu
bindings for a particular domain. Registration entails sending a REGISTER
12 8 Adrian Georgescu
request to a special type of UAS known as a registrar.  A registrar acts as
13 8 Adrian Georgescu
the front end to the location service for a domain, reading and writing
14 8 Adrian Georgescu
mappings based on the contents of REGISTER requests. This location service
15 8 Adrian Georgescu
is then typically consulted by a proxy server that is responsible for
16 8 Adrian Georgescu
routing requests for that domain.
17 1 Adrian Georgescu
18 1 Adrian Georgescu
This script implements REGISTER method, which registers the contact (ip, port and transport) for a given address of record (SIP address).
19 25 Adrian Georgescu
20 25 Adrian Georgescu
[[Image(http://www.tech-invite.com/img/cf3665/cf3665-2x.gif)]]
21 8 Adrian Georgescu
22 6 Adrian Georgescu
Source code: [source:scripts/sip_register.py scripts/sip_register.py]
23 3 Adrian Georgescu
24 1 Adrian Georgescu
{{{
25 22 Adrian Georgescu
adigeo@ag-imac3:~$sip_register -h
26 22 Adrian Georgescu
Usage: sip_register [options]
27 1 Adrian Georgescu
28 1 Adrian Georgescu
This script will register a SIP account to a SIP registrar and refresh it
29 1 Adrian Georgescu
while the program is running. When Ctrl+D is pressed it will unregister.
30 1 Adrian Georgescu
31 1 Adrian Georgescu
Options:
32 1 Adrian Georgescu
  -h, --help            show this help message and exit
33 28 Adrian Georgescu
  -a NAME, --account=NAME
34 28 Adrian Georgescu
                        The name of the account to use. If not supplied, the
35 28 Adrian Georgescu
                        default account will be used.
36 28 Adrian Georgescu
  -c FILE, --config-file=FILE
37 28 Adrian Georgescu
                        The path to a configuration file to use. This
38 28 Adrian Georgescu
                        overrides the default location of the configuration
39 28 Adrian Georgescu
                        file.
40 1 Adrian Georgescu
  -s, --trace-sip       Dump the raw contents of incoming and outgoing SIP
41 1 Adrian Georgescu
                        messages (disabled by default).
42 1 Adrian Georgescu
  -j, --trace-pjsip     Print PJSIP logging output (disabled by default).
43 27 Adrian Georgescu
  -n, --trace-notifications
44 27 Adrian Georgescu
                        Print all notifications (disabled by default).
45 1 Adrian Georgescu
  -r MAX_REGISTERS, --max-registers=MAX_REGISTERS
46 1 Adrian Georgescu
                        Max number of REGISTERs sent (default 1, set to 0 for
47 1 Adrian Georgescu
                        infinite).
48 28 Adrian Georgescu
  -b, --batch           Run the program in batch mode: reading input from the
49 28 Adrian Georgescu
                        console is disabled. This is particularly useful when
50 28 Adrian Georgescu
                        running this script in a non-interactive environment.
51 28 Adrian Georgescu
52 27 Adrian Georgescu
53 7 Adrian Georgescu
}}}
54 1 Adrian Georgescu
55 1 Adrian Georgescu
=== Example ===
56 1 Adrian Georgescu
57 1 Adrian Georgescu
{{{
58 22 Adrian Georgescu
adigeo@ag-imac3:~$sip_register   
59 22 Adrian Georgescu
Using account 31208005169@ag-projects.com
60 22 Adrian Georgescu
Registration succeeded at 85.17.186.7:5060;transport=udp.
61 22 Adrian Georgescu
Contact: sip:xqdwrctb@192.168.1.6:58481 (expires in 600 seconds).
62 1 Adrian Georgescu
Other registered contacts:
63 22 Adrian Georgescu
  sip:31208005169@192.168.1.123:5060 (expires in 262 seconds)
64 22 Adrian Georgescu
  sip:31208005169@192.168.1.122:5062;line=634g6j67 (expires in 360 seconds)
65 22 Adrian Georgescu
  sip:31208005169@192.168.1.1;uniq=5B2860C44383A3D6705629A7E1FB8 (expires in 734 seconds)
66 22 Adrian Georgescu
Registration ended: 200 OK.
67 1 Adrian Georgescu
}}}