Hi, Up to 60 seconds in mode 2: 'modparam("usrloc", "db_mode", 2)'
Gregorio. -----Mensaje original----- De: Alex Balashov [mailto:[EMAIL PROTECTED] Enviado el: lunes, 15 de octubre de 2007 18:48 Para: Gregorio CC: users@openser.org Asunto: Re: [OpenSER-Users] Insert in location table very slow Gregorio, How long does it take? -- Alex On Mon, 15 Oct 2007, Gregorio wrote: > Hi all. > > > > I am using openSer 1.3 with mySQL. My problem is that although registration > is fast in SIP protocol terms, the contact binding is written in the > 'location' table long time after this contact has received a 200 OK to his > registration. So a user could think that he is registered before he is in > the data base. > > > > Could it be a configuration issue? > > Can I solve this? > > > > Thanks! > > > > This is my config: > > > > > > # ----------- global configuration parameters ------------------------ > > > > debug=2 # debug level (cmd line: -dddddddddd) > > log_facility=LOG_LOCAL7 > > fork=yes > > log_stderror=no children=4 > > port=5060 > > > > listen=udp:192.168.1.206:5060 > > listen=tcp:192.168.1.206:5060 > > > > # ------------------ module loading ---------------------------------- > > > > #set module path > > mpath="/usr/local/lib/openser/modules/" > > > > loadmodule "mysql.so" > > loadmodule "xlog.so" > > loadmodule "sl.so" > > loadmodule "tm.so" > > loadmodule "rr.so" > > loadmodule "maxfwd.so" > > loadmodule "usrloc.so" > > loadmodule "registrar.so" > > loadmodule "textops.so" > > loadmodule "auth.so" > > loadmodule "auth_db.so" > > > > loadmodule "presence.so" > > > > loadmodule "presence_xml.so" > > > > loadmodule "mi_fifo.so" > > > > loadmodule "mi_xmlrpc.so" > > > > # ----------------- setting module-specific parameters --------------- > > > > > > modparam("mi_fifo", "fifo_name", "/tmp/openser_fifo") > > > > # -- usrloc params -- > > > > modparam("usrloc", "db_mode", 2) > > > > # -- auth params -- > > modparam("auth_db", "calculate_ha1", yes) > > modparam("auth_db", "password_column", "password") > > > > # -- rr params -- > > # add value to ;lr param to make some broken UAs happy > > modparam("rr", "enable_full_lr", 1) > > > > > > #Agnadido para la Presencia > > modparam("presence|usrloc|pua", > "db_url","mysql://openser:[EMAIL PROTECTED]/openser") > > modparam("presence", "presentity_table", "presentity") > > modparam("presence", "active_watchers_table", "active_watchers") > > modparam("presence", "watchers_table", "watchers") > > modparam("presence", "clean_period", 100) > > modparam("presence", "max_expires", 3600) > > modparam("presence", "server_address", "sip:192.168.1.206:5060" ) > > > > #Presence_XML > > modparam("presence_xml", > "db_url","mysql://openser:[EMAIL PROTECTED]/openser") > > modparam("presence_xml", "xcap_table", "xcap") > > modparam("presence_xml", "force_active", 1) > > modparam("presence_xml", "integrated_xcap_server", 1) > > modparam("presence_xml", "pidf_manipulation", 1) > > modparam("presence_xml", "pidf_manipulation", 1) > > > > #Mi FIFO > > modparam("mi_fifo", "fifo_name", "/tmp/openser_fifo") > > modparam("mi_fifo", "fifo_mode", 0600) > > modparam("mi_fifo", "fifo_group", 0) > > modparam("mi_fifo", "fifo_group", "root") > > modparam("mi_fifo", "fifo_user", 0) > > modparam("mi_fifo", "fifo_user", "root") > > modparam("mi_fifo", "reply_dir", "/home/openser/tmp/") > > > > #Mi XMLRPC > > modparam("mi_xmlrpc", "port", 8080) > > modparam("mi_xmlrpc", "log_file", "/var/log/openser-xmlrpc.log") > > modparam("mi_xmlrpc", "reply_option", 0) > > modparam("mi_xmlrpc", "buffer_size", 8192) > > > > > > # ------------------------- request routing logic ------------------- > > > > # main routing logic > > > > route{ > > > > # initial sanity checks -- messages with > > # max_forwards==0, or excessively long requests > > > > if (!mf_process_maxfwd_header("10")) { > > sl_send_reply("483","Too Many Hops. Route filter"); > > exit; > > } > > > > if (msg:len >= max_len ) { > > sl_send_reply("513", "Message too big. Route filter"); > > exit; > > } > > > > if (!method=="REGISTER") > > record_route(); > > > > # subsequent messages withing a dialog should take the > > # path determined by record-routing > > if (loose_route()) { > > # mark routing logic in request > > append_hf("P-hint: rr-enforced\r\n"); > > route(1); > > }; > > if (uri==myself) { > > route(1); > > }; > > > > if (uri==myself) { > > # presence handling > > if( is_method("PUBLISH|SUBSCRIBE")){ > > route(2); > > }; > > > > if (is_present_hf("MyHeader")) > > { > > t_relay("192.168.1.111"); > > exit; > > }; > > > > > > if (method=="REGISTER") { > > # Uncomment this if you want to use digest > authentication > > if (!www_authorize("openserDialcom", "subscriber")) > { > > www_challenge("openserDialcom", "0"); > > exit; > > }; > > > > save("location"); > > exit; > > }; > > > > lookup("aliases"); > > if (!uri==myself) { > > append_hf("P-hint: outbound alias\r\n"); > > route(1); > > }; > > > > # native SIP destinations are handled using our USRLOC DB > > if (!lookup("location")) { > > sl_send_reply("404", "Not Found in openSer"); > > exit; > > }; > > append_hf("P-hint: usrloc applied\r\n"); > > }; > > > > route(1); > > } > > > > route[1] { > > # send it out now; use stateful forwarding as it works reliably > > # even for UDP2TCP > > if (!t_relay()) { > > sl_reply_error(); > > }; > > exit; > > } > > route[2] > > { > > # absorb retransmissions > > if (! t_newtran()) > > { > > sl_reply_error(); > > exit; > > }; > > > > if(is_method("PUBLISH")) > > { > > handle_publish(); > > t_release(); > > } else if( is_method("SUBSCRIBE")) { > > handle_subscribe(); > > t_release(); > > }; > > > > exit; > > } > > -- Alex Balashov Evariste Systems Web : http://www.evaristesys.com/ Tel : +1-678-954-0670 Direct : +1-678-954-0671 _______________________________________________ Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users