Hi all,
I wonder about the "child" parameter in ser.cfg.
What's the average processing capacity (number of requets/process) ?
Currently, the parameter is set to 4, the default value. What's the risk
of the increase ?
SER runs on RedHat AS4 with Intel Xeon Quad 3.0 Ghz.
Thanks for your support.
One of our carriers gives us an option to check LRN routing via SIP before
we attempt to send out a call. Our request will go out as a regular invite,
then we'll get a 302 return code back, with the result contained in the
header.
My question is, how exactly is the flow of this kind of call supposed to
work? I thought I could do a regular failover, but that doesn't work. Does
anyone have a suggestion?
Mik
Can someone please confirm that I cannot use a script var or avp in the
set field when calling ds_select_dst from the dispatcher module? I'm
trying to use dialplan to return a gateway group via attr, then call
ds_select_dst with that but get the following error in my logs. If this
is my problem are there any workarounds? The goal is to call
ds_select_dst with a dynamic value. Example -
ds_select_dst("$var(dpattr)", "0")
Jun 24 14:50:49 [1125] ERROR:core:fixup_get_ivalue: no valid PV value
found (error in scripts)
Jun 24 14:50:49 [1125] ERROR:dispatcher:w_ds_select_dst: no dst set
value
If I hardcode the value which in this case is 30 it works as expected.
I've verified that the correct value is in $var(dpattr) with an xlog
right before the call to ds_select_dst.
if ($ruri.user =~ "[0-9]{4}") {
xlog("L_NOTICE", "KAM_HOST: ($ci) $pr $mi route[$rm][0]
$fu -> $ru - Internal 4 digit call\n");
if (dp_translate("2", "$ruri.user/$var(dpuser)")) {
xlog("L_NOTICE", "KAM_HOST: ($ci) -> DP
result='$var(dpuser)', attr='$var(dpattr)'\n");
setflag(FLAG_DIALPLAN);
} else {
xlog("L_NOTICE", "KAM_HOST: ($ci) -> No matching
dialplan for $ru\n");
}
} some other if statements here with other pattern matches...
if (isflagset(FLAG_DIALPLAN)) {
xlog("L_NOTICE", "KAM_HOST: ($ci) -> DP Attr is
$var(dpattr)\n");
if (ds_select_dst("$var(dpattr)", "0")) {
xlog("L_NOTICE", "KAM_HOST: ($ci) $pr $mi
route[$rm][0] $fu -> DST='$avp(s:dispatcher-dst)', \
GRP='$avp(s:dispatcher-grp)',
CNT='$avp(s:dispatcher-cnt)'\n");
} else {
xlog("L_NOTICE", "KAM_HOST: ($ci) $pr $mi
route[$rm][0] $fu -> $ru - No dst gateways found\n");
sl_send_reply("404", "No destination gateways
found\n");
}
}
Thanks
--------------------------------------------------------------------------
This email with all information contained herein or attached hereto may contain confidential and/or privileged information intended for the addressee(s) only. If you have received this email in error, please contact the sender and immediately delete this email in its entirety and any attachments thereto.
Hi,
I need SIP forking proxy, and I would like to use OpenSER for that
purpose.
I have few questions if you could help.
I am interesting for behavior when 200 OK INVITE is received for each
forked dialog.
Should only first 200 OK INVITE be passed to UA (the other will be
terminated by proxy), or 200 OK for all forked dialogs should be passed
to UA?
Is it possibly to define some static configuration how to fork a dialogs
or we always need REGISTER?
Thanks in advance.
BR/Zeljko
Hi Juha,
please add a short note in the wiki:
https://sip-router.org/wiki/features/new-in-devel
Makes easier to build new release notes and spread details about what is
new in development version.
Thanks,
Daniel
PS. I cc-ed users mailing list as this was a new feature announcement.
On 06/22/2009 04:55 PM, Juha Heinanen wrote:
> i just pushed a new version of lcr module, which resulted from
> discussions on the mailing lists.
>
> most important new feature is support for any number of independent lcr
> instances, which improves virtualization of sr. for example, different
> domains can now manage their own least cost routing to their own gws.
>
> i also replaced aliveness check with new defunct_gw() function, which
> script writer can use to defunct an unresponsive or busy gw for a
> desired period of time.
>
> in order to keep lcr module manageable, i removed gw group related
> functions (which were not efficient anyway). if someone is using them, i
> hope that they can be replaced by lcr instances.
>
> -- juha
>
> _______________________________________________
> sr-dev mailing list
> sr-dev(a)lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
--
Daniel-Constantin Mierla
http://www.asipto.com/
Hi all:
Running Openser v1.2.3-notls. It has been suffering failures at startup since some weeks ago and it seems to be related with database operation. Nothing has changed in config. The only remarkable change in the system is a slight increase in database registers at subscribers, location and lcr tables. Log excerpt from openser startup:
Jun 19 15:23:32 openser[2196]: INFO: statistics manager successfully initialized
Jun 19 15:23:32 openser[2196]: StateLess module - initializing
Jun 19 15:23:32 openser[2196]: TM - initializing...
Jun 19 15:23:32 openser[2196]: Maxfwd module- initializing
Jun 19 15:23:32 openser[2196]: INFO:ul_init_locks: locks array size 512
Jun 19 15:23:32 openser[2196]: AUTH module - initializing
Jun 19 15:23:32 openser[2196]: AUTH_DB module - initializing
Jun 19 15:23:32 openser[2196]: TextOPS - initializing
Jun 19 15:23:32 openser[2196]: AVPops - initializing
Jun 19 15:23:32 openser[2196]: permissions - initializing
Jun 19 15:23:32 openser[2196]: WARNING: File not found: /etc/openser/permissions.allow
Jun 19 15:23:32 openser[2196]: Default allow file (/etc/openser/permissions.allow) not found => empty rule set
Jun 19 15:23:32 openser[2196]: WARNING: File not found: /etc/openser/permissions.deny
Jun 19 15:23:32 openser[2196]: Default deny file (/etc/openser/permissions.deny) not found => empty rule set
Jun 19 15:23:32 openser[2196]: ACC - initializing
Jun 19 15:23:32 openser[2196]: Dialog module - initializing
Jun 19 15:23:32 openser[2196]: INFO: SNMPStats: Starting up the SNMPStats Module
Jun 19 15:23:32 openser[2196]: UAC - initializing
Jun 19 15:23:32 openser[2196]: INFO:textops:hname_fixup: using hdr type (32) instead of <Refer-To>
Jun 19 15:23:32 openser[2196]: INFO:textops:hname_fixup: using hdr type (7) instead of <Contact>
Jun 19 15:23:32 openser[2196]: INFO:textops:hname_fixup: using hdr type name <Referred-By>
Jun 19 15:23:32 openser[2196]: INFO:textops:hname_fixup: using hdr type name <Replaces>
Jun 19 15:23:32 openser[2196]: INFO:textops:hname_fixup: using hdr type name <Forwarder>
Jun 19 15:23:32 openser[2196]: INFO:textops:hname_fixup: using hdr type name <Referred-by>
Jun 19 15:23:32 openser[2196]: INFO:textops:hname_fixup: using hdr type name <RG>
Jun 19 15:23:32 openser[2196]: INFO:textops:hname_fixup: using hdr type name <Origin>
Jun 19 15:23:32 openser[2196]: INFO:textops:hname_fixup: using hdr type name <Referred-By>
Jun 19 15:23:32 openser[2196]: INFO:textops:hname_fixup: using hdr type name <Replaces>
Jun 19 15:23:32 openser[2196]: INFO:textops:hname_fixup: using hdr type name <Forwarder>
Jun 19 15:23:32 openser[2196]: xl_fill_extra_spec: found extra item [DLG_status]
Jun 19 15:23:32 openser[2196]: xl_fill_extra_spec: found extra item [T_reply_code]
Jun 19 15:23:32 openser[2196]: INFO:textops:hname_fixup: using hdr type (4) instead of <From>
Jun 19 15:23:32 openser[2196]: INFO:textops:hname_fixup: using hdr type (3) instead of <To>
Jun 19 15:23:32 openser[2196]: xl_fill_extra_spec: found extra item [T_reply_code]
Jun 19 15:23:32 openser[2196]: xl_fill_extra_spec: found extra item [T_reply_code]
Jun 19 15:23:32 openser[2196]: xl_fill_extra_spec: found extra item [T_branch_idx]
Jun 19 15:23:32 openser[2196]: INFO: udp_init: SO_RCVBUF is initially 109568
Jun 19 15:23:32 openser[2196]: INFO: udp_init: SO_RCVBUF is finally 262142
...Some registers, invites, etc logs...
Jun 19 15:23:34 openser[2204]: new_connection: Can't connect to MySQL server on 'bbdd.bariksip.es' (4)
Jun 19 15:23:34 openser[2201]: new_connection: Can't connect to MySQL server on 'bbdd.bariksip.es' (4)
Jun 19 15:23:34 openser[2201]: ERROR:ul:child_init(5): Error while connecting database
Jun 19 15:23:34 openser[2204]: ERROR:ul:child_init(-1): Error while connecting database
Jun 19 15:23:34 openser[2201]: ERROR:init_mod_child: Error while initializing module usrloc, rank 5
Jun 19 15:23:34 openser[2204]: ERROR:init_mod_child: Error while initializing module usrloc, rank -1
Jun 19 15:23:34 openser[2201]: init_child failed
Jun 19 15:23:34 openser[2204]: timer: init_child failed
Jun 19 15:23:34 openser[2203]: INFO: signal 15 received
Jun 19 15:23:34 openser[2201]: INFO: SNMPStats: The SNMPStats module got the kill signal
Jun 19 15:23:34 openser[2201]: Shutting down the AgentX Sub-Agent!
Jun 19 15:23:34 openser[2201]: INFO:mi_fifo:mi_destroy: process hasn't been created -> nothing to kill
Jun 19 15:23:34 openser[2202]: INFO: signal 15 received
Jun 19 15:23:34 openser[2200]: INFO: signal 15 received
Jun 19 15:23:34 openser[2199]: INFO: signal 15 received
Jun 19 15:23:34 openser[2198]: INFO: signal 15 received
Jun 19 15:23:34 openser[2197]: INFO: signal 15 received
Jun 19 15:23:34 openser[2204]: INFO: SNMPStats: The SNMPStats module got the kill signal
Jun 19 15:23:34 openser[2204]: Shutting down the AgentX Sub-Agent!
Jun 19 15:23:34 openser[2204]: INFO:mi_fifo:mi_destroy: process hasn't been created -> nothing to kill
Jun 19 15:23:34 openser[2196]: new_connection: Can't connect to MySQL server on 'bbdd.bariksip.es' (4)
Jun 19 15:23:34 openser[2196]: ERROR:ul:child_init(0): Error while connecting database
Jun 19 15:23:34 openser[2196]: ERROR:init_mod_child: Error while initializing module usrloc, rank 0
Jun 19 15:23:34 openser[2196]: main: error in init_child
Jun 19 15:23:34 openser[2196]: INFO: SNMPStats: The SNMPStats module got the kill signal
Jun 19 15:23:34 openser[2196]: Shutting down the AgentX Sub-Agent!
Jun 19 15:23:34 openser[2196]: INFO:mi_fifo:mi_destroy: process hasn't been created -> nothing to kill
After multiple attempts the result is the same. This is the list of modules that use db:
acc|auth_db|permissions|uri_db|usrloc|avpops|lcr|avpops|domain|speeddial|alias_db
Looking at the traces, when openser places the request packet carrying this query "select prefix,from_uri,grp_id,priority from lcr", mysql server begins to perform retransmissions of the requested data; although openser eventually sends back the ack. Later request's responses from mysql server needs also retransmit until openser fails.
If I change, for example, usrloc's dbmode to 0 (disables db use), the module that fails this time is auth_db.
The mySql server is located in the same LAN that Openser(0.112s rtt). I have realized that Openser can be started without any problem when:
-Log level is raised to 4(!).
or
-Another mysql server in a remote location is used (10s rtt).
Has anybody experienced an issue like this?
Thanks:
Francisco Javier Lizarán Vilches
----------------------------------------------
BARIK (Grupo Ormazabal)
Departamento Técnico
Tel.: +34 917 479 900
www.barik.es <http://www.barik.es/>
----------------------------------------------
Hi All,
Sorry about this post but i just can't figure out the logic:
i'm using lcr to send calls to pstn, when my user dials a number that
begins with 00 i re-route it to my termination providers. e.g.:
if ((uri=~"^(sip:)?00[0-9]*@([a-z]+\.)?mydomain.com")
|| (uri=~"^(sip:)?00[0-9]*@22\.22\.22\.22")) {
strip(2);
prefix("1234");
if(!load_gws()){
sl_send_reply("500", "Internal
server error, unable to load gateways");
break;
}
}
fortunately i have the same prefix on my termination providers. so on my
lcr table i have defined all country codes to have the 1234 prefix, e.g
12341 for US , 123465 for singapore. etc.
now i have a new provider, but prefix is different, how can i detect on
lcr when all calls fail. i change prefix. i hope my question is clear sorry.
regards,
ron
Hi All,
Sorry about this post but i just can't figure out the logic:
i'm using lcr to send calls to pstn, when my user dials a number that
begins with 00 i re-route it to my termination providers. e.g.:
if ((uri=~"^(sip:)?00[0-9]*@([a-z]+\.)?mydomain.com")
|| (uri=~"^(sip:)?00[0-9]*@22\.22\.22\.22")) {
strip(2);
prefix("1234");
if(!load_gws()){
sl_send_reply("500", "Internal
server error, unable to load gateways");
break;
}
}
fortunately i have the same prefix on my termination providers. so on my
lcr table i have defined all country codes to have the 1234 prefix, e.g
12341 for US , 123465 for singapore. etc.
now i have a new provider, but prefix is different, how can i detect on
lcr when all calls fail. i change prefix. i hope my question is clear sorry.
regards,
ron
Hello!
Our company seeking for programmer who can create module for flexible database access.
I call it db_rest (or db_http). This module must provide internal database API for other modules like db_auth.
For access to external data it must use HTTPS-server and use REST-style data access
(http://en.wikipedia.org/wiki/Representational_State_Transfer).
Instead of making query like "SELECT f1,f2,f3 FROM tableA WHERE f4 = 'somevalue'" it must call
HTTPS-server like this:
GET http://hostname/database/tableA&c=f1,f2,f3&k=f4&op=eq&v=somevalue
Server must return delimiter-separated data.
Similarly (using POST) it must implement support for insert, update and so on.
Of course we would like to see this module inside the main project repository.
If you are interested please contact me for details (requirements, $$).
--
Konstantin