Sip register » History » 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 | |||
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 | 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 | abstract service known as a location service, which provides address |
||
11 | bindings for a particular domain. Registration entails sending a REGISTER |
||
12 | request to a special type of UAS known as a registrar. A registrar acts as |
||
13 | the front end to the location service for a domain, reading and writing |
||
14 | mappings based on the contents of REGISTER requests. This location service |
||
15 | is then typically consulted by a proxy server that is responsible for |
||
16 | routing requests for that domain. |
||
17 | 1 | Adrian Georgescu | |
18 | 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 | [[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 | Usage: sip_register [options] |
||
27 | 1 | Adrian Georgescu | |
28 | This script will register a SIP account to a SIP registrar and refresh it |
||
29 | while the program is running. When Ctrl+D is pressed it will unregister. |
||
30 | |||
31 | Options: |
||
32 | -h, --help show this help message and exit |
||
33 | 28 | Adrian Georgescu | -a NAME, --account=NAME |
34 | The name of the account to use. If not supplied, the |
||
35 | default account will be used. |
||
36 | -c FILE, --config-file=FILE |
||
37 | The path to a configuration file to use. This |
||
38 | overrides the default location of the configuration |
||
39 | file. |
||
40 | 1 | Adrian Georgescu | -s, --trace-sip Dump the raw contents of incoming and outgoing SIP |
41 | messages (disabled by default). |
||
42 | -j, --trace-pjsip Print PJSIP logging output (disabled by default). |
||
43 | 27 | Adrian Georgescu | -n, --trace-notifications |
44 | Print all notifications (disabled by default). |
||
45 | 1 | Adrian Georgescu | -r MAX_REGISTERS, --max-registers=MAX_REGISTERS |
46 | Max number of REGISTERs sent (default 1, set to 0 for |
||
47 | infinite). |
||
48 | 28 | Adrian Georgescu | -b, --batch Run the program in batch mode: reading input from the |
49 | console is disabled. This is particularly useful when |
||
50 | running this script in a non-interactive environment. |
||
51 | |||
52 | 27 | Adrian Georgescu | |
53 | 7 | Adrian Georgescu | }}} |
54 | 1 | Adrian Georgescu | |
55 | === Example === |
||
56 | |||
57 | {{{ |
||
58 | 22 | Adrian Georgescu | adigeo@ag-imac3:~$sip_register |
59 | Using account 31208005169@ag-projects.com |
||
60 | Registration succeeded at 85.17.186.7:5060;transport=udp. |
||
61 | 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 | sip:31208005169@192.168.1.122:5062;line=634g6j67 (expires in 360 seconds) |
||
65 | sip:31208005169@192.168.1.1;uniq=5B2860C44383A3D6705629A7E1FB8 (expires in 734 seconds) |
||
66 | Registration ended: 200 OK. |
||
67 | 1 | Adrian Georgescu | }}} |