Hi Steve, The request-uri in your invite is to "service". In your opensips script, it does a lookup on user and I don't think you have the user "service" registered.
Either have sipp to register first, or in your opensips.cfg, put a condition for calls from sipp to go to route one directly with no lookup. Hope this is clear enough. Regards, Ali Pey On Thu, Nov 8, 2012 at 8:05 PM, Steve Mitchell <[email protected]> wrote: > Hi, > > I'm trying to get a simple scenario working to generate CDRs in bulk and > am using a basic configuration (generated with osipconfig) with the sipp > UAC. However, I continue to get a 404 Not Found response to the INVITE. My > config and UAC file are below. > > Any thoughts? > > Thanks much! > > Steve > > # > # $Id: opensips_residential.m4 9042 2012-05-17 13:57:10Z vladut-paiu $ > # > # OpenSIPS residential configuration script > # by OpenSIPS Solutions <[email protected]> > # > # This script was generated via "make menuconfig", from > # the "Residential" scenario. > # You can enable / disable more features / functionalities by > # re-generating the scenario with different options.# > # > # Please refer to the Core CookBook at: > # http://www.opensips.org/Resources/DocsCookbooks > # for a explanation of possible statements, functions and parameters. > # > > > ####### Global Parameters ######### > > debug=6 > fork=no > log_stderror=yes > log_facility=LOG_LOCAL1 > > #fork=yes > #children=4 > > /* uncomment the following lines to enable debugging */ > #debug=6 > #fork=no > #log_stderror=yes > > /* uncomment the next line to enable the auto temporary blacklisting of > not available destinations (default disabled) */ > #disable_dns_blacklist=no > > /* uncomment the next line to enable IPv6 lookup after IPv4 dns > lookup failures (default disabled) */ > #dns_try_ipv6=yes > > /* comment the next line to enable the auto discovery of local aliases > based on revers DNS on IPs */ > auto_aliases=no > > > listen=udp:10.145.185.49:5060 # CUSTOMIZE ME > > disable_tcp=no > listen=tcp:10.145.185.49:5060 # CUSTOMIZE ME > > disable_tls=yes > > > ####### Modules Section ######## > > #set module path > mpath="/usr/local/opensips_proxy/lib64/opensips/modules/" > > #### SIGNALING module > loadmodule "signaling.so" > > #### StateLess module > loadmodule "sl.so" > > #### Transaction Module > loadmodule "tm.so" > modparam("tm", "fr_timer", 5) > modparam("tm", "fr_inv_timer", 30) > modparam("tm", "restart_fr_on_each_reply", 0) > modparam("tm", "onreply_avp_mode", 1) > > #### Record Route Module > loadmodule "rr.so" > /* do not append from tag to the RR (no need for this script) */ > modparam("rr", "append_fromtag", 0) > > #### MAX ForWarD module > loadmodule "maxfwd.so" > > #### SIP MSG OPerationS module > loadmodule "sipmsgops.so" > > #### FIFO Management Interface > loadmodule "mi_fifo.so" > modparam("mi_fifo", "fifo_name", "/tmp/opensips_fifo") > modparam("mi_fifo", "fifo_mode", 0666) > > > #### URI module > loadmodule "uri.so" > modparam("uri", "use_uri_table", 0) > > > > > #### MYSQL module > loadmodule "db_mysql.so" > > #### USeR LOCation module > loadmodule "usrloc.so" > modparam("usrloc", "nat_bflag", 10) > modparam("usrloc", "db_mode", 2) > modparam("usrloc", "db_url", > "mysql://opensips:opensipsrw@localhost/opensips") # CUSTOMIZE ME > > > #### REGISTRAR module > loadmodule "registrar.so" > modparam("registrar", "tcp_persistent_flag", 7) > > /* uncomment the next line not to allow more than 10 contacts per AOR */ > #modparam("registrar", "max_contacts", 10) > > #### ACCounting module > loadmodule "acc.so" > /* what special events should be accounted ? */ > modparam("acc", "early_media", 0) > modparam("acc", "report_cancels", 0) > /* by default we do not adjust the direct of the sequential requests. > if you enable this parameter, be sure the enable "append_fromtag" > in "rr" module */ > modparam("acc", "detect_direction", 0) > modparam("acc", "failed_transaction_flag", 3) > /* account triggers (flags) */ > modparam("acc", "db_flag", 1) > modparam("acc", "db_missed_flag", 2) > modparam("acc", "db_url", > "mysql://opensips:opensipsrw@localhost/opensips") # CUSTOMIZE ME > > > > > > > > > > > > > > > > > > > > > ####### Routing Logic ######## > > # main request routing logic > > route{ > > > if (!mf_process_maxfwd_header("10")) { > sl_send_reply("483","Too Many Hops"); > exit; > } > > if (has_totag()) { > # sequential request withing a dialog should > # take the path determined by record-routing > if (loose_route()) { > > if (is_method("BYE")) { > setflag(1); # do accounting ... > setflag(3); # ... even if the transaction fails > } else if (is_method("INVITE")) { > # even if in most of the cases is useless, do RR for > # re-INVITEs alos, as some buggy clients do change route > set > # during the dialog. > record_route(); > } > > > > # route it out to whatever destination was set by loose_route() > # in $du (destination URI). > route(1); > } else { > > if ( is_method("ACK") ) { > if ( t_check_trans() ) { > # non loose-route, but stateful ACK; must be an ACK > after > # a 487 or e.g. 404 from upstream server > t_relay(); > exit; > } else { > # ACK without matching transaction -> > # ignore and discard > exit; > } > } > sl_send_reply("404","Not here"); > } > exit; > } > > # CANCEL processing > if (is_method("CANCEL")) > { > if (t_check_trans()) > t_relay(); > exit; > } > > t_check_trans(); > > if ( !(is_method("REGISTER") ) ) { > > if (from_uri==myself) > > { > > } else { > # if caller is not local, then called number must be local > > if (!uri==myself) { > send_reply("403","Rely forbidden"); > exit; > } > } > > } > > # preloaded route checking > if (loose_route()) { > xlog("L_ERR", > "Attempt to route with preloaded Route's [$fu/$tu/$ru/$ci]"); > if (!is_method("ACK")) > sl_send_reply("403","Preload Route denied"); > exit; > } > > # record routing > if (!is_method("REGISTER|MESSAGE")) > record_route(); > > # account only INVITEs > if (is_method("INVITE")) { > > setflag(1); # do accounting > } > > > if (!uri==myself) { > append_hf("P-hint: outbound\r\n"); > > route(1); > } > > # requests for my domain > > if (is_method("PUBLISH|SUBSCRIBE")) > { > sl_send_reply("503", "Service Unavailable"); > exit; > } > > if (is_method("REGISTER")) > { > > > if ( proto==TCP || 0 ) setflag(7); > > if (!save("location")) > sl_reply_error(); > > exit; > } > > if ($rU==NULL) { > # request with no Username in RURI > sl_send_reply("484","Address Incomplete"); > exit; > } > > > > > > > > # do lookup with method filtering > if (!lookup("location","m")) { > > > t_newtran(); > t_reply("404", "Not Found"); > exit; > } > > > > # when routing via usrloc, log the missed calls also > setflag(2); > route(1); > } > > > route[1] { > # for INVITEs enable some additional helper routes > if (is_method("INVITE")) { > > > > t_on_branch("2"); > t_on_reply("2"); > t_on_failure("1"); > } > > > > if (!t_relay()) { > send_reply("500","Internal Error"); > }; > exit; > } > > > > > branch_route[2] { > xlog("new branch at $ru\n"); > } > > > onreply_route[2] { > > xlog("incoming reply\n"); > } > > > failure_route[1] { > if (t_was_cancelled()) { > exit; > } > > # uncomment the following lines if you want to block client > # redirect based on 3xx replies. > ##if (t_check_status("3[0-9][0-9]")) { > ##t_reply("404","Not found"); > ## exit; > ##} > > > } > > > > > > <?xml version="1.0" encoding="ISO-8859-1" ?> > <!DOCTYPE scenario SYSTEM "sipp.dtd"> > > <!-- This program is free software; you can redistribute it and/or --> > <!-- modify it under the terms of the GNU General Public License as --> > <!-- published by the Free Software Foundation; either version 2 of the --> > <!-- License, or (at your option) any later version. --> > <!-- --> > <!-- This program is distributed in the hope that it will be useful, --> > <!-- but WITHOUT ANY WARRANTY; without even the implied warranty of --> > <!-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --> > <!-- GNU General Public License for more details. --> > <!-- --> > <!-- You should have received a copy of the GNU General Public License --> > <!-- along with this program; if not, write to the --> > <!-- Free Software Foundation, Inc., --> > <!-- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA --> > <!-- --> > <!-- Sipp default 'uac' scenario. --> > <!-- --> > > <scenario name="Basic Sipstone UAC"> > <!-- In client mode (sipp placing calls), the Call-ID MUST be --> > <!-- generated by sipp. To do so, use [call_id] keyword. > --> > <send retrans="1000"> > <![CDATA[ > > INVITE sip:[service]@[remote_ip]:[remote_port] SIP/2.0 > Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch] > From: sipp <sip:sipp@[local_ip]:[local_port]>;tag=[call_number] > To: sut <sip:[service]@[remote_ip]:[remote_port]> > Call-ID: [call_id] > CSeq: 1 INVITE > Contact: sip:sipp@[local_ip]:[local_port] > Max-Forwards: 70 > Subject: Performance Test > Content-Type: application/sdp > Content-Length: [len] > > v=0 > o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip] > s=- > c=IN IP[media_ip_type] [media_ip] > t=0 0 > m=audio [media_port] RTP/AVP 0 > a=rtpmap:0 PCMU/8000 > > ]]> > </send> > > <recv response="100" > optional="true"> > </recv> > > <recv response="180" optional="true"> > </recv> > > <!-- By adding rrs="true" (Record Route Sets), the route sets --> > <!-- are saved and used for following messages sent. Useful to test --> > <!-- against stateful SIP proxies/B2BUAs. --> > <recv response="200" rtd="true" rrs="true"> > </recv> > > <!-- Packet lost can be simulated in any send/recv message by --> > <!-- by adding the 'lost = "10"'. Value can be [1-100] percent. --> > <send> > <![CDATA[ > > ACK [next_url] SIP/2.0 > Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch] > From: sipp <sip:sipp@[local_ip]:[local_port]>;tag=[call_number] > To: sut <sip:[service]@[remote_ip]:[remote_port]>[peer_tag_param] > [routes] > Call-ID: [call_id] > CSeq: 1 ACK > Contact: sip:sipp@[local_ip]:[local_port] > Max-Forwards: 70 > Subject: Performance Test > Content-Length: 0 > > ]]> > </send> > > <!-- This delay can be customized by the -d command-line option --> > <!-- or by adding a 'milliseconds = "value"' option here. --> > <pause milliseconds="10000"/> > > > <!-- The 'crlf' option inserts a blank line in the statistics report. --> > <send retrans="1000"> > <![CDATA[ > > BYE [next_url] SIP/2.0 > Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch] > From: sipp <sip:sipp@[local_ip]:[local_port]>;tag=[call_number] > To: sut <sip:[service]@[remote_ip]:[remote_port]>[peer_tag_param] > [routes] > Call-ID: [call_id] > CSeq: 2 BYE > Contact: sip:sipp@[local_ip]:[local_port] > Max-Forwards: 70 > Subject: Performance Test > Content-Length: 0 > > ]]> > </send> > > <recv response="200" crlf="true"> > </recv> > > <!-- definition of the response time repartition table (unit is ms) --> > <ResponseTimeRepartition value="500, 1000, 1500, 2000"/> > > <!-- definition of the call length repartition table (unit is ms) --> > <CallLengthRepartition value="500"/> > > </scenario> > > _______________________________________________ > Users mailing list > [email protected] > http://lists.opensips.org/cgi-bin/mailman/listinfo/users > >
_______________________________________________ Users mailing list [email protected] http://lists.opensips.org/cgi-bin/mailman/listinfo/users
