Please cc all the time to mailing lists, so everybody benefits of the
outcome or can add comments/suggestions.
Also, repeat my question, right now do you need it in some module or for
string operations in the config file?
Thank you,
Daniel
On 10/02/08 12:18, michel freiha wrote:
> Dear Daniel,
>
> I prefer doing it in the config file...Is there any function that I
> can add and it'll runn the server in case sensitive mode?
>
> Regards
>
> On Thu, Oct 2, 2008 at 11:42 AM, Daniel-Constantin Mierla
> <miconda(a)gmail.com <mailto:miconda@gmail.com>> wrote:
>
> Hello,
>
>
> On 10/02/08 11:10, michel freiha wrote:
>
> Dear All,
> I would like to ask please about how to force kamailio to be
> case sensitive regarding username?
>
> similar issue reported on the tracker:
> http://sourceforge.net/tracker/index.php?func=detail&aid=2047019&group_id=1…
> <http://sourceforge.net/tracker/index.php?func=detail&aid=2047019&group_id=1…>
>
> I guess it is same for you. Right now, do you need it in some
> functions or in config file operations? There is need for special
> functions for different comparisons, but also might be good to
> have case sensitive operations in config file.
>
> Cheers,
> Daniel
>
> --
> Daniel-Constantin Mierla
> http://www.asipto.com <http://www.asipto.com/>
>
>
--
Daniel-Constantin Mierla
http://www.asipto.com
I am curious, what exactly is the purpose and philosophy of the various
hash algorithms in the dispatcher module? I am referring to the ones
that allow the gateway in the route set to be determined through a hash
of various SIP headers, such as the From URI, the To URI, the Call-ID
GUID, etc.
No guarantee of fair distribution - or in fact, any distribution that
can be characterised by any describable pattern whatsoever - is implied
by these algorithms.
Additionally, it seems that without knowing
(1) The exact hash algorithm in use;
(2) The distribution that this hash algorithm would yield for a given
set of possible values of these header fields, which in many cases are
specifically intended to be pseudorandom (e.g. Call-ID),
there is absolutely no way to determine, from any meaningfully
deterministic perspective, which numerical entry in the route set these
algorithms would computationally yield.
So, I guess my question is: With no implied uniformity or weighting in
the distribution whatsoever based on the incidental character of such
values, what practical use does it serve to use any algorithms except
round-robin or random? Is it expected that the user will plot the hash
values against a log of given input strings to determine how the
distribution will shape up? Is there some reason why the sort of
profoundly lopsided distribution that may create might be desirable?
Thanks,
--
Alex Balashov
Evariste Systems
Web : http://www.evaristesys.com/
Tel : (+1) (678) 954-0670
Direct : (+1) (678) 954-0671
Mobile : (+1) (706) 338-8599
Hi,
I have the following issue:
I am using lcr module to select a gw from a set of gw's based upon R-URI
prefixes. All is working fine.
The issue is with a CANCEL that is sent by the UAC that originates the call
before a dialog can be established. This implies that the CANCEL cannot be
routed to the correct GW since SER see a CANCEL and simply returns "487
request terminated".
How can I forward the CANCEL to the GW the the original INVITE was forwarded
to?
Any help appreciated.....
Hello,
I am trying to get out you knowledge as DBA ... in some discussions in
the past was brought out that in some cases doing a delete on primary
key followed by a pure insert might be faster than one update. It might
be dependent of DB server type and perhaps the question would have
better answer in appropriate db-specific mailing lists, but I want to
see if some of you has more experience/insights about this and is
willing to share or got into same dilemma.
Thanks,
Daniel
--
Daniel-Constantin Mierla
http://www.asipto.com
Hi Forum,
I want to use carrierroute to terminate 50,000 preffixes to a PSTN gw and block 100,000.
So I created 50,000 records with gw ip as rewrite_host. However I only was able to start kamailio with no more than about 2,200 records in carrierroute mysql table.
Is it possible to use carrierroute in such a way?
Find below log with error:
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: INFO:carrierroute:bind_data_loader: use database as configuration source
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: INFO:carrierroute:load_route_data: name default, id 0, trees: 1
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: INFO:carrierroute:add_carrier_tree: add carrier default
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: INFO:carrierroute:add_carrier_tree: carrier default not found, add it
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: INFO:carrierroute:add_tree: tree default has internal id 0
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: INFO:carrierroute:add_carrier_tree: created carrier tree: default, with id
0 and 1 trees
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: ERROR:db_mysql:db_mysql_convert_row: no private memory left
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: ERROR:db_mysql:db_mysql_convert_rows: error while converting row #2282
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: ERROR:db_mysql:db_mysql_convert_result: error while converting rows
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: ERROR:db_mysql:db_mysql_store_result: error while converting result
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: ERROR:core:db_do_query: error while storing result
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: ERROR:carrierroute:load_route_data: Failed to query database.
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: ERROR:carrierroute:prepare_route_tree: could not load routing data
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: ERROR:carrierroute:mod_init: could not prepare route tree
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: ERROR:core:init_mod: failed to initialize module carrierroute
Sep 29 13:36:22 sip-proxy /usr/local/sbin/kamailio[2569]: ERROR:core:main: error while initializing modules
hi all
I am using the Openser(Opensips) as apllication server . i am developing Sh
interface between the AS and HSS.
For developing the Sh interface i am using the CDiameterpeer , here i am
getiing memory and locking errors. And for using the CDiameterpeer as
standalone library what steps i have to follow ...
Thanks
suresh :)
Hello,
your main route block is something loke:
route {
if(is_method("INVITE"))
{
....
}
exit;
}
So, apart of INVITE, every other sip request is dropped.
See default config file to get a better understanding. kamailio/openser
discards by default any sip request received if there is no action to
forward for it.
Cheers,
Daniel
Kent Pirlo wrote:
> Attached is the full test config I am using.. I have gone back and forth trying a few things, but this is the latest.. If you have a another way to achieve the same result, I am open to change how I'm trying to do it.
>
> Thanks again for your help.
>
> Kent
>
>
> -----Original Message-----
> From: Daniel-Constantin Mierla [mailto:miconda@gmail.com]
> Sent: Tuesday, September 23, 2008 5:50 AM
> To: Kent Pirlo
> Cc: users
> Subject: Re: [Kamailio-Users] nested redirect
>
> Hello,
>
> sorry, you were right, there was a pcap attachment! The ACK looks ok.
> Seems that ACK is quickly discarded by the script. Is the config you
> pasted in your first email complete? I need to see it all the understand
> how the ack get's routed and where could be dropped by the config.
>
> Cheers,
> Daniel
>
>
>
> On 09/17/08 18:42, Kent Pirlo wrote:
>
>> There should have been a 20k attachment.. redirect.cap.. from tethereal.
>> Let me know if you do not have it, and I will re-send it.
>>
>> kent
>>
>> -----Original Message-----
>> From: Daniel-Constantin Mierla [mailto:miconda@gmail.com]
>> Sent: Wednesday, September 17, 2008 6:43 AM
>> To: Kent Pirlo
>> Cc: users
>> Subject: Re: [Kamailio-Users] nested redirect
>>
>> Hello,
>>
>> what you sent is the debug from kamailio/openser, which is useful, but I
>> would need the sip messages, you can use ngrep for that, do
>> ngrep -d any -qt -W byline port 5060
>>
>> on your openser/kamailio server and send the output.
>>
>> Thanks,
>> Daniel
>>
>>
>> On 09/17/08 02:22, Kent Pirlo wrote:
>>
>>
>>> ... is my core switch,
>>> ... is my openser/Kamailio redirect server
>>> ... is a redirect server from a carrier of ours that returns a billing TN in contact header..
>>>
>>>
>>> Here is the debug of the incoming ACK from the core switch after being sent the 300...
>>>
>>>
>>> Sep 16 15:49:50 [6505] DBG:core:parse_msg: SIP Request:
>>> Sep 16 15:49:50 [6505] DBG:core:parse_msg: method: <ACK>
>>> Sep 16 15:49:50 [6505] DBG:core:parse_msg: uri: <sip:...@...>
>>> Sep 16 15:49:50 [6505] DBG:core:parse_msg: version: <SIP/2.0>
>>> Sep 16 15:49:50 [6505] DBG:core:parse_headers: flags=2
>>> Sep 16 15:49:50 [6505] DBG:core:parse_to_param: tag=391854ebdd4d0c63cf50836cbb12191e-6708
>>> Sep 16 15:49:50 [6505] DBG:core:parse_to: end of header reached, state=29
>>> Sep 16 15:49:50 [6505] DBG:core:parse_to: display={},
>>> Sep 16 15:49:50 [6505] DBG:core:get_hdr_field: <To> [75];
>>> Sep 16 15:49:50 [6505] DBG:core:get_hdr_field: to body
>>> Sep 16 15:49:50 [6505] DBG:core:get_hdr_field: cseq <CSeq>: <1> <ACK>
>>> Sep 16 15:49:50 [6505] DBG:core:parse_via_param: found param type 232, <branch> = <z9hG4bKdce3ac34730f843a5a9b9c7002690f22>; state=16
>>> Sep 16 15:49:50 [6505] DBG:core:parse_via: end of header reached, state=5
>>> Sep 16 15:49:50 [6505] DBG:core:parse_headers: via found, flags=2
>>> Sep 16 15:49:50 [6505] DBG:core:parse_headers: this is the first via
>>> Sep 16 15:49:50 [6505] DBG:core:receive_msg: After parse_msg...
>>> Sep 16 15:49:50 [6505] DBG:core:receive_msg: preparing to run routing scripts...
>>> Sep 16 15:49:50 [6505] DBG:sl:sl_filter_ACK: to late to be a local ACK!
>>> Sep 16 15:49:50 [6505] DBG:core:destroy_avp_list: destroying list (nil)
>>> Sep 16 15:49:50 [6505] DBG:core:receive_msg: cleaning up
>>>
>>>
>>>
>>>
>>> -----Original Message-----
>>> From: Daniel-Constantin Mierla [mailto:miconda@gmail.com]
>>> Sent: Tuesday, September 16, 2008 5:10 AM
>>> To: kentp(a)globalpops.com
>>> Cc: users(a)lists.kamailio.org
>>> Subject: Re: [Kamailio-Users] nested redirect
>>>
>>> Hello,
>>>
>>> can you post here the SIP messages? Will help to spot if there is
>>> anything wrong with the ACK or something else in the signaling.
>>>
>>> Cheers,
>>> Daniel
>>>
>>>
>>> On 09/13/08 04:11, kentp(a)globalpops.com wrote:
>>>
>>>
>>>
>>>> i have a simple redirect server working:
>>>>
>>>> Call comes from switch (A) to kamailio redirect server (B)..
>>>> (B) runs perl script to determine route
>>>> (B) sends Stateless 300 redirect reply to (A).
>>>> (A) sends ACK to (B).
>>>>
>>>> Now, I need to add a nested redirect...
>>>>
>>>> call comes from sitch (A) to kamailio redirect server (B)..
>>>> (B) then needs to send the call to third party proxy (C)..
>>>> (C) will return 302 redirect..
>>>> (B) sends ACK to (C)
>>>> (B) needs to read the contact header, then run perl script to determine route (using the contact value
>>>> returned from (c))
>>>> (B) then sends 300 redirect back to (A).
>>>> (A) sends ACK back to (B)
>>>>
>>>>
>>>> so far i have been trying something like this, but the final (A) ACK gets ignored and (B) keeps sending
>>>> multiple 300's to (A):
>>>>
>>>> route {
>>>> route(1);
>>>> }
>>>>
>>>> route[1] {
>>>> t_on_reply("1");
>>>> t_on_failure("2");
>>>> if (!t_relay("proxy.server.c:5060","0x02")) {
>>>> sl_reply_error();
>>>> }
>>>> onreply_route[1] {
>>>> if(t_check_status("302")){
>>>> $var(lrn_from_bv) = $ct;
>>>> }
>>>> }
>>>> failure_route[2] {
>>>>
>>>> if (t_check_status("3[0-9][0-9]")) {
>>>> route(2);
>>>> exit;
>>>> }
>>>> route[2] {
>>>> if(perl_exec("callcheck")){
>>>> avp_pushto("$ru", "$avp(s:routes)/g");
>>>> t_reply("300","Go Here");
>>>> exit;
>>>> }
>>>> }
>>>>
>>>>
>>>>
>>>>
--
Daniel-Constantin Mierla
http://www.asipto.com
Hi,
I have the following issue:
I am using lcr module to select a gw from a set of gw's based upon R-URI
prefixes. All is working fine.
The issue is with a CANCEL that is sent by the UAC that originates the call
before a dialog can be established. This implies that the CANCEL cannot be
routed to the correct GW since SER see a CANCEL and simply returns "487
request terminated".
How can I forward the CANCEL to the GW the the original INVITE was forwarded
to?
Any help appreciated.....
Hi,
I setup the presence server.
My sip phone sends a PUBLISH msg.
Th presence server sends a 200 msg.
My another sip phone sends a SUBSCRIBE msg.
The presence server returns 202 msg, and NOTIFY msg. These msgs does not
include user in the contact header
My sip phone sends a 200 msg
I sends a second SUBSCRIBE msg to refresh it. This time my subscribe msg
does not include the user in the request msg
because the presence server did not include the user in the contact header.
The presence server replied back with a 404 messge.
So I looked at the codes, and add the user in the contact header when the
presence server replys back to a client.
But I stll have a same 404 msg.
Do I miss something?
I always appreciate your help.
Thanks.
Jeon