Hi, I have a problem when using uri_db module. When I leave everything on
default and not specify modparam "uri_db", "db_url", then it will not
connect to the database. In the var/log/syslog I have seen that it tries to
connect to database okmaialio instead of kamailio. Is it bug, or did I
misconfig something? I left the kamctlrc file intact and everything to
default... can you confirm this please?
Thank you!
Hello,
I recently started using SCTP relay feature of Kamailio and am receiving SCTP-SIP and
relaying it UDP-SIP and vice versa.
What happens , if an SCTP association is broken from the distant end in the middle of the call,
is there a way to re transmit the SCTP message via another route ?
Thanks,
--Jignesh Gandhi
Hi
Version Kamailio v4.0 + Siremis installed on Debian Wheezy via apt-get
install
I want to use Kamailio as a proxy edge register to our network.
I have installed Kamailio and freeswitch.
I can register on Kamailio but I can't route a call from my sip client from
Kamailio to freeswitch and out to PSTN
Sip client ---- Kamailio-----freeswitch-------SS7 ISDN SIP Gateway ---
Carriers
If I register direct on Freeswitch I can route out to PSTN but I don't
understand Kamailio routing.
Can someone let me how I route say from SIP client registered on Kamailio to
prefix 01% which goes out to Freeswitch
Many Thanks
Tony
http://kb.asipto.com/freeswitch:kamailio-3.1.x-freeswitch-1.0.6d-sbc#dokuwi…
Hello I was trying to use your tutorial on the above page. I am trying to
do so using PGQL vs MYSQL. I changed all the mysql parts to pgsql however
when i try to start kamailio it fails. I am building the system on alpine
linux and attached my kamailio.cfg and kamctlrc. i am able to setup using
the default config making necessary changes but when i use yours it fails.
Any help would be appreciated.
--
Regards,
Carlton Thompson, MS
Doctoral Student
College of Engineering
University of Florida
Gainesville, FL 32611
Dear Kamailio experts
I have a typical use case where I want Kamailio to behave as a B2BUA.
What I mean here is (assume Kamailio is using TCP for SIP call
establishment)
1. For each call it should create a separate TCP connection with next proxy
in path.
2. When call ends, it should close that connection. If that call is active
for 10hrs, then connection should stay alive till 10hrs.
Please somebody help.
Thanks
kamal
Hello,
I want to announce that a new person got developer GIT write access to
repository: Victor Seva.
He helped pushing back Kamailio in official Debian packages and lately
has submitted many patches to various modules, among upcoming ones is
some work on newly added per module debug level (see the logs from
yesterday's IRC meeting for more about this feature).
His git commit id is: vseva
My warm welcome and looking forward to future work within the project!
Cheers,
Daniel
--
Daniel-Constantin Mierla - http://www.asipto.comhttp://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Kamailio Advanced Training, San Francisco, USA - June 24-27, 2013
* http://asipto.com/u/katu *
Jason Penton, Richard Good and Carsten Bock has written an excellent article about the IMS extensions in Kamailio 4.0.0. What it is, what you can do with it and what they're currently working on.
Go read it on our web site now to learn more about this work:
http://www.kamailio.org/w/2013/05/ims-kamailio/
Have a great weekend!
/O
Good day!
Now I test new style AVP's for radius response storing. Today
additional radius responses return in special radpair:
SIP-AVP - name, string "email:sr-users@lists.sip-router.org session-timeout#161 nexthopip:h323/0001111@myvoip-gate.kamailio.org" - value.
I don't know why developers chose this way. But it's addition kamailio's feature, so let it be.
But if radius server responded with standard pairs?
Sending Access-Accept of id 60 to 172.16.X.X port 59736
Session-Timeout = 4261674
next-hop-ip = "SIP/00111222333444@cisco-out"
SIP-AVP = "email:sr-users@lists.sip-router.org session-timeout#161 next-hop-ip:h323/0001111@myvoip-gate.kamailio.org"
session-protocol = "SIP"
No chance to get full radius response at this moment. Only parse SIP-AVP pair. This mean that when you wanna integrate K. in existing infrastructure (in my case - billing), u need work with K. and radius. But why, if you already had worked voip devices?
I think more flexible solution ADD in misc_radius function to get radpairs as AVP's.
See that i got:
misc_radius [functions.c:159]: AVP 'Session-Timeout'/0='null'/4261674 has been added
misc_radius [functions.c:143]: AVP 'next-hop-ip'/0='SIP/005555777888@cisco-out'/0 has been added
misc_radius [functions.c:143]: AVP 'session-protocol'/0='SIP'/0 has been added
After radius response i get:
$avp(Session-Timeout)=4261674 (integer)
$avp(next-hop-ip)="SIP/005555777888@cisco-out" (string)
$avp(session-protocol)="SIP" (string)
I think its usable and more flexible.
I see 3 way to integrate it:
1. additionally with existing radius_load_caller_avps/radius_load_callee_avps (i make same for test)
2. new function in same module, like radius_authorize_request (caller,callee).
3. replace existing style. it's bad for backward compability, of cause.
Or it stay my local patch :)
If it really needed and usable i may made any (1..3) way with doc and examples :)
diff --git a/modules/misc_radius/functions.c b/modules/misc_radius/functions.c
index 2a42024..f156939 100644
--- a/modules/misc_radius/functions.c
+++ b/modules/misc_radius/functions.c
@@ -107,6 +107,60 @@ error:
return -1;
}
+static void generate_avps_rad(VALUE_PAIR* received)
+{
+ int_str name, val;
+ unsigned short flags;
+ VALUE_PAIR *vp;
+
+ vp = received;
+
+ for( ; vp ; vp=vp->next) {
+ flags = AVP_NAME_STR;
+ switch(vp->type)
+ {
+ case PW_TYPE_STRING:
+ flags |= AVP_VAL_STR;
+ name.s.len = strlen(vp->name);
+ val.s.len = strlen(vp->strvalue);
+ name.s.s = vp->name;
+ val.s.s = vp->strvalue;
+ if (add_avp( flags, name, val ) < 0) {
+ LM_ERR("unable to create a new AVP\n");
+ } else {
+ LM_DBG("AVP '%.*s'/%d='%.*s'/%d has been added\n",
+ (flags&AVP_NAME_STR)?name.s.len:4,
+ (flags&AVP_NAME_STR)?name.s.s:"null",
+ (flags&AVP_NAME_STR)?0:name.n,
+ (flags&AVP_VAL_STR)?val.s.len:4,
+ (flags&AVP_VAL_STR)?val.s.s:"null",
+ (flags&AVP_VAL_STR)?0:val.n );
+ }
+ continue;
+ case PW_TYPE_INTEGER:
+ name.s.len = strlen(vp->name);
+ name.s.s = vp->name;
+ val.n = vp->lvalue;
+ if (add_avp( flags, name, val ) < 0) {
+ LM_ERR("unable to create a new AVP\n");
+ } else {
+ LM_DBG("AVP '%.*s'/%d='%.*s'/%d has been added\n",
+ (flags&AVP_NAME_STR)?name.s.len:4,
+ (flags&AVP_NAME_STR)?name.s.s:"null",
+ (flags&AVP_NAME_STR)?0:name.n,
+ (flags&AVP_VAL_STR)?val.s.len:4,
+ (flags&AVP_VAL_STR)?val.s.s:"null",
+ (flags&AVP_VAL_STR)?0:val.n );
+ }
+ continue;
+ default:
+ LM_ERR("skip attribute type %d (non-string)", vp->type);
+ continue;
+ }
+ return;
+ }
+}
+
/* Generate AVPs from Radius reply items */
static void generate_avps(struct attr *attrs, VALUE_PAIR* received)
@@ -212,6 +266,7 @@ int radius_load_caller_avps(struct sip_msg* _m, char* _caller, char* _s2)
LM_DBG("success\n");
rc_avpair_free(send);
generate_avps(caller_attrs, received);
+ generate_avps_rad(received);
rc_avpair_free(received);
return 1;
} else {
--
WBR, Victor
JID: coyote(a)bks.tv
JID: coyote(a)bryansktel.ru
I use FREE operation system: 3.8.4-calculate GNU/Linux