Hi!
I have a problem with search();
I try to match a contact header with IP address:
if !(search("Contact:.*@[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+:")) {
works fine, whereas
if !(search("Contact:.*@[0-9]+\.[0-9]+\.[0-9]+\.\d+:")) {
does not work. ^^
Looks like search() does not like \d
Are there any known limitations for the regular expressions?
regards
klaus
Thanks Roger,
You are right. I reinstalled SuSE with all the available development
packages cause I am not sure what else is needed if there are always
something missing. SER works fine with authentication now.
Thanks,
Pat
>From: "Roger Lewau" <roger.lewau(a)serverhallen.com>
>To: "'Pat wang'" <wangyu39(a)hotmail.com>,<serusers(a)lists.iptel.org>
>Subject: SV: [Serusers] SER core dump on SuSE
>Date: Wed, 3 Aug 2005 19:01:08 +0200
>
>Hi,
>
>Did you install a precompiled version of SER and modules? I had the exact
>same problem on FreeBSD but solved it by downloading the source and compile
>the mysql.so module by hand and then replacing the precompiled module.
>
>Dont know the exact reason for the crash I had, but the above step solved
>it. Could be woth a try.
>
>Kind regards
>Roger
>
>
>-----Ursprungligt meddelande-----
>Från: serusers-bounces(a)iptel.org [mailto:serusers-bounces@lists.iptel.org] För
>Pat
>wang
>Skickat: den 3 augusti 2005 17:53
>Till: serusers(a)lists.iptel.org
>Ämne: [Serusers] SER core dump on SuSE
>
>Hi,
>
>I am having trouble running SER on SuSE Linux. SER crashes when
>authentication module is used. Whenever a REGISTER arrives to SER, it gives
>a core dump. If I turn authentication off then everything is fine. I have
>tried this on different versions of SuSE including: 9.0 (2.4 Kernel) and
>9.1
>and 9.3 (2.6 Kernel). They all give this core dump:
>
>Core was generated by `ser -E -w .'.
>Program terminated with signal 11, Segmentation fault.
>
>warning: current_sos: Can't read pathname for load map: Input/output error
>
>Reading symbols from /lib/libdl.so.2...done.
>Loaded symbols for /lib/libdl.so.2
>Reading symbols from /lib/libresolv.so.2...done.
>Loaded symbols for /lib/libresolv.so.2
>Reading symbols from /lib/tls/libc.so.6...done.
>Loaded symbols for /lib/tls/libc.so.6
>Reading symbols from /lib/ld-linux.so.2...done.
>Loaded symbols for /lib/ld-linux.so.2
>Reading symbols from /usr/local/lib/ser/modules/mysql.so...done.
>Loaded symbols for /usr/local/lib/ser/modules/mysql.so
>Reading symbols from /usr/lib/libmysqlclient.so.12...done.
>Loaded symbols for /usr/lib/libmysqlclient.so.12 Reading symbols from
>/lib/libz.so.1...done.
>Loaded symbols for /lib/libz.so.1
>Reading symbols from /lib/libcrypt.so.1...done.
>Loaded symbols for /lib/libcrypt.so.1
>Reading symbols from /lib/libnsl.so.1...done.
>Loaded symbols for /lib/libnsl.so.1
>Reading symbols from /lib/tls/libm.so.6...done.
>Loaded symbols for /lib/tls/libm.so.6
>Reading symbols from /usr/local/lib/ser/modules/sl.so...done.
>Loaded symbols for /usr/local/lib/ser/modules/sl.so Reading symbols from
>/usr/local/lib/ser/modules/tm.so...done.
>Loaded symbols for /usr/local/lib/ser/modules/tm.so Reading symbols from
>/usr/local/lib/ser/modules/rr.so...done.
>Loaded symbols for /usr/local/lib/ser/modules/rr.so Reading symbols from
>/usr/local/lib/ser/modules/maxfwd.so...done.
>Loaded symbols for /usr/local/lib/ser/modules/maxfwd.so
>Reading symbols from /usr/local/lib/ser/modules/usrloc.so...done.
>Loaded symbols for /usr/local/lib/ser/modules/usrloc.so
>Reading symbols from /usr/local/lib/ser/modules/registrar.so...done.
>Loaded symbols for /usr/local/lib/ser/modules/registrar.so
>Reading symbols from /usr/local/lib/ser/modules/textops.so...done.
>Loaded symbols for /usr/local/lib/ser/modules/textops.so
>Reading symbols from /usr/local/lib/ser/modules/auth.so...done.
>Loaded symbols for /usr/local/lib/ser/modules/auth.so
>Reading symbols from /usr/local/lib/ser/modules/auth_db.so...done.
>Loaded symbols for /usr/local/lib/ser/modules/auth_db.so
>Reading symbols from /lib/libnss_files.so.2...done.
>Loaded symbols for /lib/libnss_files.so.2 #0 qm_malloc (qm=0x80ffac0,
>size=20) at q_malloc.c:290
>290 q_malloc.c: No such file or directory.
> in q_malloc.c
>(gdb)
>(gdb)
>(gdb)
>(gdb)
>(gdb) bt
>#0 qm_malloc (qm=0x80ffac0, size=20) at q_malloc.c:290
>#1 0x4016322c in new_result () at res.c:199
>#2 0x40162035 in store_result (_h=0x8106138, _r=0xbfffee4c) at dbase.c:298
>#3 0x080998ec in table_version (dbf=0x4039b320, connection=0x8106138,
>table=0xbfffeeb0)
> at db.c:176
>#4 0x40398eaf in auth_db_ver (db_url=0x0, name=0x0) at authorize.c:337
>#5 0x40397fba in str_fixup (param=0x8106c30, param_no=2) at
>authdb_mod.c:238
>#6 0x0806ec55 in fix_actions (a=<value optimized out>) at route.c:243
>#7 0x0806f136 in fix_expr (exp=0x8106c48) at route.c:134
>#8 0x0806f17e in fix_expr (exp=0x8106c78) at route.c:99
>#9 0x0806ed1b in fix_actions (a=<value optimized out>) at route.c:221 #10
>0x0806ed3e in fix_actions (a=<value optimized out>) at route.c:225
>#11 0x0806ed3e in fix_actions (a=<value optimized out>) at route.c:225
>#12 0x0806f026 in fix_rls () at route.c:726
>#13 0x0805df35 in main (argc=4, argv=0xbffff1b4) at main.c:1558
>(gdb)
>
>I have to use Redhat playing SER now. I am really appreciate if someone can
>take a look at the cause. By the way, I tried to install SER from binary
>package as well as compile from the source code, result is the same.
>
>Regards,
>
>Pat
>
>
>_______________________________________________
>Serusers mailing list
>serusers(a)lists.iptel.org
>http://lists.iptel.org/mailman/listinfo/serusers
>
>
Hello,
I am trying to install serweb 0.9.3 release. I already have ser 0.9.3 running with mysql support.
When i try to access the http:<host>/serweb/admin.php, it displays a blank page and nothing else..
Here are the steps i have done so far..
untar package to <root>/serweb directory
copy ./html to /var/www/html/serweb directory
copy ./phplib to /var/www/phplib directory
modified php.ini to have short_open_tag to on
Added alias in httpd.conf as Alias /serweb/ "/var/www/html/serweb/"
Quick install guide mentions modifying config_data_later.php, i am using the default username pass so i skipped it.
changed config_paths.php -> root path is /serweb/
Can someone please help ?
Thanks,
Akr
Frank Kostin wrote:
>
> BTW, I heard that someone might need a licence for G.729 !?
It's a proprietory codec, so yes you need a licence for each and every
channel you transcode. If you want to support the transcoding of 100
simultaneous conversations, you need 100 licences. You don't need a
licence to just use G729; you only need licences when you need to encode
or decode using G729. If you use asterisk, you can purchase a licence
from Digium.
If you know in advance the IP of 1002 and it is static, you can use serctl to add it's contact. This way doing a lookup("location") for 1003 will return both contacts...it's not a nice solution but it whould work.
Samuel.
Unclassified.
>>> Richard Z <rzheng(a)gmail.com> 08/03/05 08:55PM >>>
Hi Samuel,
That's a very good detailed explanation! That's exactly what happened.
In my existing config, I have the logic to deal with the second ring
to 1003(a)test.com. It forks to itself and creates another ser
transaction. I'd like to make it simpler by doing it in a single
transaction.
One way I am thinking about, but haven't tried yet, is when 1003
registers, ser adds its location to both 1002 and 1003. So when ser
does lookup("location") for 1002, the real location for 1003 shows up.
Not sure that it is feasible.
Thanks,
Richard
On 8/2/05, Samuel Osorio Calvo <samuel.osorio(a)nl.thalesgroup.com> wrote:
> Just one remark: only one of the two URI will be translated to the contact.
>
> I'll try to explain...
>
> imagine the incoming Req-URI is 1001(a)test.com. When it passes the first lookup,
> lookup("aliases");
> SER will retrieve the two aliases and put one of them as the new req-uri and the other as branch.
> Req-URI: 1002(a)test.com
> branch: 1003(a)test.com
> Doing the second lookup,
> lookup("location");
> will put the contact of 1002(a)test.com as Req-URI (if more than one contact is present, the subsequent bindings will be added as branches) and the 1003(a)test.com will be left as branch untouched.
> Req-URI: 1002(a)10.1.1.102
> branch: 1003(a)test.com
> This happens because lookup() only takes as input the req-URI.
>
> The result is that SER makes a DNS query for test.com, to send the request to 1003(a)test.com, instead of the end-point. If the DNS is properly configured, test.com should point to SER itself, making SER sending the message to itself via the network. Depending on the config file, it can work but you should check the logs to see what is exactly happening.
> User 1002 will get the message without any problem.
>
> NOTE: depending on the order in the database, 1003 and 1002 can exchange roles in upper explanation.
>
> As SER is now coded, above can not be changed (as far as I know)....
>
> Hope it helps,
>
> Samuel.
>
> Unclassified.
>
> >>> "Zeus Ng" <zeus.ng(a)isquare.com.au> 08/03/05 01:51AM >>>
> You would need two steps here, looup("aliases"), then lookup("location").
>
> Zeus
>
> > -----Original Message-----
> > From: serusers-bounces(a)lists.iptel.org
> > [mailto:serusers-bounces@lists.iptel.org] On Behalf Of Richard Z
> > Sent: Wednesday, 3 August 2005 3:33 AM
> > To: Atle Samuelsen
> > Cc: serusers(a)lists.iptel.org
> > Subject: Re: [Serusers] lookup 2 uri
> >
> >
> > Hi Atle,
> >
> > Alias doesn't replace uri with its real location. I'd like to use
> > lookup("location") to find out its real location. For
> > example, if 102(a)test.com is at 102(a)10.1.1.102 and
> > 103(a)test.com is at 103(a)10.1.1.103. I'd like to replace all
> > uris with 102(a)10.1.1.102 and 103(a)10.1.1.103 in a single ser
> > transaction logic. Would it be possible?
> >
> > Thanks,
> > Richard
> >
> >
> > On 8/1/05, Atle Samuelsen <clona(a)camaro.no> wrote:
> > >
> > > Hi,
> > >
> > > you could do something like :
> > >
> > > serctl alias add 101 sip:102@test.com
> > > serctl alias add 101 sip:103@test.com
> > >
> > > This way the invite would be forked to both 102 and 103,
> > >
> > > just remember to have both lookup("aliases"); and
> > save("aliases"); in
> > > your config at the right spot :-)
> > >
> > > -Atle
> > >
> > >
> > >
> > > * Richard Z <rzheng(a)gmail.com> [050802 04:34]:
> > > > Hi,
> > > >
> > > > I am trying to implement a feature to ring two ip phones
> > > > simultaneously. For example, when I call 101(a)test.com, it
> > rings both
> > > > 101(a)test.com and 102(a)test.com. In this case, the ruri is
> > > > 101(a)test.com. I can use append_branch 102(a)test.com, but
> > is there a
> > > > way to lookup the locations of both 101 and 102?
> > > >
> > > > Thanks,
> > > > Richard
> > > >
> > > > _______________________________________________
> > > > Serusers mailing list
> > > > serusers(a)lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
> > > >
> > >
> >
> > _______________________________________________
> > Serusers mailing list
> > serusers(a)lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
> >
>
> _______________________________________________
> Serusers mailing list
> serusers(a)lists.iptel.org
> http://lists.iptel.org/mailman/listinfo/serusers
>
>
I want to send an invite request to ser's fifo using t_uac_dlg command and exec_msg,
my pb is that i can't construct a valid invite header ,
when i check the log of ser, i see that there is errors in parsing headers.
i'm trying to send something like this :
cat > /tmp/ser_fifo << EOF
:t_uac_dlg:hh
INVITE
sip: user2(a)sip.server.net
.
From: sip:user1@sip.server.net
To: sip:user2@sip.server.net
.
Content-Type: application/sdp
EOF
please can someone correct it.
Regards
PS : the valid header is the following :
Session Initiation Protocol
Request-Line: INVITE sip:5001@sip.softiphone.net SIP/2.0
Message Header
Via: SIP/2.0/UDP 192.168.1.100;branch=z9hG4bK52ffa6c1cda5b285
From: "5003" <sip:5003@sip.softiphone.net>;tag=81ee9e99dc30cc34
SIP Display info: "5003"
SIP from address: sip:5003@sip.softiphone.net
SIP tag: 81ee9e99dc30cc34
To: <sip:5001@sip.softiphone.net>
SIP to address: sip:5001@sip.softiphone.net
Contact: <sip:5003@192.168.1.100>
Supported: replaces, timer
Call-ID: b2d776f6e99851a4(a)192.168.1.100
CSeq: 44559 INVITE
User-Agent: Grandstream GXP2000 1.0.1.9
Max-Forwards: 70
Allow: INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE,UPDATE,PRACK
Content-Type: application/sdp
Content-Length: 310
Message body
Session Description Protocol
Session Description Protocol Version (v): 0
Owner/Creator, Session Id (o): 5003 8000 8000 IN IP4 192.168.1.100
Session Name (s): SIP Call
Connection Information (c): IN IP4 192.168.1.100
Time Description, active time (t): 0 0
Media Description, name and address (m): audio 5004 RTP/AVP 0 8 18 3 4 101
Media Attribute (a): sendrecv
Media Attribute (a): rtpmap:0 PCMU/8000
Media Attribute (a): rtpmap:8 PCMA/8000
Media Attribute (a): rtpmap:18 G729/8000
Media Attribute (a): rtpmap:3 GSM/8000
Media Attribute (a): rtpmap:4 G723/8000
Media Attribute (a): ptime:20
Media Attribute (a): rtpmap:101 telephone-event/8000
Media Attribute (a): fmtp:101 0-11
Hi all,
I have a problem accounting transactions to the PSTN network.
I do only get the Stop record - no Start record... Anyone knows what
could be the reason?
I´m using radiusserver for the accounting records.
This is part of my ser.cfg file. In the log the messages INVITE
accounted and BYE or CANCEL accounted can be seen, but nothing in the
radius file, except for the stop record.
To make it worse, not all of the stop records can be seen in radius - it
looks like only some destinations creates stop records - other dont. The
only thing about that is that when it´s a voicemachine in the other end,
the stop record is not occuring...
# Flag for accounting
if (method=="INVITE")
{
log("INVITE accounted");
setflag(1);
};
if (method=="BYE" || method=="CANCEL")
{
log("BYE or CANCEL accounted");
setflag(1);
};
setflag(3);
Thanks,
Anders