I would like to construct an enum query using more than one pseudo variable.
The result will be a non-e.164 string which is ok for this application.
Ideally, it would be something like:
enum_pv_query("$rU + $rp");
This would result in the username from the R-URI appended to the port of the
R-URI.
However, this doen't seem to work and I wind up with
1.2.1.2.5.5.5.2.1.2.1.$rp.e164.arpa.
Instead of using the $rp pseudo variable, the string "$rp" is used to form
the query. It should be:
1.2.1.2.5.5.5.2.1.2.1.*0.6.0.5*.e164.arpa.
where the port 5060 is inserted between the R-URI username and the domain
suffix.
Is there a different or better way to use the variables within enum_pv_query
to construct a query?
Thanks.
Hi all
I'm playing with the dialog module to count the calls and limit the number of
calls per subscriber.
After configured the proxy I've tested a call and I realize that the dialog
list is not empty after the call ends.
Here's a sample call log and the dialog list while the call was being
stablished and 3 minutes after that:
root@proxy1a:~# grep "fbrzjkplmvlauty@quenya" /var/log/kamailio.log
New request - M=INVITE
Dialog set mark TOTAL
Proxy authentication failed
New request - M=INVITE
Dialog set mark TOTAL
Dialog set mark user and userout to 'd5a78dafcb93'
Dialog set mark type to outgoing
Call to PSTN
Dialog set mark peer and peerout to '4'
Relaying request
Request leaving server
NAT-Reply - S=100 - Connecting
NAT-Reply - S=488 - Not Acceptable Here
Failure route for PSTN call
Unset dialog mark peer and peerout '4'
Filter reply code
No failover routing needed for this response code
New request - M=ACK
While the call was being stablished or just after it was dropped (quickly)
sercmd> dlg.list
hash:3837:638039689 state:1 timestart:0 timeout:0
callid:fbrzjkplmvlauty@quenya from_tag:inobo to_tag:
from_uri:sip:123456789@labsip.com
to_uri:sip:0043987654321@labsip.com
caller_contact:sip:123456789-sbhn1naovm6bc@111.111.111.164:5060;transport=udp
caller_cseq:149
caller_route_set:<sip:111.111.111.135;r2=on;lr=on;ftag=inobo;nat=yes>,<sip:111.111.111.100;r2=on;lr=on;ftag=inobo;nat=yes>
callee_contact: callee_cseq: callee_route_set:
caller_bind_addr:udp:111.111.111.138:5062 callee_bind_addr:
hash:3837:638039690 state:5 timestart:0 timeout:0
callid:fbrzjkplmvlauty@quenya
from_tag:inobo to_tag:
from_uri:sip:123456789@labsip.com
to_uri:sip:0043987654321@labsip.com
caller_contact:sip:123456789-sbhn1naovm6bc@111.111.111.164:5060;transport=udp
caller_cseq:150 caller_route_set:
<sip:111.111.111.135;r2=on;lr=on;ftag=inobo;nat=yes>,<sip:111.111.111.100;r2=on;lr=on;ftag=inobo;nat=yes>
callee_contact: callee_cseq: callee_route_set:
caller_bind_addr:udp:111.111.111.138:5062 callee_bind_addr:
After a couple of minutes:
hash:3837:638039689 state:1 timestart:0 timeout:0
callid:fbrzjkplmvlauty@quenya from_tag:inobo to_tag:
from_uri:sip:123456789@labsip.com
to_uri:sip:0043987654321@labsip.com
caller_contact:sip:123456789-sbhn1naovm6bc@111.111.111.164:5060;transport=udp
caller_cseq:149
caller_route_set:
<sip:111.111.111.135;r2=on;lr=on;ftag=inobo;nat=yes>,<sip:111.111.111.100;r2=on;lr=on;ftag=inobo;nat=yes>
callee_contact: callee_cseq: callee_route_set:
caller_bind_addr:udp:111.111.111.138:5062 callee_bind_addr:
sercmd> dlg.profile_get_size total
Profile:total => profile:total value: count:1
sercmd> dlg.profile_get_size user
Profile:user => profile:user value: count:0
sercmd> dlg.profile_get_size userout
Profile:userout => profile:userout value: count:0
sercmd> dlg.profile_get_size peer
Profile:peer => profile:peer value: count:0
sercmd> dlg.profile_get_size peerout
Profile:peerout => profile:peerout value: count:0
Obviously, there's no such a call. But my dialog profile TOTOAL say's there's
one, which is listed by sercmd. The dialog is persistent, I guess it will be
destroyed after 12 hours, but I'd like to know why it's still there if I
received a negative response and the ACK for it.
Thanks,
Jon
Hi,
I'm trying to add some headers in a branch_route making use of insert_hf method:
insert_hf("Route: <sip:10.10.10.10:5080;lr=on>\r\n");
But the forwarded message doesn't include that new header.
According to the doc, insert_hf can be used in a branch_route, Am I missing something? I'm using Kamailio 3.1.
G.
________________________________
Este mensaje se dirige exclusivamente a su destinatario. Puede consultar nuestra pol?tica de env?o y recepci?n de correo electr?nico en el enlace situado m?s abajo.
This message is intended exclusively for its addressee. We only send and receive email on the basis of the terms set out at.
http://www.tid.es/ES/PAGINAS/disclaimer.aspx
Hi,
I'd just like to say that I found the answer to my own question in the documentation:
With 3.x versions, you have to load ctl and cfg_rpc modules and execute:
sercmd cfg.set_now_int core mem_dump_pkg <pid>
http://www.kamailio.org/dokuwiki/doku.php/troubleshooting:memory
I did also write a patch to suppress the full memory dump, because I am only interested in the first lines of the status (total usage). This way I the server doesn't get blocked - full memory dump usually takes a VERY long time. Patch is attached and I'd be glad if something similar would be integrated in the trunk.
I've introduced a mem_summary option "16" to control that behavior.
Best regards,
Ricardo.
I've got stuck today trying to implement some sequential forking
scenario. When the call comes destined to the local user, I'm trying to
reach it sequentially through two alternative extensions. For each
extension, I'm calling t_set_fr with a timeout of 15sec. They reply only
180 and do not pick up the phone. After that the call should go to the
"last resort" PSTN number. I'm calling then t_set_fr with a timeout of
30sec. But immediately after sending INVITE to PSTN gw Kamailio
generates cancel and sends 408 Request Timeout to the initial INVITE.
In the debug log I'm seeing this:
Aug 1 17:34:43 localhost /usr/local/sbin/kamailio[28488]: DEBUG: tm
[t_hooks.c:288]: DBG: trans=0xb60f543c, callback type 1048576, id 0 entered
Aug 1 17:34:43 localhost /usr/local/sbin/kamailio[28488]: DEBUG: tm
[t_reply.c:1634]: DEBUG: relay_reply: branch=1, save=1, relay=-1
Aug 1 17:34:43 localhost /usr/local/sbin/kamailio[28488]: DEBUG: tm
[t_cancel.c:328]: DEBUG: cancel_branch: sending cancel...
Does it look like something familiar to you?
Kamailio version: 3.1.4
Config of tm module:
modparam("tm", "fr_timer", 20000)
modparam("tm", "fr_inv_timer", 120000)
modparam("tm", "restart_fr_on_each_reply", 1)
The rest of config is really simple, I can upload it somewhere if it's
necessary.
--
Sincerely,
Andrew Pogrebennyk
Hello,
I am using kamailio ims extensions and I am observing some problems with
pseudo-variable handling.
On the s-cscf the pseudo-variables are not 'translated' into the real
values. When using xlog like this:
xlog("L_ERR", " found pai: $ai time [$Tf] \n");
I am finding :
tail -f /var/log/syslog | grep found
invlcscs /usr/sbin/kamailio[21689]: ERROR: <script>: found pai: $ai time
[$Tf]
However on the p-cscf the same case is correctly treated:
xlog("L_ERR", " found pai: $ai time [$Tf] \n");
invlcpcs /usr/sbin/kamailio[20540]: ERROR: <script>: found pai:
sip:0188888881@open-ims.test;transport=UDP time [Fri Aug 19 14:05:44 2011]
I am using 3.1 kamalio version and I have added pv and xlog modules on the
s-cscf.
Why is the S-CSCF unable to read pseudo-variables?Could anybody please help
me?
Thank you.
RR.
Hi,
If t_relay() fails, is it possible to retrieve the status/reason on a variable or something?
I am using t_grep_status("code") and trying to catch each case that I am interested but I was wondering if there was a better way.
One could do something like this:
If (result > 400) {
do action 1
} else {
do action 2
}
txs a lot
fborot
Spam detection software, running on the system "mail.iptel.org", has
identified this incoming email as possible spam. The original message
has been attached to this so you can view it (if it isn't spam) or label
similar future email. If you have any questions, see
the administrator of that system for details.
Content preview: Dear user serusers(a)lists.iptel.org, mail server administrator
of lists.iptel.org would like to let you know the following, We have detected
that your e-mail account has been used to send a huge amount of junk email
messages during this week. Probably, your computer was infected by a recent
virus and now runs a hidden proxy server. [...]
Content analysis details: (14.0 points, 5.0 required)
pts rule name description
---- ---------------------- --------------------------------------------------
0.5 FSL_XM_419 Old OE version in X-Mailer only seen in 419 spam
0.4 RCVD_IN_XBL RBL: Received via a relay in Spamhaus XBL
[87.235.117.21 listed in zen.spamhaus.org]
0.0 DEAR_EMAIL BODY: Message contains Dear email address
0.8 BAYES_50 BODY: Bayes spam probability is 40 to 60%
[score: 0.5000]
1.4 RCVD_IN_BRBL_LASTEXT RBL: RCVD_IN_BRBL_LASTEXT
[87.235.117.21 listed in bb.barracudacentral.org]
0.3 FSL_UA FSL_UA
0.8 RDNS_NONE Delivered to internal network by a host with no rDNS
2.6 MSOE_MID_WRONG_CASE MSOE_MID_WRONG_CASE
1.2 TO_NO_BRKTS_MSFT To: misformatted and supposed Microsoft tool
1.9 FORGED_MUA_OUTLOOK Forged mail pretending to be from MS Outlook
2.5 DOS_OE_TO_MX Delivered direct to MX with OE headers
1.5 TO_NO_BRKTS_DIRECT To: misformatted and direct-to-MX
The original message was not completely plain text, and may be unsafe to
open with some email clients; in particular, it may contain a virus,
or confirm that your address can receive spam. If you wish to view
it, it may be safer to save it to a file and open it with an editor.
Hi,
we have a script running on our Kamailio servers which dumps all online
users with kamctl ul show, parses it and then sends it to database. (For
explanation, we started doing it this way because we noticed at least with
an older (open)ser release that SER would completely stop working for a
couple of seconds while writing registered users to database every 5
minutes. When dumping it, we don't see any disruption.)
With Kamailio 1.5 this works, with Kamailio 3.1 it works in the beginning,
but when you pass the 2000 online user mark, it just stops working.
I've started the Kamailio completely empty, then let users register against
it. I did a "kamctl ul show" every 5 seconds, this is what the results were:
Domain:: location table=512 records=82 max_slot=2
Domain:: location table=512 records=412 max_slot=4
Domain:: location table=512 records=640 max_slot=5
Domain:: location table=512 records=973 max_slot=7
Domain:: location table=512 records=1209 max_slot=8
Domain:: location table=512 records=1454 max_slot=11
Domain:: location table=512 records=1667 max_slot=12
Domain:: location table=512 records=1907 max_slot=12
500 command 'ul_dump' failed
500 command 'ul_dump' failed
500 command 'ul_dump' failed
500 command 'ul_dump' failed
500 command 'ul_dump' failed
500 command 'ul_dump' failed
Is there a hard limit for dumping users through the fifo? Why? Or should we
do it differently?
Best Regards,
Sebastian
--
Dipl.-Inf.
Sebastian Damm - VoIP-Engineer - damm(a)sipgate.de
sipgate GmbH - Gladbacher Str. 74 - 40219 Düsseldorf
HRB Düsseldorf 39841 - Geschäftsführer: Thilo Salmon, Tim Mois
Steuernummer: 106/5724/7147, Umsatzsteuer-ID: DE219349391
www.sipgate.de - www.sipgate.at - www.sipgate.co.uk
Hi all,
ACC module is generating segmentation fault at acc_db_request function in
kamailio 3.1.2 with database postgres. When module try to access the struct
db_func_t acc_dbf.use_table (line 389) the child proccess that execute this
operation is exited by a signal 11.
Someone know why this segmentation fault is gererating? How I fix this
problem?
Best Regards