Hi,
I am working on configuring RTP Proxy. The problem I am having is that
Openser will use rtp proxy to serve the rtp session even when both UAs and
Openser are withing the same LAN.
Here is the openser.cfg I used:
if (nat_uac_test("19")) {
if (method=="REGISTER") {
fix_nated_register();
} else {
fix_nated_contact();
};
setflag(5);
};
Hre is a INVITE SIP packet from one of the UA:
U 192.168.1.101:5062 -> 192.168.1.104:5060
INVITE sip:1006@192.168.1.104 <sip%3A1006(a)192.168.1.104> SIP/2.0..Via:
SIP/2.0/UDP 192.168.1.101:5062;branch=z9hG4b
K-220120f9..From: "1005"
<sip:1005@192.168.1.104<sip%3A1005(a)192.168.1.104>>;tag=490c5d623d5acbf5o0..To:
"1006" <si
p:1006@192.168.1.104 <p%3A1006(a)192.168.1.104>>..Call-ID:
3e5720e1-bf774681@192.168.1.101..CSeq: 102 INVITE..Max-F
orwards: 70..Proxy-Authorization: Digest username="1005",realm="
192.168.1.104",nonce="48
4b3b51ea052f45482ef4fd26f00a14239c3465",uri="sip:1006@192.168.1.104<sip%3A1006(a)192.168.1.104>
",algorithm=MD5,respo
nse="d46ea7cd9781b9a1493e6eaf7b978086",qop=auth,nc=00000001,cnonce="676aa6d8"..Contact:
"1005" <sip:1005@192.168.1.101:5062>..Expires: 240..User-Agent:
Sipura/SPA921-4.1.10(b).
.Content-Length: 401..Allow: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY,
OPTIONS, REFER..Con
tent-Type: application/sdp....v=0..o=- 26093424 26093424 IN IP4
192.168.1.101..s=-..c=IN
IP4 192.168.1.101..t=0 0..m=audio 16474 RTP/AVP 0 2 4 8 18 96 97 98
101..a=rtpmap:0 PCM
U/8000..a=rtpmap:2 G726-32/8000..a=rtpmap:4 G723/8000..a=rtpmap:8
PCMA/8000..a=rtpmap:18
G729a/8000..a=rtpmap:96 G726-40/8000..a=rtpmap:97
G726-24/8000..a=rtpmap:98 G726-16/800
0..a=rtpmap:101 telephone-event/8000..a=fmtp:101
0-15..a=ptime:30..a=sendrecv..
#
I even tested with nat_uac_test("1") and nat_uac_test("2") and
nat_uac_test("16") seperately and found that nat_uac_test("1") is return
true, meaning that Openser detects a RFC1918 address in the Contact field.
If Openser is in the same LAN as the UA, then no rtp proxy should be
utilized. Could someone please help me out to configure rtp proxy
correctly?
I would appreciate any help in solving this problem.
Regards,
Mark
----- "David Villasmil" <david.villasmil.work(a)gmail.com> napisał:
> Although I've looked and looked for any info on the different values
> of the "state" column of the dialog table, I can't find it anywhere,
> What does it mean?
>From branches/1.3/modules/dialog/dlg_hash.h:
#define DLG_STATE_UNCONFIRMED 1
#define DLG_STATE_EARLY 2
#define DLG_STATE_CONFIRMED_NA 3
#define DLG_STATE_CONFIRMED 4
#define DLG_STATE_DELETED 5
Unconfirmed means that only INVITE was sent.
Early - after any 1XX response
Confirmed_na - after 2XX
Confirmed - after ACK response
after errors (or BYE) state switches to deleted.
At least that's what I understood from source and observing database...
Stan
If the call has 0 seconds duration, CDRTool does not calculate a cost,
it is zero. The connection fee applies only if the call has a positive
duration.
Adrian
>>>>>>>>>>>>
Hi, RFC3261 says that a UAC should send inmediately a BYE after a 2XX
response
if the offer in the 2xx response is not acceptable (when the INVITE
has no
body). So this will generate an answered call of duration 0 (probably).
But if the CDRTool rate has "connect" fixed amount then this invalid
call will
have cost. I think this shouldn't have cost since it's a SIP protocol
issue
(accepting a call and sending a BYE inmediately) but not an human
decision.
Opinions?
Hello all,
Although I've looked and looked for any info on the different values of
the "state" column of the dialog table, I can't find it anywhere, What does
it mean?
Thanks
David
Hello all
Is it possible to store extra info in the dialog table?
For instance, I want to add a column, named time_in, and I want the dialog
module to add to the fields inserted a "now()"
Is this possible?
Thanks
David
Dear All
I am trying to do the following:
I want to enable/disable users, to do that I added a column named status
to the subscribers table. It contains a string saying enabled or
disabled. I did add the following info to the config file.
# ----- AVP params --------
modparam("avpops", "avp_url",
"mysql://openser:0o0o0o0o0@xx.xx.xx.xx/openser")
modparam("avpops","avp_table","subscriber")
modparam("avpops","db_scheme",
"scheme1:username_col=username;value_col=status;value_type=string;table=
subscriber")
And in the route statement I added "This is a sample provided by
MPWizard..thanks for that" however it apparently needs some changes to
work for me.
if (avp_db_load("$tU", "$avp(s:disabled)"))
{
xlog("L_INFO", "User is local but disabled, denying registration")
}
The error I get in the log file is as follows:
Jun 6 11:20:38 [21919] ERROR:mysql:db_mysql_submit_query: driver error:
Unknown column 'value' in 'field list'
Jun 6 11:20:38 [21919] ERROR:mysql:db_mysql_query: error while
submitting query
Jun 6 11:20:38 [21919] ERROR:avpops:ops_dbload_avps: db_load failed
Any suggestions please.
Thanks to all of you guys. For all the support now and before ..you
rock.
Note that there are two way to configure openser in multi-home envs. :
- either enable mhome param and openser will autodetect the
outbound interface based on the destination - quite slow
- either use force_send_socket() function if the msg flow is clear
and you know from the script what interface should be used - very fast
Regards,
Bogdan
jvelev(a)avangardsolutions.com wrote:
> That fixed the problem. 10x
>
> Regards,
> J.Velev
>
> On Thu, 2008-06-05 at 20:11 +0300, Bogdan-Andrei Iancu wrote:
>
>> Hi,
>>
>> have you enabled the mhomed param?
>> http://www.openser.org/dokuwiki/doku.php/core-cookbook:1.3.x#mhomed
>>
>> Regards,
>> Bogdan
>>
>> jvelev(a)avangardsolutions.com wrote:
>>
>>> Hello all
>>>
>>> I'm trying to run OpenSER on a multi-home environment. OpenSER listens
>>> on the real IP and on the private one. The main idea is to proxy traffic
>>> coming from real IPs to the internal network.
>>>
>>> OpenSER tries to reach the internal IPs talking to them with it's REAL
>>> IP despite it's directly connected to the internal network and can use
>>> it's private IP.
>>>
>>> Comments & Ideas appreciated.
>>>
>>>
>>>
>>>
>>>
>>>
>>
>
>
>
Hi, RFC3261 says that a UAC should send inmediately a BYE after a 2XX response
if the offer in the 2xx response is not acceptable (when the INVITE has no
body). So this will generate an answered call of duration 0 (probably).
But if the CDRTool rate has "connect" fixed amount then this invalid call will
have cost. I think this shouldn't have cost since it's a SIP protocol issue
(accepting a call and sending a BYE inmediately) but not an human decision.
Opinions?
13.2.2.4 2xx Responses
--
Iñaki Baz Castillo
ibc(a)in.ilimit.es
Bogdan,
I'll need to check out the shmem statistics.
I mean, this is the memory output for the OpenSER processes having run
for about 24 hours. Does it look right?:
# ps -C openser -o vsz,rss
VSZ RSS
234124 12636
369940 159392
369940 158840
369940 158860
370340 159220
369804 158696
370068 158932
370204 159048
370464 159344
234124 20904
234124 9484
234128 7952
234124 7948
234124 7880
234124 7880
234124 7880
234124 7880
234124 7880
234124 7880
234124 7880
234124 8332
Here are the modules I'm using. Not sure if any have a dependency on libxml:
loadmodule "mysql.so"
loadmodule "sl.so"
loadmodule "tm.so"
loadmodule "usrloc.so"
loadmodule "auth.so"
loadmodule "auth_db.so"
loadmodule "maxfwd.so"
loadmodule "mi_fifo.so"
loadmodule "nathelper.so"
loadmodule "perl.so"
loadmodule "registrar.so"
loadmodule "rr.so"
loadmodule "textops.so"
loadmodule "uri.so"
Thanks,
Julian
On Wed, May 7, 2008 at 5:22 AM, Bogdan-Andrei Iancu
<bogdan(a)voice-system.ro> wrote:
> Hi Julian,
>
> Have you tried to use the the shmem statistics to monitor the usage of SHM
> memory?
>
> Both for PKG and SHM memory, openser allocs at startup the whole memory
> (depending of how much you configured). Any leak will not be vizible for any
> external tools.
>
> Also, are you using any module that have dependency of libxml library?
>
> The dump you posted shows more or less nothing more than init phase -
> before sending the signal, be sure you select a worker process (use fifo
> command "ps" to get the list and types of processes).
>
> Regards,
> Bogdan
>
> Julian Yap wrote:
>
> >
> >
> >
> > On Mon, May 5, 2008 at 10:25 PM, Henning Westerholt
> > <henning.westerholt(a)1und1.de> wrote:
> >
> >
> > > On Saturday 03 May 2008, Julian Yap wrote:
> > > > I'm currently running OpenSER 1.3.1.
> > > >
> > > > It seems to slowly leaks memory.
> > > >
> > > > I've recompiled it as per for debug support in the memory manager:
> > > > http://www.openser.org/dokuwiki/doku.php/troubleshooting:memory
> > > >
> > > > Here is the memory manager dump of the memory status:
> > > > http://julianyap.com/download/openser1.3.1_memory_dump20080502.txt
> > > >
> > > > Any suggestions would be very welcome.
> > >
> > > Hi Julian,
> > >
> > > can you give a little more details about your problem? Why do you think
> it
> > > leaks memory? Do you get memory allocation errors in the logs?
> > >
> > > Cheers,
> > >
> > > Henning
> > >
> > >
> >
> > Henning,
> >
> > I don't get any memory allocation errors.
> >
> > I've recently updated to OpenSER 1.3 branch SVN r4107 but the 'leak'
> > still remains.
> >
> > On a 4GB box, free memory just seems to deplete.
> >
> > I have a cron job which restarts OpenSER every night but it seems like
> > not all the memory is free'd up. Eventually the box needs to be
> > rebooted. In the past, running out of memory has led to oom-killer
> > killing OpenSER.
> >
> > For example, I have this cron job:
> > */5 * * * * root echo "`date` `free | grep 'buffers/cache'`" >>
> > /var/log/free_memory.log
> >
> > Memory just depletes. Here's where OpenSER was restarted around midnight:
> > Sun May 4 23:10:01 HST 2008 -/+ buffers/cache: 2014972 2095204
> > Sun May 4 23:15:01 HST 2008 -/+ buffers/cache: 2027184 2082992
> > Sun May 4 23:20:01 HST 2008 -/+ buffers/cache: 2027604 2082572
> > Sun May 4 23:25:01 HST 2008 -/+ buffers/cache: 2038064 2072112
> > Sun May 4 23:30:01 HST 2008 -/+ buffers/cache: 2037868 2072308
> > Sun May 4 23:35:01 HST 2008 -/+ buffers/cache: 2053184 2056992
> > Sun May 4 23:40:01 HST 2008 -/+ buffers/cache: 2055216 2054960
> > Sun May 4 23:45:01 HST 2008 -/+ buffers/cache: 2075612 2034564
> > Sun May 4 23:50:01 HST 2008 -/+ buffers/cache: 2103232 2006944
> > Sun May 4 23:55:01 HST 2008 -/+ buffers/cache: 2114384 1995792
> > Mon May 5 00:00:01 HST 2008 -/+ buffers/cache: 2117320 1992856
> > Mon May 5 00:05:01 HST 2008 -/+ buffers/cache: 860304 3249872
> > Mon May 5 00:10:01 HST 2008 -/+ buffers/cache: 861208 3248968
> > Mon May 5 00:15:01 HST 2008 -/+ buffers/cache: 868968 3241208
> >
> > Here's where I just restarted OpenSER:
> > Mon May 5 23:30:01 HST 2008 -/+ buffers/cache: 2041740 2068436
> > Mon May 5 23:35:01 HST 2008 -/+ buffers/cache: 2049572 2060604
> > Mon May 5 23:40:01 HST 2008 -/+ buffers/cache: 2054856 2055320
> > Mon May 5 23:45:01 HST 2008 -/+ buffers/cache: 2065316 2044860
> > Mon May 5 23:50:01 HST 2008 -/+ buffers/cache: 2062248 2047928
> > Mon May 5 23:55:01 HST 2008 -/+ buffers/cache: 2076148 2034028
> > Tue May 6 00:00:01 HST 2008 -/+ buffers/cache: 2087256 2022920
> > Tue May 6 00:05:01 HST 2008 -/+ buffers/cache: 2091300 2018876
> > Tue May 6 00:10:01 HST 2008 -/+ buffers/cache: 2093244 2016932
> > Tue May 6 00:15:01 HST 2008 -/+ buffers/cache: 1382632 2727544
> >
> > Thanks,
> > Julian
> >
> > _______________________________________________
> > Devel mailing list
> > Devel(a)lists.openser.org
> > http://lists.openser.org/cgi-bin/mailman/listinfo/devel
> >
> >
> >
>
>
Hi David,
But this is not from script. Is is from outside openser.
Regards,
Bogdan
David Villasmil wrote:
> I've done that...
>
> Using the dialog module, and getting the hash_id and hash_entry, you can:
>
> :dlg_end_dlg:_reply_fifo_file_
> 342
> 56
> _empty_line_
>
> and that ends the call.
>
> On Thu, Jun 5, 2008 at 3:17 PM, Bogdan-Andrei Iancu
> <bogdan(a)voice-system.ro <mailto:bogdan@voice-system.ro>> wrote:
>
> Hi,
>
> No, there is no way to terminate the call directly from the script
> - at
> least not so far :).
>
> Regards,
> Bogdan
>
> kionez wrote:
> > Hi all,
> > I'm trying to add a simple priority mechanism in my openser 1.3
> script.
> >
> > Reading docs i found that dialog module gives a MI command to
> terminate
> > a call, dlg_end_dlg. Is there any way to terminate a call within a
> > script (or a perl script)? I can't find anything on the web, the
> only
> > way i found is to exec something like "openserctl fifo
> dlg_end_dlg $hash
> > $id", but it's slower than a direct function inside the main
> script..
> >
> > thanks in advance
> >
> > k.
> >
> > _______________________________________________
> > Users mailing list
> > Users(a)lists.openser.org <mailto:Users@lists.openser.org>
> > http://lists.openser.org/cgi-bin/mailman/listinfo/users
> >
> >
>
>
> _______________________________________________
> Users mailing list
> Users(a)lists.openser.org <mailto:Users@lists.openser.org>
> http://lists.openser.org/cgi-bin/mailman/listinfo/users
>
>