Re: [OpenSIPS-Users] Load balancing Conference System

2010-06-20 Thread Jiang Jinke
Yes, you can use dialplan module with the drouting module to load
balance to calls to different conference server.


On Sun, Jun 20, 2010 at 1:57 PM, Daniel Knoll  wrote:
> Hello Group,
> I have an Conferencing System (Asterisk meetme) with many Users and 
> Conferences.
> Is it possible to load balance the Calls with opensSIPS depends on the 
> Conference Room number?
> The Room Number is Stored in mysql Database (asterisk Realtime).
>
> Thanx for your help
> Daniel
> ___
> Users mailing list
> Users@lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>

___
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users


Re: [OpenSIPS-Users] No voice in mediaproxy 2.3.8

2010-03-12 Thread Jiang Jinke
Hi,

Thanks for your reply.

I re-check the system and found there is a raid fail message pops up
in the dmesg.
[root ~]# cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 sdb1[1] sda1[0]
  104320 blocks [2/2] [UU]

md3 : active raid1 sdb2[1] sda2[2](F)
  432983808 blocks [2/1] [_U]

When I remove one of the raid disk, the mediaproxy goes wrong again.

Remove by
[root ~]# mdadm /dev/md3 --remove /dev/sda2

Restarted again, and works fine now.
I'm wonder if there is anything affect the mediaproxy while doing
mdadm remove/add, set fail operation ?

I did try mediaproxy 2.4.1 in my test server, will try to upgrade to
2.4.2 if possible later. Thanks again.

Regards,
Jinke Jiang

On Fri, Mar 12, 2010 at 3:59 PM, Saúl Ibarra Corretgé
 wrote:
> Hi,
>
>
> On 12/3/10 6:04 AM, Jiang Jinke wrote:
>> Dear All,
>>
>> I'm having the following error with mediaproxyx 2.3.8, and all the call
>> will have no voice after running mediaproxy for a few days in a high
>> loading (40 calls) server.
>>
>> I check the new mediaproxy with the same line in send, there is no
>> such getHost call.
>> Is this a fixed issue in the latest version ?
>> I haven't tried the new mediaproxy yet because I need to do some tests
>> to make sure it
>> will running fine in the production environment before upgrade.
>>
>
> Could you elaborate a bit more on how you reproduce this? I haven seen
> it myself. However, that particular piece of code was refactored
> recently, so you may want to try MediaProxy 2.4.2.
>
> If same is happening please let me know so it can be fixed.
>
>
> Regards,
>
>
> PS: I've noticed you are using python 2.4, you'll need to update to
> python 2.5 for running latest version.
>
> --
> Saúl Ibarra Corretgé
> AG Projects
>
> ___
> Users mailing list
> Users@lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>

___
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users


[OpenSIPS-Users] No voice in mediaproxy 2.3.8

2010-03-11 Thread Jiang Jinke
Dear All,

I'm having the following error with mediaproxyx 2.3.8, and all the call
will have no voice after running mediaproxy for a few days in a high
loading (40 calls) server.

I check the new mediaproxy with the same line in send, there is no
such getHost call.
Is this a fixed issue in the latest version ?
I haven't tried the new mediaproxy yet because I need to do some tests
to make sure it
will running fine in the production environment before upgrade.

Exception caught:

Mar 12 12:22:54 hkcn-p2 media-relay[3373]: ---  ---
Mar 12 12:22:54 hkcn-p2 media-relay[3373]:   File
"/usr/lib/python2.4/site-packages/Twisted-8.2.0-py2.4-linux-x86_64.egg/twisted/internet/udp.py",
line 126, in doRead
Mar 12 12:22:54 hkcn-p2 media-relay[3373]:
self.protocol.datagramReceived(data, addr)
Mar 12 12:22:54 hkcn-p2 media-relay[3373]:   File
"/usr/lib64/python2.4/site-packages/mediaproxy/mediacontrol.py", line
127, in datagramReceived
Mar 12 12:22:54 hkcn-p2 media-relay[3373]: self.cb_func(host, port, data)
Mar 12 12:22:54 hkcn-p2 media-relay[3373]:   File
"/usr/lib64/python2.4/site-packages/mediaproxy/mediacontrol.py", line
184, in got_data
Mar 12 12:22:54 hkcn-p2 media-relay[3373]:
self.substream.send_data(self, data)
Mar 12 12:22:54 hkcn-p2 media-relay[3373]:   File
"/usr/lib64/python2.4/site-packages/mediaproxy/mediacontrol.py", line
264, in send_data
Mar 12 12:22:54 hkcn-p2 media-relay[3373]: dest.listener.protocol.send(data)
Mar 12 12:22:54 hkcn-p2 media-relay[3373]:   File
"/usr/lib64/python2.4/site-packages/mediaproxy/mediacontrol.py", line
136, in send
Mar 12 12:22:54 hkcn-p2 media-relay[3373]: host = self.transport.getHost()
Mar 12 12:22:54 hkcn-p2 media-relay[3373]: exceptions.AttributeError:
'NoneType' object has no attribute 'getHost'
Mar 12 12:22:54 hkcn-p2 media-relay[3373]: Traceback (most recent call last):
Mar 12 12:22:54 hkcn-p2 media-relay[3373]:   File
"/usr/lib/python2.4/site-packages/Twisted-8.2.0-py2.4-linux-x86_64.egg/twisted/python/log.py",
line 69, in callWithContext
Mar 12 12:22:54 hkcn-p2 media-relay[3373]: return
context.call({ILogContext: newCtx}, func, *args, **kw)
Mar 12 12:22:54 hkcn-p2 media-relay[3373]:   File
"/usr/lib/python2.4/site-packages/Twisted-8.2.0-py2.4-linux-x86_64.egg/twisted/python/context.py",
line 59, in callWithContext
Mar 12 12:22:54 hkcn-p2 media-relay[3373]: return
self.currentContext().callWithContext(ctx, func, *args, **kw)
Mar 12 12:22:54 hkcn-p2 media-relay[3373]:   File
"/usr/lib/python2.4/site-packages/Twisted-8.2.0-py2.4-linux-x86_64.egg/twisted/python/context.py",
line 37, in callWithContext
Mar 12 12:22:54 hkcn-p2 media-relay[3373]: return func(*args,**kw)
Mar 12 12:22:54 hkcn-p2 media-relay[3373]:   File
"/usr/lib/python2.4/site-packages/Twisted-8.2.0-py2.4-linux-x86_64.egg/twisted/internet/epollreactor.py",
line 231, in _doReadOrWrite
Mar 12 12:22:54 hkcn-p2 media-relay[3373]: why = selectable.doRead()

Regards,
Jinke Jiang

___
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users


[OpenSIPS-Users] DB-ONLY mode call between two proxies failed.

2009-11-01 Thread Jiang Jinke
I'm using the same location table with two/three proxy server, but I
can't make calls between the proxies.
Do I have to do replication in SIP level ? I'd like to do this in a
simple way, but if replication will make the arch more flexible, then
it's acceptable with a more complicate config.

I'm having the following message in my syslog when the other endpoint
is not in the same proxy server which was receiving the call.

syslog content:
WARNING:usrloc:dbrow2info: non-local socket ...ignoring
ERROR:core:get_out_socket: no socket found
ERROR:tm:update_uac_dst: failed to fwd to af 2, proto 1  (no
corresponding listening socket)
ERROR:tm:t_forward_nonack: failure to add branches

Regards,
Jinke Jiang

___
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users


Re: [OpenSIPS-Users] rtpproxy

2009-09-16 Thread Jiang Jinke
Dear michel,

Of course your softphone can have STUN/TURN function as an option to
the user. This is a client side NAT traversal implementation. But it
can not traverse all kinds of NAT ( for example: symmetric NAT).
But server side implementation such as the rtpproxy or mediaproxy will
deal with the symmetric NAT problem correctly.

Client side NAT traversal methods can lower the loading of the server,
but in today's network most of the clients are behide NAT,
and it seems more symmetric NAT are using today.

The OpenSIPs / rtpproxy does fix those NAT issues if your softphone
doesn't. But If your softphone fix that already, the server side will
do nothing to the softphone.

Client function & server function is similar and they both are trying
to dealing with the NAT problem.

Regards,
Jinke Jiang

On Wed, Sep 16, 2009 at 5:16 AM, michel freiha  wrote:
> Dear All,
>
> I'm developing a Softphone from scratch and I'm using PJSIP sip stackI'm
> using OpenSIPS as proxy server with rtpproxy...
> My question is:
>
> Can rtpproxy handle the NAT traversal issue without intervention of a
> standalone STUN/TURN/ICE solution or I should have my own STUN/TURN/ICE
> installed on a standalone server that will take care about NAT Traversal?
>
> Regards
>
> ___
> Users mailing list
> Users@lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
>

___
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users


Re: [OpenSIPS-Users] mediaproxy relay on none default route interface failed

2009-09-10 Thread Jiang Jinke
Thanks for the detail instruction.
I just use a symlink into the directory, it's working properly now.

Just like below:
/usr/local/relay1/media-relay   -> /usr/bin/media-relay
/usr/local/relay2/media-relay   -> /usr/bin/media-relay

Regards,
Jinke Jiang

On Thu, Sep 10, 2009 at 10:02 PM, Dan Pascu  wrote:
>
> On 10 Sep 2009, at 15:47, Raúl Alexis Betancor Santana wrote:
>
>> On Thursday 10 September 2009 11:56:00 Ghaith ALKAYYEM wrote:
>>> Hello,
>>>
>>> I think it's not possible to use two separate relays on the same
>>> server,
>>> I tried that a lot then I switched to RTPproxy.
>>
>> That's not true, you could run as many Realys as you want on the
>> same server,
>> only have to patch mediaproxy-relay to be able to call it with a
>> diferent .cfg as the default one, have diferent listen ports and no
>> more.
>
> You don't need to patch anything. Just unpack mediaproxy in as many
> different directories as you need, run ./build_inplace and modify each
> config.ini in those directories as needed. Then run mediaproxy from
> those directories and each of them will use the local config.ini from
> its own directory.
>
> Alternatively, if you want to use a system wide installation, you can
> copy the binaries from /usr/bin to a number of different directories
> and add a config.ini in each directory. Then run those binaries from
> those directories instead of /usr/bin/ and each binary will use the
> config.ini file in its own directory to overwrite settings from the
> global /etc/mediaproxy/config.ini.
>
> Mediaproxy uses 2 configuration files. The global one resides in /etc/
> mediaproxy/config.ini. On top of that if a config.ini is present in
> the same directory as the binary (media-relay & media-dispatcher) that
> one will be used to overwrite the settings from the global one having
> priority over it.
>
> --
> Dan
>
>
>
>
> ___
> Users mailing list
> Users@lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>

___
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users


Re: [OpenSIPS-Users] mediaproxy relay on none default route interface failed

2009-09-10 Thread Jiang Jinke
Dear Raúl,

Thanks for the idea. But I'm wondering if there is another way to do
this easily.

Regards,
Jinke Jiang

2009/9/10 Raúl Alexis Betancor Santana :
> On Thursday 10 September 2009 11:56:00 Ghaith ALKAYYEM wrote:
>> Hello,
>>
>> I think it's not possible to use two separate relays on the same server,
>> I tried that a lot then I switched to RTPproxy.
>
> That's not true, you could run as many Realys as you want on the same server,
> only have to patch mediaproxy-relay to be able to call it with a
> diferent .cfg as the default one, have diferent listen ports and no more.
>
>
> --
> Raúl Alexis Betancor Santana
> Dimensión Virtual
>
> ___
> Users mailing list
> Users@lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>

___
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users


[OpenSIPS-Users] mediaproxy relay on none default route interface failed

2009-09-10 Thread Jiang Jinke
Dear All,

I tried to make the relay to listen to the none default route
interface, but failed.

Below is my configuration info and my env.

Using the latest mediaproxy-2.3.8 on CentOS 5.3.

I had media-dispatcher and media-relay running on my server which has
multiple NIC interface,
two public ips which are belong to two different provider.

for example:
eth0: 192.168.88.12
eth1: 203.xx.xx.xx
eth2: 63.xx.xx.xx
eth3: 10.11.12.21

route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric RefUse Iface
63.xx.xx.320.0.0.0 255.255.255.240 U 0  00 eth2
203.xx.xx.128  0.0.0.0 255.255.255.192 U 0  00 eth1
10.11.12.0  0.0.0.0 255.255.255.0   U 0  00 eth3
192.168.88.00.0.0.0 255.255.255.0   U 0  00 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0  00 eth3
0.0.0.0 203.xx.xx.129  0.0.0.0 UG0  00 eth1

But I notice that the relay are always binding to the one that has
default route
as said in the document.
I can use two machine of course, but is it possible to have two
separate relay that will
only sent out packet from the interface it's listening to.

my config file is:
[Relay]
dispatchers = 63.xx.xx.xx 203.xx.xx.xx
port_range = 3:4
log_level = DEBUG
[Dispatcher]
socket_path = dispatcher.sock
listen_management = 127.0.0.1
log_level = DEBUG
relay_timeout = 5
[TLS]
certs_path = tls
[Database]
[Radius]
[OpenSIPS]
socket_path = '/var/run/opensips.sock'
max_connections = 20

I tried to use the media_relay_avp before calling use_media_proxy();
but it seems the relay still listening to the other interface which
has the default route.

The script of opensips is below:
$avp(s:media_relay) = "63.xx.xx.xx";
use_media_proxy();

Regards,
--
Jinke Jiang



the debug log of mediaproxy:
Sep 10 18:16:54 ssw1 media-dispatcher[21925]: debug: Issuing "update"
command to relay at 63.xx.xx.xx
Sep 10 18:16:54 ssw1 media-relay[21930]: debug: Received new SDP offer
Sep 10 18:16:54 ssw1 media-relay[21930]:
mediaproxy.mediacontrol.StreamListenerProtocol starting on 30028
Sep 10 18:16:54 ssw1 media-relay[21930]:
mediaproxy.mediacontrol.StreamListenerProtocol starting on 30029
Sep 10 18:16:54 ssw1 media-relay[21930]:
mediaproxy.mediacontrol.StreamListenerProtocol starting on 30030
Sep 10 18:16:54 ssw1 media-relay[21930]:
mediaproxy.mediacontrol.StreamListenerProtocol starting on 30031
Sep 10 18:16:54 ssw1 media-relay[21930]: debug: Added new stream:
(audio) 10.10.101.147:20562 (RTP: Unknown, RTCP: Unknown) <->
203.xx.xx.xx:30028 <->

203.xx.xx.xx:30030 <-> Unknown (RTP: Unknown, RTCP: Unknown)
Sep 10 18:16:54 ssw1 media-relay[21930]: debug: created new session
4022675...@10.10.101.147: 8...@test.com (3297793466) -->
0086135x...@test.com
Sep 10 18:16:55 ssw1 media-dispatcher[21925]: debug: Issuing "update"
command to relay at 63.xx.xx.xx
Sep 10 18:16:55 ssw1 media-relay[21930]: debug: updating existing
session 4022675...@10.10.101.147: 8...@test.com (3297793466) -->
0086135x...@test.com
Sep 10 18:16:55 ssw1 media-relay[21930]: debug: Received updated SDP answer
Sep 10 18:16:55 ssw1 media-relay[21930]: debug: Got initial answer
from callee for stream: (audio) 10.10.101.147:20562 (RTP: Unknown,
RTCP: Unknown) <->

203.xx.xx.xx:30028 <-> 203.xx.xx.xx:30030 <-> 203.xx.xx.15x:18550
(RTP: Unknown, RTCP: Unknown)
Sep 10 18:16:56 ssw1 media-relay[21930]: debug: Got traffic
information for stream: (audio) 10.10.101.147:20562 (RTP:
119.145.xx.xx:20562, RTCP: Unknown) <->

203.xx.xx.xx:30028 <-> 203.xx.xx.xx:30030 <-> 203.xx.xx.15x:18550
(RTP: Unknown, RTCP: Unknown)
Sep 10 18:16:56 ssw1 media-relay[21930]: debug: Got traffic
information for stream: (audio) 10.10.101.147:20562 (RTP:
119.145.xx.xx:20562, RTCP: Unknown) <->

203.xx.xx.xx:30028 <-> 203.xx.xx.xx:30030 <-> 203.xx.xx.15x:18550
(RTP: 203.xx.xx.15x:18550, RTCP: Unknown)
Sep 10 18:16:58 ssw1 media-relay[21930]: debug: Got traffic
information for stream: (audio) 10.10.101.147:20562 (RTP:
119.145.xx.xx:20562, RTCP: Unknown) <->

203.xx.xx.xx:30028 <-> 203.xx.xx.xx:30030 <-> 203.xx.xx.15x:18550
(RTP: 203.xx.xx.15x:18550, RTCP: 203.xx.xx.15x:18551)
Sep 10 18:17:03 ssw1 media-dispatcher[21925]: debug: Issuing "update"
command to relay at 63.xx.xx.xx
Sep 10 18:17:03 ssw1 media-relay[21930]: debug: updating existing
session 4022675...@10.10.101.147: 8...@test.com (3297793466) -->
0086135x...@test.com
Sep 10 18:17:03 ssw1 media-relay[21930]: debug: Received updated SDP answer
Sep 10 18:17:03 ssw1 media-relay[21930]: debug: Unchanged stream:
(audio) 10.10.101.147:20562 (RTP: 119.145.xx.xx:20562, RTCP: Unknown)
<->

203.xx.xx.xx:30028 <-> 203.xx.xx.xx:30030 <-> 203.xx.xx.15x:18550
(RTP: 203.xx.xx.15x:18550, RTCP: 203.xx.xx.15x:18551)
Sep 10 18:17:04 ssw1 media-dispatcher[21925]: debug: Issuing "remove"
command to relay at 63.xx.xx.xx
Sep 10 18:17:04 ssw1 media-relay[21930]: debug: removing 

Re: [OpenSIPS-Users] Got No suitable relay found from mediaproxy-2.3.6

2009-09-01 Thread Jiang Jinke
Problem solved!
I found that the mediaproxy is not working if I put the config.ini in
/usr/local/mediaproxy/config.ini, but it's working fine when I
put the configuration file in /etc/mediaproxy/config.ini.

I found out by looking into the source code and adding debug info in
both relay.py and dispatcher.py, found that the ConfigSetting didn't
get any thing even if I changed the /usr/local/mediaproxy/config.ini.

Double check with the INSTALL file of mediaproxy and found it's my
stupid mis-understanding on the following statement:
"MediaProxy will look for both a local configuration file, which is placed in
the same directory as the media-relay and media-dispather scripts, and a
system configuration file which is placed in /etc/mediaproxy/"

Sorry for this stupid question. :-P

Accutually if I'm famaliar with the log of mediaproxy, I'll find out
the problem at the first sight on the log.
The normal log should look like the following, the relay will connect
to dispatcher once it started. My previous log
shows that I didn't have the right configuration.

Sep  2 00:43:08 p2 media-relay[31750]: Log opened.
Sep  2 00:43:08 p2 media-relay[31750]: Starting MediaProxy Relay 2.3.6
Sep  2 00:43:08 p2 media-relay[31750]: Set resource limit for maximum
open file descriptors to 11000
Sep  2 00:43:08 p2 media-relay[31750]: debug: Adding new dispatcher at
203.193.xx.xx:25060
Sep  2 00:43:08 p2 media-dispatcher[31745]: debug: Connection from
relay at 203.193.xx.xx
Sep  2 00:43:08 p2 media-dispatcher[31745]: debug: Issuing "sessions"
command to relay at 203.193.xx.xx
Sep  2 00:43:08 p2 media-relay[31750]: debug: Connected to dispatcher
at 203.193.xx.xx:25060

Hope it will be helpful to others who are not famaliar with the
mediaproxy log info.

--
Jinke Jiang

On Mon, Aug 31, 2009 at 4:28 PM, Jiang Jinke wrote:
> [OpenSIPS-Users] Got No suitable relay found from mediaproxy-2.3.6
> Dear All,
>
> I got 'No suitable relay found' from media-dispatcher when I'm calling
> out from opensips to a Cisco 5300.
> I'm using NAT'ed ip and Cisco 5300 is using a public ip.
>
> I notice there is a post
> http://lists.opensips.org/pipermail/users/2009-January/002754.html
> in this list already talking about the similar problem.
> But my problem didn't have the push error. It's it a different problem ?
>
> I also tried to dig into the mediaproxy code in mediaproxy/dispatcher.py,
> adding more debug log to see if I can find out what the problem is.
> I also tried using the old version mediaproxy-2.0.3, but I still got
> exactly the same problem.
>
> firewall is disabled while testing.
> Here is my detail message:
> System info:
> CentOS release 5.3 (Final)
> uname -a
> Linux p2 2.6.18-128.4.1.el5PAE #1 SMP Tue Aug 4 20:58:34 EDT 2009 i686
> i686 i386 GNU/Linux
> python -V
> Python 2.4.3
>
> [r...@p2 mediaproxy]# media-relay --version
> media-relay 2.3.6
> [r...@p2 mediaproxy]# media-dispatcher --version
> media-dispatcher 2.3.6
> [r...@p2 mediaproxy]#
> [r...@p2 mediaproxy]# cd /usr/local/mediaproxy
> [r...@p2 mediaproxy]# cat config.ini | grep -e "^[^;]"
> [Relay]
> dispatchers = 203.193.xx.xxx
> relay_ip = 203.193.xx.xxx
> port_range = 3:4
> log_level = DEBUG
> [Dispatcher]
> socket_path = dispatcher.sock
> listen = 203.193.xx.xxx
> listen_management = 127.0.0.1
> log_level = DEBUG
> relay_timeout = 5
> [TLS]
> [Database]
> [Radius]
> [OpenSIPS]
> socket_path = '/var/run/opensips.sock'
> max_connections = 20
>
> [r...@p2 mediaproxy]# /usr/local/ngsw/sbin/opensips -V
> version: opensips 1.5.3-notls (i386/linux)
> flags: STATS: Off, USE_IPV6, USE_TCP, DISABLE_NAGLE, USE_MCAST,
> SHM_MEM, SHM_MMAP, PKG_MALLOC, F_MALLOC,
>
> FAST_LOCK-ADAPTIVE_WAIT
> ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16,
> MAX_URI_SIZE 1024, BUF_SIZE 65535
> poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
> svnrevision: unknown
> @(#) $Id: main.c 5887 2009-07-16 11:47:46Z bogdan_iancu $
> main.c compiled on 13:33:26 Aug 30 2009 with gcc 4.1.2
>
> This is part of the scripts of the opensips.cfg:
>
>        # NAT'ed, we call it after proxy authorize
>        if (((isflagset(17) && isflagset(6)) || isflagset(18))
>                && is_method("INVITE|ACK")) {
>                xlog("L_INFO", "$Tf\tuse_media_proxy() in beginning\r\n");
>                setdebug(7);
>                $avp(s:media_relay) = "203.193.xx.xx";
>                use_media_proxy();
>                setdebug();
>        };
>
>
> OPENSIPS logs:
> Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: Mon Aug 31
> 15:48:58 2009      Received from
&g

[OpenSIPS-Users] Got No suitable relay found from mediaproxy-2.3.6

2009-08-31 Thread Jiang Jinke
[OpenSIPS-Users] Got No suitable relay found from mediaproxy-2.3.6
Dear All,

I got 'No suitable relay found' from media-dispatcher when I'm calling
out from opensips to a Cisco 5300.
I'm using NAT'ed ip and Cisco 5300 is using a public ip.

I notice there is a post
http://lists.opensips.org/pipermail/users/2009-January/002754.html
in this list already talking about the similar problem.
But my problem didn't have the push error. It's it a different problem ?

I also tried to dig into the mediaproxy code in mediaproxy/dispatcher.py,
adding more debug log to see if I can find out what the problem is.
I also tried using the old version mediaproxy-2.0.3, but I still got
exactly the same problem.

firewall is disabled while testing.
Here is my detail message:
System info:
CentOS release 5.3 (Final)
uname -a
Linux p2 2.6.18-128.4.1.el5PAE #1 SMP Tue Aug 4 20:58:34 EDT 2009 i686
i686 i386 GNU/Linux
python -V
Python 2.4.3

[r...@p2 mediaproxy]# media-relay --version
media-relay 2.3.6
[r...@p2 mediaproxy]# media-dispatcher --version
media-dispatcher 2.3.6
[r...@p2 mediaproxy]#
[r...@p2 mediaproxy]# cd /usr/local/mediaproxy
[r...@p2 mediaproxy]# cat config.ini | grep -e "^[^;]"
[Relay]
dispatchers = 203.193.xx.xxx
relay_ip = 203.193.xx.xxx
port_range = 3:4
log_level = DEBUG
[Dispatcher]
socket_path = dispatcher.sock
listen = 203.193.xx.xxx
listen_management = 127.0.0.1
log_level = DEBUG
relay_timeout = 5
[TLS]
[Database]
[Radius]
[OpenSIPS]
socket_path = '/var/run/opensips.sock'
max_connections = 20

[r...@p2 mediaproxy]# /usr/local/ngsw/sbin/opensips -V
version: opensips 1.5.3-notls (i386/linux)
flags: STATS: Off, USE_IPV6, USE_TCP, DISABLE_NAGLE, USE_MCAST,
SHM_MEM, SHM_MMAP, PKG_MALLOC, F_MALLOC,

FAST_LOCK-ADAPTIVE_WAIT
ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16,
MAX_URI_SIZE 1024, BUF_SIZE 65535
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
svnrevision: unknown
@(#) $Id: main.c 5887 2009-07-16 11:47:46Z bogdan_iancu $
main.c compiled on 13:33:26 Aug 30 2009 with gcc 4.1.2

This is part of the scripts of the opensips.cfg:

# NAT'ed, we call it after proxy authorize
if (((isflagset(17) && isflagset(6)) || isflagset(18))
&& is_method("INVITE|ACK")) {
xlog("L_INFO", "$Tf\tuse_media_proxy() in beginning\r\n");
setdebug(7);
$avp(s:media_relay) = "203.193.xx.xx";
use_media_proxy();
setdebug();
};


OPENSIPS logs:
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: Mon Aug 31
15:48:58 2009  Received from

119.145.xxx.xxx^M
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: Mon Aug 31
15:48:58 2009  INVITE

sip:0086135x...@domain.com SIP/2.0^M
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: Mon Aug 31
15:48:58 2009  From:

;tag=3759547607^M
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: Mon Aug 31
15:48:58 2009  To:

;tag=^M
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: Mon Aug 31
15:48:58 2009  Call-ID:

50525...@10.10.101.147^m
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: Mon Aug 31
15:48:58 2009  CSeq: 21^M
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: Mon Aug 31
15:48:58 2009  Contact:

^M
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: Mon Aug 31
15:48:58 2009  behind nat^M
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]:
rc_avpair_gen: received unknown VSA attribute 101,

vendor 9 of length 8: 0x3438382E3030
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: Mon Aug 31
15:48:58 2009  use_media_proxy() in

beginning^M
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]:
DBG:core:parse_headers: flags=
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]:
DBG:core:parse_headers: flags=800
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]:
ERROR:mediaproxy:use_media_proxy: mediaproxy returned

error
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: Mon Aug 31
15:48:58 2009  lookup aliases^M
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: Mon Aug 31
15:48:58 2009  NAT'ed flag already set

before lookup location^M
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: Mon Aug 31
15:48:58 2009  goto static routing^M
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: removed
#following Mon Aug 31 15:48:58 2009   # in

uri^M
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24020]: removed
#following Mon Aug 31 15:48:58 2009   # in to

uri^M
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24027]: Mon Aug 31
15:48:58 2009  onreply_route 1^M
Aug 31 15:48:58 p2 /usr/local/ngsw/sbin/opensips[24027]: Mon Aug 31
15:48:58 2009  SIP/2.0 100 Trying^M


mediaproxy logs:
Aug 31 15:23:03 p2 media-relay[31683]: Log opened.
Aug 31 15:23:03 p2 media-relay[31683]: Starting MediaProxy Relay 2.3.6
Aug 31 15:23:03 p2 media-relay[31683]: Set resource limit for maximum
open