|
@@ -0,0 +1,61 @@
|
|
|
|
+# ----------- global configuration parameters ------------------------
|
|
|
|
+debug=9 # debug level (cmd line: -dddddddddd)
|
|
|
|
+fork=yes
|
|
|
|
+log_stderror=no # (cmd line: -E)
|
|
|
|
+children=1
|
|
|
|
+disable_tcp=yes
|
|
|
|
+
|
|
|
|
+# ------------------ module loading ----------------------------------
|
|
|
|
+mpath="../modules/"
|
|
|
|
+loadmodule "mysql/mysql.so"
|
|
|
|
+loadmodule "sl/sl.so"
|
|
|
|
+loadmodule "tm/tm.so"
|
|
|
|
+loadmodule "rr/rr.so"
|
|
|
|
+loadmodule "maxfwd/maxfwd.so"
|
|
|
|
+loadmodule "textops/textops.so"
|
|
|
|
+loadmodule "mi_fifo/mi_fifo.so"
|
|
|
|
+modparam("mi_fifo", "fifo_name", "/tmp/openser_fifo")
|
|
|
|
+
|
|
|
|
+loadmodule "usrloc/usrloc.so"
|
|
|
|
+modparam("usrloc", "db_mode", 1)
|
|
|
|
+
|
|
|
|
+loadmodule "registrar/registrar.so"
|
|
|
|
+#------------------------- request routing logic -------------------
|
|
|
|
+route{
|
|
|
|
+
|
|
|
|
+ if (!method=="REGISTER")
|
|
|
|
+ record_route();
|
|
|
|
+
|
|
|
|
+ if (loose_route()) {
|
|
|
|
+ # mark routing logic in request
|
|
|
|
+ append_hf("P-hint: rr-enforced\r\n");
|
|
|
|
+ route(1);
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ if (!uri==myself) {
|
|
|
|
+ append_hf("P-hint: outbound\r\n");
|
|
|
|
+ route(1);
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ if (uri==myself) {
|
|
|
|
+ if (method=="REGISTER") {
|
|
|
|
+ save("location");
|
|
|
|
+ exit;
|
|
|
|
+ };
|
|
|
|
+ if (!lookup("location")) {
|
|
|
|
+ sl_send_reply("404", "Not Found");
|
|
|
|
+ exit;
|
|
|
|
+ };
|
|
|
|
+ append_hf("P-hint: usrloc applied\r\n");
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ route(1);
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+route[1] {
|
|
|
|
+ if (!t_relay()) {
|
|
|
|
+ sl_reply_error();
|
|
|
|
+ };
|
|
|
|
+ exit;
|
|
|
|
+}
|