How can i access LDAP URI of ldap_search() results in routing script?
I need to do recursive search in company directory within persons that belong to groups, i need to get group id without storing groupid as person attribute, but as an element of resulting URL.
Query base name: dc=example,dc=com.
Query result is cn=user1,ou=group1,dc=example,dc=com.
I can easily get user1 attributes, but how to get ou?
What is the function of the priority field in dispatcher module? The
docs are pretty light on the subject and it's not clear to me what it's
meant to do.
I'm looking for a way to assign a priority to preferred gateways within
the same group.
Thanks
Bob
--------------------------------------------------------------------------
This email with all information contained herein or attached hereto may contain confidential and/or privileged information intended for the addressee(s) only. If you have received this email in error, please contact the sender and immediately delete this email in its entirety and any attachments thereto.
Hello,
I've installed siremis 0.9.4 with kamailio 3.0.0rc2 on a test
computer and it was working without a problem. But now I'm trying to
install it on a server and I can't go beyond the login screen. If I try
a wrong password I get the error message. But if I use the right one I'm
redirected to the login screen again and again.
Both systems are ubuntu Linux with the following differences:
Test computer Server
Ubuntu 9.10 Ubuntu 8.10
apache 2.2.12 apache2.2.9
PHP 5.2.10 PHP 5.2.6
mysqld 5.1.37 mysqld 5.0.67
The bigger difference that I can see is mysqld version.But I've
installed PHPOpenBiz framwork and the demo app creates and populates the
demo data base. So it doesn't look like related to this.
I've used the apache configuration on the siremis install page to
set up apache for both systems. Although on the server there are some
previous settings, I've created a new virtual server for siremis.
apache logs only show:
File does not exist: /var/www/siremis-0.9.4/siremis-web/js/sound.js
But this error also appears on the working computer. And doesn't
seem to be related with the problem. The log_DEBUG.html on siremis only
shows the query to the database.
¿ Is there any log file on siremis that can point to the problem ?
¿ Has anyone else had this problem ?
Sorry if I ask something silly but I've been trying to find what I'm
doing wrong for two days.
Best regards.
Vicente.
Hi All,
I have been trying to use the perl module with Kamailio 1.5.3-notls. I
have managed to load the module successfully.
I have a simple script with a single function that strips the "<" or ">"
from a contact header and logs the info, then sets an AVP.
Kamailio seems to load the perl module and the script properly, but when
it runs I get an error on the logging side of it. I cannot for the life
of me see where the error lies.
Could one of you guru's out there please cast an eye over my config and
see if you can spot something I am missing.
My kamailio configuration for perl is as such:
----
loadmodule "perl.so"
modparam("perl", "modpath", "/opt/kamailio/lib64/perl")
modparam("perl", "filename", "/opt/kamailio/perl-scripts/kamailio-perl.pl")
----
My perl script looks as follows:
----
use OpenSER ;
use OpenSER::Message ;
sub clean_contact {
my $contact_header = shift;
log("contact header passed: $contact_header\n");
$contact_header =~ s/^<|>$//g;
log("contact header fixed: $contact_header\n");
OpenSER::AVP::add("clnct", "$contact_header");
return 1;
}
----
I have the following section in the route logic that calls this function
as follows:
----
perl_exec_simple("clean_contact","$ct");
----
When the perl script executes, it gets to the first log line and dies
with the following message:
----
ERROR:core:XS_OpenSER__Message_log: perl error: Can't take log of 0 at
/opt/kamailio/perl-scripts/kamailio-perl.pl line 7.
----
I have had a look at the logging.pl script in the sample directory for
the perl module, and have tried all the methods shown in the example,
but I just cannot seem to get past this particular logging issue.
Any tips would be greatly appreciated.
Thanks
Bruce
Hello guys,
I'm having a strange problem with my Kamailio 1.5.3 when trying to register
an Audiocodes Gateway. I'm using authentication for REGISTER messages.
The GW sends a REGISTER without credentials, so I do a proxy_challenge. Then
the GW sends a REGISTER with credentials but the proxy_authorize is
returning -4.
I did an NGREP to check the messages and they don't seem malformed, can you
tell me if there is something on the functions that might be loosing the
Proxy-Authorization header?
This happens only with this GW, not if i register a softphone (XLITE).
Within route block:
...
if (is_method("REGISTER"))
{
route(11);
save("location");
exit();
}
...
Route(11):
route[11] {
# ----- AUTENTICACION DE UN MENSAJE -----
if (!proxy_authorize("", "subscriber"))
{
switch($retcode)
{
case -1:
xlog("L_INFO", "AUTH: Invalid username\n");
sl_send_reply("403", "Forbidden");
exit;
case -2:
xlog("L_INFO", "AUTH: Invalid password\n");
sl_send_reply("403", "Forbidden");
exit;
case -3:
xlog("L_INFO", "AUTH: Nonce ambiguo\n");
break;
case -4:
xlog("L_INFO", "AUTH: No credentials\n");
break;
#default:
#xlog("L_INFO", "AUTH: Unknown error\n");
#break;
}
#xlog("L_DBG", "AUTH: -Data- Auth Username = $au\n");
#xlog("L_DBG", "AUTH: -Data- Domain = $fd\n");
#xlog("L_DBG", "AUTH: -Data- From Username = $fU\n");
proxy_challenge("192.168.200.130","0");
exit;
};
xlog("L_INFO", "AUTH: Valid username and credentials\n");
consume_credentials();
}
NGREP:
#
U 10.0.1.200:5060 -> 192.168.200.130:5060
REGISTER sip:192.168.200.130 SIP/2.0.
Via: SIP/2.0/UDP 10.0.1.200;branch=z9hG4bKac26395445.
Max-Forwards: 70.
From: <sip:testdevice@10.0.1.200 <sip%3Atestdevice(a)10.0.1.200>
>;tag=1c26389068.
To: <sip:testdevice@10.0.1.200 <sip%3Atestdevice(a)10.0.1.200>>.
Call-ID: 154992670511200004613(a)10.0.1.200.
CSeq: 68 REGISTER.
Contact: <sip:testdevice@10.0.1.200:5060>;expires=180.
Allow:
REGISTER,OPTIONS,INVITE,ACK,CANCEL,BYE,NOTIFY,PRACK,REFER,INFO,SUBSCRIBE,UPDATE.
Expires: 180.
User-Agent: Audiocodes-Sip-Gateway-/v.5.80A.023.006.
Content-Length: 0.
.
#
U 192.168.200.130:5060 -> 10.0.1.200:5060
SIP/2.0 407 Proxy Authentication Required.
Via: SIP/2.0/UDP 10.0.1.200;branch=z9hG4bKac26395445.
From: <sip:testdevice@10.0.1.200 <sip%3Atestdevice(a)10.0.1.200>
>;tag=1c26389068.
To: <sip:testdevice@10.0.1.200 <sip%3Atestdevice(a)10.0.1.200>
>;tag=f8f2ab2c1295e90ed7dbb499b30f44b2.ee1a.
Call-ID: 154992670511200004613(a)10.0.1.200.
CSeq: 68 REGISTER.
Proxy-Authenticate: Digest realm="192.168.200.130",
nonce="4b142e8900000000188436d32ee472791b706f36952f4162".
Server: Kamailio (1.5.3-notls (i386/linux)).
Content-Length: 0.
.
#
U 10.0.1.200:5060 -> 192.168.200.130:5060
REGISTER sip:192.168.200.130 SIP/2.0.
Via: SIP/2.0/UDP 10.0.1.200;branch=z9hG4bKac26766380.
Max-Forwards: 70.
From: <sip:testdevice@10.0.1.200 <sip%3Atestdevice(a)10.0.1.200>
>;tag=1c26389068.
To: <sip:testdevice@10.0.1.200 <sip%3Atestdevice(a)10.0.1.200>>.
Call-ID: 154992670511200004613(a)10.0.1.200.
CSeq: 69 REGISTER.
Proxy-Authorization: Digest
username="testdevice",realm="192.168.200.130",nonce="4b142e8900000000188436d32ee472791b706f36952f4162",uri="sip:192.168.200.130",algorithm=MD5,response="9fa0904b94f94152619a16c46ffa6485".
Contact: <sip:testdevice@10.0.1.200:5060>;expires=180.
Allow:
REGISTER,OPTIONS,INVITE,ACK,CANCEL,BYE,NOTIFY,PRACK,REFER,INFO,SUBSCRIBE,UPDATE.
Expires: 180.
User-Agent: Audiocodes-Sip-Gateway-/v.5.80A.023.006.
Content-Length: 0.
.
#
U 192.168.200.130:5060 -> 10.0.1.200:5060
SIP/2.0 407 Proxy Authentication Required.
Via: SIP/2.0/UDP 10.0.1.200;branch=z9hG4bKac26766380.
From: <sip:testdevice@10.0.1.200 <sip%3Atestdevice(a)10.0.1.200>
>;tag=1c26389068.
To: <sip:testdevice@10.0.1.200 <sip%3Atestdevice(a)10.0.1.200>
>;tag=f8f2ab2c1295e90ed7dbb499b30f44b2.b7c8.
Call-ID: 154992670511200004613(a)10.0.1.200.
CSeq: 69 REGISTER.
Proxy-Authenticate: Digest realm="192.168.200.130",
nonce="4b142e8900000001515ab7891a3d534cc3f15e5627322da3".
Server: Kamailio (1.5.3-notls (i386/linux)).
Content-Length: 0.
.
Thanks in advance!
Uriel
Hi,
I have to upgrade Serweb to the version 2.0.1-dev1 (that work with SER
2.0).
Is it possible to use Serweb 0.9.4 (using PHP v.5.1.6) with SER 2.0
however the database "ser" has a new structure?
Regards,
David.
Hi All,
I have come across another build issue when building the presence module
bundle on Solaris 10. The specific error is as follows:
config.mak included
make[1]: Entering directory
`/export/home/user/packages/BUILD/ser-2.99.99-pre3/modules_s/pa'
make[1]: Leaving directory
`/export/home/user/packages/BUILD/ser-2.99.99-pre3/modules_s/pa'
config.mak included
make[1]: Entering directory
`/export/home/user/packages/BUILD/ser-2.99.99-pre3/modules_s/pa'
/usr/sfw/bin/gcc -fPIC -DPIC -g -O9 -funroll-loops -Wcast-align -m32
-minline-all-stringops -falign-loops -mtune=athlon -Wall
-I/usr/include/libxml2 -I/usr/local/include/libxml2 -I/usr/local/include
-I../../lib -I../.. -DNAME='"ser"' -DVERSION='"2.99.99-pre3"'
-DARCH='"i386"' -DOS='solaris_' -DOS_QUOTED='"solaris"'
-DCOMPILER='"/usr/sfw/bin/gcc 3.4.3"' -D__CPU_i386 -D__OS_solaris
-DSER_VER=2099099 -DCFG_DIR='"/opt/kamailio/etc/ser/"' -DPKG_MALLOC
-DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_IPV6 -DUSE_MCAST -DUSE_TCP
-DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER
-DUSE_DST_BLACKLIST -DUSE_NAPTR -DDBG_QM_MALLOC -DUSE_TLS -DTLS_HOOKS
-DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM
-DHAVE_GETIPNODEBYNAME -DHAVE_SYS_SOCKIO_H -DHAVE_SCHED_YIELD
-DHAVE_ALLOCA_H -DUSE_SIGACTION -DHAVE_DEVPOLL -DHAVE_SELECT
-DHAVE_FILIO_H -DSER -DSER_MOD_INTERFACE -DMOD_NAME='"pa"' -c
async_auth.c -o async_auth.o
In file included from async_auth.c:1:
pa_mod.h:54: error: syntax error before "pa_dbf"
pa_mod.h:54: warning: type defaults to `int' in declaration of `pa_dbf'
pa_mod.h:54: warning: data definition has no type or storage class
make[1]: *** [async_auth.o] Error 1
make[1]: Leaving directory
`/export/home/user/packages/BUILD/ser-2.99.99-pre3/modules_s/pa'
make: *** [modules_s] Error 1
I have read the INSTALL text file and it seems that the pa module
requires libxml2. I have checked that this library is on the box. The
version of libxml2 on Solaris is as follows:
user@soldev:~ $ /usr/bin/xml2-config --version
2.6.23
user@soldev:~ $ /usr/bin/xml2-config --libs
-L/usr/lib -R/usr/lib -lxml2 -lz -lpthread -lm -lsocket -lnsl
user@soldev:~ $ /usr/bin/xml2-config --cflags
-I/usr/include/libxml2
I am building the following version of SIPRouter:
ser-2.99.99-pre3_src_2009-12-05_b8e67f
The way I am building SIPRouter is as follows:
make prefix=/opt/kamailio group_include="standard postgres presence" all
If I manually change directory into the modules_s/pa directory and issue
a "make" then the build still fails with the same error.
If I remove the "presence" group then the build completes successfully.
Any pointers for a resolution would be greatly appreciated. If you
require any additional information please dont hesitate to ask.
Thank you
Bruce
Hi All,
We are looking to integrate SIPRouter/Kamailio into our existing
infrastructure. Currently we have a sip proxy and registrar that handles
registration and routing.
The main issue we have with integrating SIPRouter/Kamailio into our
environment is that the table structure for kamailio's tables are vastly
different to our existing database tables.
We have several application built around our current database structure
so I think it is fair to assume that we will be forced to use the
existing structures.
I had a look at perlvdb which seems to do what I had in plan, where the
table structure is transparent to kamailio. so for example, when a
registration request comes in and we then authenticate the user and want
to save the location, could we use the perlvdb module to intercept the
save and manipulate it so that it inserts/updates/reads data from a
table structure that is different to what it is expecting?
I've been trying to find an example of how to use perlvdb but have been
unsucessfull in my google searches and mailing list searches.
Does anyone have an example of how to use the perlvdb module?
Thanks
Bruce
Hi,
I have two SIP agents for redundancy, node1 and node2. Kamailo is supposed
to route SIP traffic to node1 unless if it is down. Then it will route the
traffic to node2.
Is there a way to script Kamailo to check if a SIP agent is alive or not.
Thanks,
R
Hi,
I would like to create a new module. This module has to read an
external file descriptor and call
a callback. I don't want to use extra process and shared memory or
something like that.
Is it possible to add FD in the main Select and call my callback ?
Regards,
--
Olivier Détour
EPITA 2009