3-digit reply code introduced to FIFO server
[sip-router] / test / sf.cfg
1 #
2 # $Id$
3 #
4 # iptel.org real world configuration
5 #
6
7 # ----------- global configuration parameters ------------------------
8
9 #debug=8          # debug level (cmd line: -dddddddddd)
10 debug=3
11 fork=no
12 children=2
13 #log_stderror=no        # (cmd line: -E)
14 log_stderror=yes        # (cmd line: -E)
15 check_via=yes     # (cmd. line: -v)
16 dns=no           # (cmd. line: -r)
17 rev_dns=no      # (cmd. line: -R)
18 port=5060
19 #port=8060
20
21 syn_branch=1
22 fifo="/tmp/ser_fifo"
23
24 # advertise IP address in Via (as opposed to advertising DNS name
25 # which is annoying for downstream servers and some phones can
26 # not handle DNS at all)
27 #listen=195.37.77.100
28 #listen=127.0.0.1
29
30 # ------------------ module loading ----------------------------------
31
32 loadmodule "../sip_router/modules/sl/sl.so"
33 loadmodule "../sip_router/modules/print/print.so"
34 loadmodule "../sip_router/modules/tm/tm.so"
35 loadmodule "../sip_router/modules/acc/acc.so"
36 loadmodule "../sip_router/modules/rr/rr.so"
37 loadmodule "../sip_router/modules/maxfwd/maxfwd.so"
38 loadmodule "../sip_router/modules/usrloc/usrloc.so"
39 loadmodule "../sip_router/modules/registrar/registrar.so"
40
41 # ----------------- setting module-specific parameters ---------------
42
43 # -- usrloc params --
44
45
46 # -- acc params --
47 # report ACKs too for sake of completeness -- as we account PSTN
48 # destinations which are RR, ACKs should show up
49 modparam("acc", "report_ack", 1)
50 # don't bother me with early media reports (I don't like 183 
51 # too much anyway...ever thought of timer C hitting after
52 # listening to music-on-hold for five minutes?)
53 modparam("acc", "early_media", 0)
54 modparam("acc", "log_level", 1)
55 # that is the flag for which we will account -- don't forget to
56 # set the same one :-)
57 modparam("acc", "acc_flag", 3 )
58 # we are interested only in succesful transactions
59 modparam("acc", "failed_transactions", 0 )
60 modparam("acc", "missed_flag", 2 )
61
62 # -- tm params --
63 modparam("tm", "fr_timer", 103 )
64 modparam("tm", "retr_timer1p1", 4 )
65 modparam("tm", "fr_inv_timer", 4 )
66 modparam("tm", "wt_timer", 8 )
67 modparam("tm", "noisy_ctimer", 0 )
68
69 # -------------------------  request routing logic -------------------
70
71 # main routing logic
72
73 route{
74         # for testing purposes, simply okay all REGISTERs
75         if (method=="REGISTER") {
76                 log("REGISTER");
77                 sl_send_reply("200", "ok");
78                 #t_replicate("localhost", "9");
79                 break;
80         };
81
82         if (!t_relay_to("fox.iptel.org", "12345" )) {
83                 sl_reply_error();
84         };
85         /* t_reply("100", "trying"); */
86         break;
87
88         #rewritehost("iptel.org");
89         if (!t_relay()) {
90                 sl_reply_error();
91         };
92         break;
93
94         # print a message if a call was missed
95         setflag(2);
96
97         rewriteuri("a@blb.com");
98         append_branch("b@blb.com");
99         append_branch("c@blb.com");
100
101 #       forward( "fox.iptel.org", 9 );
102         t_relay_to("bat.iptel.org", "5088");
103 #       t_relay();
104 }
105
106 route[3] {
107         lookup("location");
108 }
109
110 reply_route[1] {
111         # revert to original inbound uri -- good if we want
112         # to modify it; if we rewrite it completely as in the 
113         # line after it, it is actually useless
114         revert_uri();
115         # this one will return 404 too
116         rewriteuri("sip:nonsense@iptel.org");
117         append_branch();
118         # and if we don't yet get a positive reply (we won't --
119         # we will receive 404", try another forking destination
120         t_on_negative("2");
121 }
122
123 reply_route[2] {
124         revert_uri();
125         rewriteuri("sip:foo@iptel.org");
126         # give it one more try; if it fails too (it will, there
127         # is no foo), a lowest-code message will be relayed
128         # upstream
129         append_branch();
130 }