etc/uas.cfg
caf80ae6
 #
 # $Id$
 #
af156759
 # this example shows usage of ser as user agent
 # server which does some functionality (in this
 # example, 'log' is used to print a notification
 # on a new transaction) and behaves statefuly
 # (e.g., it retransmits replies on request
 # retransmissions)
caf80ae6
 
 # ----------- global configuration parameters ------------------------
 
 debug=3
 fork=no
 #children=2
 log_stderror=yes	# (cmd line: -E)
 check_via=yes     # (cmd. line: -v)
 dns=0           # (cmd. line: -r)
 rev_dns=0      # (cmd. line: -R)
 port=5068
 reply_to_via=no
 
 # advertise IP address in Via (as opposed to advertising DNS name
 # which is annoying for downstream servers and some phones can
 # not handle DNS at all)
 listen=195.37.77.100
 
 # ------------------ module loading ----------------------------------
 
 loadmodule "../sip_router/modules/sl/sl.so"
 loadmodule "../sip_router/modules/print/print.so"
 #loadmodule "../sip_router/modules/tm/tm.so"
 loadmodule "../sip_router/modules/usrloc/usrloc.so"
 
 # ----------------- setting module-specific parameters ---------------
 
 # -- usrloc params --
 
 modparam("usrloc", "use_database",   0)
 modparam("usrloc", "flush_interval", 3600)
 
 # -------------------------  request routing logic -------------------
 
 # main routing logic
 
 route{
 	# for testing purposes, simply okay all REGISTERs
 	if (method=="REGISTER") {
 		log("REGISTER");
 		sl_send_reply("200", "ok");
 		#t_replicate("localhost", "9");
 		break;
 	};
 	# print a message if a call was missed
 
 	if ( t_newtran())
     {
 		if (method=="ACK") {
 			log("oops--ACK to a non-existent transaction");
 			drop;
 		};
 		log("New Transaction Arrived\n");
         # do what you want to do as a sever
 		if (uri=~"a@") {
af156759
 			if (!t_reply("409", "Bizzar Error")) {
caf80ae6
 				sl_reply_error();
 			};
 		} else if (uri=~"b@") {
 			if (!t_reply("979", "You did not expect this did you")) {
 				sl_reply_error();
 			};
 		} else {
 			if (!t_reply("699", "I don't want to chat with you")) {
 				sl_reply_error();
 			};
 		} ;
     } else {
 		sl_reply_error();
 	};
 }