Hi!
Can someone please tell me how t_relay exactly works? What URI will be
used for forwarding if d-URI is set and Route headers are present? Or
does loose_route set the d-URI?
What if I add a route header with append_hf - will it be used for t_relay?
regards
klaus
--
Klaus Darilion
nic.at
Hi all,
I try a configuration with a SER server with mediaproxy that load
balance SIP/RTP two 2 asterisks server (REGISTRAR, ... )
SER: 192.168.1.81 and 10.10.10.1
Asterisk1: 10.10.10.12 with default route 10.10.10.1
Asterisk2: 10.10.10.13 with default route 10.10.10.1
Mediaproxy.ini:
[Dispatcher]
start = yes
socket = /var/run/proxydispatcher.sock
group = root
defaultProxy = /var/run/mediaproxy.sock
[MediaProxy]
start = yes
socket = /var/run/mediaproxy.sock
group = root
proxyIP = 192.168.1.81
portRange = 60000:65000
TOS = 0xb8
idleTimeout = 60
holdTimeout = 3600
forceClose = 0
openser.cfg
...
loadmodule "/usr/lib/openser/modules/sl.so"
loadmodule "/usr/lib/openser/modules/tm.so"
loadmodule "/usr/lib/openser/modules/rr.so"
loadmodule "/usr/lib/openser/modules/maxfwd.so"
loadmodule "/usr/lib/openser/modules/usrloc.so"
loadmodule "/usr/lib/openser/modules/registrar.so"
loadmodule "/usr/lib/openser/modules/textops.so"
loadmodule "/usr/lib/openser/modules/dispatcher.so"
loadmodule "/usr/lib/openser/modules/xlog.so"
loadmodule "/usr/lib/openser/modules/mediaproxy.so"
loadmodule "/usr/lib/openser/modules/domain.so"
loadmodule "/usr/lib/openser/modules/mysql.so"
modparam("domain", "db_url", "mysql://ser:ser@localhost/ser")
modparam("mediaproxy", "mediaproxy_socket",
"/var/run/proxydispatcher.sock")
modparam("mediaproxy", "natping_interval", 20)
modparam("dispatcher", "list_file", "/etc/openser/dispatcher.list")
route{
...
if(method=="REGISTER"){
# For the moment I just do like this to register
# my phone on one server
forward("10.10.10.12");
}
else {
if (method==INVITE) {
use_media_proxy();
}
ds_select_dst("1", "4");
t_relay();
}
}
Dispatcher.list:
1 sip:10.10.10.12:5060
1 sip:10.10.10.13:5060
Thanks a lot for your help,
Thomas
Hi all,
I have a PSTN gateway (IP:123.456.78.90), when I route to it, there is no audio between PSTN and UA.
I found that the PSTN gateway IP is different from the media IP, which is specified inside the SDP Connection Information (c) : IN IP4 xxx.xxx.xxx.xxx
My RTPProxy is working and tested before.
Please help.
Thanks
Regards,
jorain
First of all thanks for the response and support ... really appreciate that ...
This time the problem is alittle more complex now coming to the point I really need to know how can i do load balancing for a situation like
[SER1]
DIALER ----------------> [SER2] --------> PSTN
[SER3]
I have 3 SER servers and i want some kind of load balancing amongst them. I have been trying to make SER work behind a load balancer but that seriously involves mangling with some headers. So, is there any clean way to get this done ... Please help me in this as i am pretty struck at this point...
regards,
Zeeshan.
---------------------------------
Cheap Talk? Check out Yahoo! Messenger's low PC-to-Phone call rates.
Hello,
just to let you know that a new template which is more in harmony with
the OpenSER logo has been deployed on the web site. Anyone who considers
that can improve the design and make user's experience better, please
send an email to devel(a)openser.org or team(a)openser.org. The site uses
the open source cms mambo/joomla engine. The OpenSER logo should have
replaced old variants, and has been posted in relevant new places
(e.g., dokuwiki). See:
http://www.openser.org
If you want to get the OpenSER logo, there are two variants available on
the site, with white background and transparent:
http://www.openser.org/images/openser-logo.jpghttp://www.openser.org/images/openser-logo-transparent.png
Cheers,
Daniel
Hello list,
For my call routing algorithm, I need to query different databases to
retrieve the destination of an outgoing call. From what I have
understood, I can specify only one db url in the avpops module to use
with avp_db_query().
Is there a (simple) way to make queries in different databases with openser ?
Thanks.
--
Regards,
-vma
.
Hello everyone,
I found many references in serdev, openser users, etc. MLs to the issue
at hand, but only came up with diverging opinions and no solution
whatsoever.
The issue appears in case of a UA sending a re-INVITE inside of an
established dialog. Depending on your configuration file, version,
network conditions, there is NO guarantee that this re-INVITE will be
sent to (I'm not even talking about reaching) the next hop (typically a
PSTN gateway) AFTER the ACK to the first INVITE of the dialog.
I perfectly understand why (openser being transaction and not dialog
statefull being the only reason that really matters, given the fact that
INVITE and ACK are separate transactions, often handled by separate
openser processes) it is this way.
However, it seems that several gateways are not handling this well at
all, and just drop the transaction typically sending a "500 Server
internal error". I've read reports about cisco AS5300, Asterisk, and I
am myself experiencing this with an Andiocodes Mediant 2000 gateway.
In my case, the issue is there 99% of the time. I know I could profile a
bit my config file to ensure ACKs are processed faster than INVITEs
(which propably is already the case), but this is hardly a workaround. I
got tempted to even call an external "timer" via exec_msg when detecting
a re-INVITE (if it is an INVITE, has a to_tag and is loose routed), but
come on, I'm sure we can do better than this !
So no matter what the RFCs say or mean to say, no matter how long we
argue about this, the facts are :
- gateways often don't stand this ordering issue
- many iPBXs are using reINVITEs for several call features
- the only way to solve this is to be dialog statefull, at least for
ACKs and INVITES
So my conclusion is :
I'm going to code an ugly little hack - using an external database and
avpops - so that ACKs are logged per Cseq+callid, and when reinvites are
detected, relay will be delayed until the last ACK is logged as sent.
What do you think ?
Is there a way to use the dialog module to optimize this (flagging the
SIP headers themselves instead of an external DB) ?
Best Regards,
Jerome Martin