Hi,
I'm using version 1.2 of OpenSER.
After proxying an INVITE from a UAC to a UAS, the UAS replies with a
100 Trying. *Sometimes* the OpenSER forwards this 100 Trying to the
UAC. Any idea how to disable this? I think this can be done using
onreply_route, but it seems that a received 100 should not be
forwarded by default.
thanks,
Tim
Hello.
I think that some sites use OpenSER with Asterisk server.
But Why? (for accounting? or supplementary service?)
Aren't they same?
In conceptionally, OpenSER is central VoIP server, and Asterisk is IP-PBX for apart site. right?
What is the structure of service being applied, in generally?
OpenSER, Asterisk,...
What is the role of them?
thank you.
새로운 기부문화의 씨앗, 해피빈
Hi
I have installed Openser v 1.2 no tls. I have Postgres version 8.0.7.
I tried openser start
[root@openser /usr/local/lib]# openser start
ERROR: bad config file (1 errors)
[root@openser /usr/local/lib]# openser -c
0(29611) ERROR: load_module: could not open module
</usr/local/lib/openser/modules/postgres.so>:
/usr/local/lib/openser/modules/postgres.so: Undefined symbol
"PQescapeStringConn"
0(29611) parse error (41,13-14): failed to load module
ERROR: bad config file (1 errors)
0(29611) INFO:mi_fifo:mi_destroy:memory for the child's mi_fifo_pid
was not allocated -> nothing to destroy
I then ran openserctl moni
cycle #1, if constant make sure server lives
My openser.cfg file
# ----------- global configuration parameters ------------------------
debug=3 # debug level (cmd line: -dddddddddd)
fork=yes
log_stderror=no # (cmd line: -E)
children=4
# Uncomment these lines to enter debugging mode
#fork=no
#log_stderror=yes
#
port=5060
# uncomment the following lines for TLS support
#disable_tls = 0
#listen = tls:your_IP:5061
#tls_verify_server = 1
#tls_verify_client = 1
#tls_require_client_certificate = 0
#tls_method = TLSv1
#tls_certificate = "/usr/local/etc/openser/tls/user/user-cert.pem"
#tls_private_key = "/usr/local/etc/openser/tls/user/user-privkey.pem"
#tls_ca_list = "/usr/local/etc/openser/tls/user/user-calist.pem"
# ------------------ module loading ----------------------------------
#set module path
mpath="/usr/local/lib/openser/modules/"
# Uncomment this if you want to use SQL database
#loadmodule "mysql.so"
loadmodule "postgres.so"
loadmodule "sl.so"
loadmodule "tm.so"
loadmodule "rr.so"
loadmodule "maxfwd.so"
loadmodule "usrloc.so"
loadmodule "registrar.so"
loadmodule "textops.so"
loadmodule "mi_fifo.so"
# Uncomment this if you want digest authentication
# mysql.so must be loaded !
#loadmodule "auth.so"
#loadmodule "auth_db.so"
# ----------------- setting module-specific parameters ---------------
# -- mi_fifo params --
modparam("mi_fifo", "fifo_name", "/tmp/openser_fifo")
# -- usrloc params --
modparam("usrloc", "db_mode", 0)
# Uncomment this if you want to use SQL database
# for persistent storage and comment the previous line
modparam("usrloc", "db_mode", 2)
# -- auth params --
# Uncomment if you are using auth module
#
#modparam("auth_db", "calculate_ha1", yes)
#
# If you set "calculate_ha1" parameter to yes (which true in this config),
# uncomment also the following parameter)
#
#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)
......
....
I checked for the PQescapeStringConn and found this
www.mail-archive.com/devel@openser.org.msg05182.html
but I could not make anything out of it
I dont want authentication just yet. Can anyone tell me what is wrong ?
Thanks in advance
Caugar
Hi,
I've been using SER (0.9.6) as a Proxy doing Loose Routing between 2
endpoints.
If I place a call I can see how the ACK for the 2XX response to the
INVITE is properly handled (Route header removed, Record-Route inserted).
Now with the call still up, I do a re-INVITE which is rejected with a
415. The re-INVITE request sent by UAC contained a Route header, as it
was an in-dialog request in a record-routed dialog. Now as per RFC3261
section 17.1.1.3:
If the INVITE request whose response is being acknowledged had Route
header fields, those header fields MUST appear in the ACK. This is
to ensure that the ACK can be routed properly through any downstream
stateless proxies.
My UAC complied with the above, but SER seemed to choke on this:
whereas the ACK for 2XX was successfully routed by SER in the original
INVITE, the ACK for non-2XX (looking exactly the same: same Request URI,
same IP destination, same Route header, ... different Via branch of
course) is not handled properly: yes the ACK reaches UAS but it still
has the Route header in it, and no Record-Route was added. And I'm
guessing that if there had been another proxy in the Route Set on the
way to the UAS it would have been bypassed.
SER traces for ACK-2XX:
> 0(13574) ===> Loose Routing logic...
> 0(13574) parse_headers: flags=-1
> 0(13574) DEBUG: t_newtran: msg id=89 , global msg id=88 , T on entrance=0xffffffff
> 0(13574) parse_headers: flags=-1
> 0(13574) parse_headers: flags=60
> 0(13574) t_lookup_request: start searching: hash=41794, isACK=1
> 0(13574) parse_headers: flags=28
> 0(13574) DEBUG: t_lookup_request: e2e proxy ACK found
> 0(13574) parse_headers: flags=4
> 0(13574) DEBUG: totag for e2e ACK found: 0
> 0(13574) SER: forwarding ACK statelessly
SER traces for ACK-non-2XX:
> 0(13574) ===> Loose Routing logic...
> 0(13574) parse_headers: flags=-1
> 0(13574) DEBUG: t_newtran: msg id=92 , global msg id=91 , T on entrance=0xffffffff
> 0(13574) parse_headers: flags=-1
> 0(13574) parse_headers: flags=60
> 0(13574) t_lookup_request: start searching: hash=41807, isACK=1
> 0(13574) DEBUG: RFC3261 transaction matched, tid=007d7195499e33a1
> 0(13574) DEBUG: t_lookup_request: transaction found (T=0xb616ae48)
> 0(13574) DEBUG: cleanup_uac_timers: RETR/FR timers reset
> 0(13574) DEBUG: add_to_tail_of_timer[2]: 0xb616ae90
> 0(13574) DEBUG:destroy_avp_list: destroying list (nil)
> 0(13574) receive_msg: cleaning up
This doesn't seem right, am I missing something here?
Thanks,
Emmanuel.
I'd love to use uac_replace_to(), but to my knowledge it does not
exist. I read through the UAC module docs and there is no mention of
it.
Any other posibilities?
If I were to use subst(), can it be applied it in such a way that it
does not cause problems with the dialog?
- Daryl
On 3/21/07, Alan Crosswell <alan(a)columbia.edu> wrote:
> Let me guess -- Level 3? They're the only ones that make that bogus
> requirement AFAIK. And, the subst() is of course wrong, you need to do
> uac_replace_to() or break the dialog otherwise....
> /a
>
> Daryl Sanders wrote:
> > One of my providers requires the To: header to be in e.164 format with
> > a "+" in front of it. Since there is no uac_replace_to() function yet,
> > what are my options for adding this plus symbol?
> >
> > Before anyone suggests it... I cannot just use another provider. I
> > must find a solution to add the plus symbol.
> >
> > Thanks,
> > Daryl
> >
> > _______________________________________________
> > Users mailing list
> > Users(a)openser.org
> > http://openser.org/cgi-bin/mailman/listinfo/users
>
The setup is:
Polycom 601 => OpenSER => Asterisk
The SUBSCRIBE from the phone reaches asterisk just fine and the OK is
returned properly to the phone.
The NOTIFY messages don't get to the phone, however.
SER sends it to the requested URI (which is phone@ser), which ends up
being relayed back to Asterisk.
Hi!
Once again I have a problem with force_send_socket and branches in
failure route.
Scenario:
normal route block --> call SIP client
after timeout --> failure route
in failure route send to gateway via dispatcher module
The gateway accepts signaling only from a certain port, thus I have to
use force_send_socket.
The problem is, that if I call force_send_socket() in failure route, it
sets the send_Socket for branches[0].
Thus if I call force_Send_socket before ds_select_domain it sets
branches[0], but the sendsocket is not copied into the new branch when
ds_select_domain internally calls append_branch.
With version 1.1 I can use the ugly workaround to manually call
append_branch too, as this copies another branch and also copies the
sendsocket. Then I have 2 new branches where branches[1] gets dropped by
teh firewall (wrong sendseocket) but branches[2] succeeds.
But with version 1.2 the sendsocket is never copied from branches[0] and
I can't set it manually for a certain branch.
Are there any workarounds (for version 1.1. and 1.2)
thanks
klaus
version 1.1:
--
Klaus Darilion
nic.at