Hi all,
So for a while now I've been working with our engineering team to
troubleshoot these random events where the UPDATE message sent from the
server never made it to the client side. Here is the the topology:
Server -(tcp)-> kamailio -(tls)-> client
So looks pretty straight forward and I have logging messages stating
t_relay() was successful in sending the message.
The question is how do we know t_relay really successfully sent it? Does
it actually monitor the physical interface …
[View More]as it goes out?
Please advise.
Thanks.
--
Andy Chen
--
*Confidentiality Notice: The information contained in this e-mail and any
attachments may be confidential. If you are not an intended recipient, you
are hereby notified that any dissemination, distribution or copying of this
e-mail is strictly prohibited. If you have received this e-mail in error,
please notify the sender and permanently delete the e-mail and any
attachments immediately. You should not retain, copy or use this e-mail or
any attachment for any purpose, nor disclose all or any part of the
contents to any other person. Thank you.*
[View Less]
I want to experiment with using the async module. I added the module and updated my request_route to call async_task_route() and put all the existing routing logic in a new route. Unfortunately my kamailio is crashing looking up a cfg_get variable. The exact same route logic works fine in the normal child process, its only when its run in a async_worker that it fails.
Is this a known issue?
I can see in the core file that there is no group handle in the cfg_group_t (its 0x0), but I know …
[View More]nothing about how that gets set and where.
Thanks in advance for any help
Malcolm
[View Less]
Hello All,
Problem: My main issue is that when I "REGISTER" a client via Kamailio, and I attempt to "Dial" a different endpoint within an Asterisk Dial Plan, Asterisk throws an error stating that the endpoint (the number I am dialing via "Dial") is not registered or reachable. However, commands like "Playback" do work correctly for the client I "REGISTERED" via Kamailio.
E.g. I register client 10001 in Kamailio, I then register another client 10002 in Kamalio; both 10001 and 10002 can …
[View More]exercise an Asterisk Dial Plan which will play videos/audio (No Problem). But, now I want 10001 to Call (Dial) 10002; it is at this point that Asterisk throws the error "10002 is not registered or reachable".
I have tried many of the suggestion on many different help boards (several times) but I am still unable to forward a registration from Kamailio to Asterisk.
With my current Kamailio configuration (I do use dispatching), I see , via tcpdump, Asterisk receiving a "REGISTER" request, and Asterisk sends back the "unauthorized" as expected, however, Kamailio does not re-send the "REGISTER" as is customary. I am not sure of the next step to take, but I feel I have a couple of options.
* I can continue to try and figure out why Kamailio is not sending the second "REGISTER" (I have not yet been able to figure this out).
* Tell Asterisk to not require authentication. (I am using pjsip and do not know how to not require authentication in Asterisk when the request is from Kamailio).
I have put a lot of time into this one, and I am at a sticking point. Any help or suggestions would be very much appreciated.
Thank you,
[View Less]
One of our clients expiriences strange error.
Their system sends BYE with different from address (which IP is
presented in Contact header of initial INVITE) and Kamailio
immediately responded with "400 Bad From URI".
In which module can be generated this response? We use 4.3 version.
--
Skype: konstantin.tumalevich
Hi all,
I'm trying to parse the result of a json rpc call to get the register
statistics.
# Get registrar stats
jsonrpc_exec('{"jsonrpc": "2.0", "method": "stats.get_statistics",
"params": ["accepted_regs"], "id": 1}');
jansson_get("result[0]", $jsonrpl(body), "$var(registrar_accepted)");
xlog("LOG_LOCAL3","L_WARN","$jsonrpl(body)\n");
The $jsonrpl(body) var contains:
{"jsonrpc":"2.0","result":["registrar:accepted_regs = 2"],"id":1}
With this code the result stored in $var(…
[View More]registrar_accepted) is :
"AcceptedRegistrations":"registrar:accepted_regs = 1"
I'm trying to get only the value. I have tried:
jansson_get("result[0].registrar:accepted_regs", $jsonrpl(body),
"$var(registrar_accepted)");
jansson_get("result[0].['registrar:accepted_regs']", $jsonrpl(body),
"$var(registrar_accepted)");
jansson_get("result[0]['registrar:accepted_regs']", $jsonrpl(body),
"$var(registrar_accepted)");
But this does not work. Do i need to escape the colon in the object name
"registrar:accepted_regs" ?
Thanks,
Jan
[View Less]
Hello,
anyone around here that can do a quick test with http_async_module? I
don't have a testbed for it right now and I would spend the time on
other resources if someone here can run some tests with
http_async_client module from master branch. I did a bit of internal
refactoring in order to be able to export the function to kemi interface
-- nothing radical, but it would be good to know it didn't break anything.
Cheers,
Daniel
--
Daniel-Constantin Mierla
www.twitter.com/miconda -- www.…
[View More]linkedin.com/in/miconda
Kamailio Advanced Training - www.asipto.com
Kamailio World Conference - May 14-16, 2018 - www.kamailioworld.com
[View Less]
hi guys,
has anyone of you tried playing around with a scenario similar to this?
A. invite -> t_set_fr() 2 seconds - if "100 trying" not received in 2
seconds, timeout. works fine.
B. after receiving "100 trying" received, t_set_fr() 30 seconds - if 18x
not received in 30 seconds, timeout. works fine
C. after receiving the first 180, t_set_fr() 10 seconds - if "200 ok" not
received in 10 seconds, it will not timeout, but instead it will timeout 30
seconds after B.
i noticed this behavior …
[View More]recently and noticed that when a previous
t_set_fr() is bigger than the new one, it will be ignored. so if i did 2 ->
10 -> 30, it works (swapping timeout values of B and C)
my question is, is this an expected behavior?
Kelvin Chua
[View Less]
i am trying to load test the ims_charging module and notice some issues
whenever i send test calls one by one, it's perfect. but when i use sipp
and generate a bunch of calls, i would get this intermittently
CRITICAL: ims_charging [ro_timer.c:122]: insert_ro_timer(): Trying to
insert a bogus ro tl=0x7f207e91c2d0 tl->next=0x7f207e8b57b8
tl->prev=0x7f207e97c398
if i continue to hammer the server, it would end up failing all calls. When
this issue happens, Ro_CCR will not return any value …
[View More]and will also not
trigger the async route, looks like it just sits there frozen. during this
time, sip client will receive a 408.
also notice cdp complaining of latency usually around 1 second, using
packet capture i am sure diameter server is responding properly. i think
there is a choke point somewhere. i tried playing around with
async_workers, no improvement.
any pointers?
Kelvin Chua
[View Less]
Thnaks for the reply.
I don't need mhomed since i do the socket forcing by myself after the the
DISPATCH selects the Gateway. What i need is something that modifies the
SIP Request in order to use the outbound IP in the R-URI, To-Header, etc.
I'm doing that using the $td and $rd pseudo-variables, but i'm not sure if
that is the safest approach.
The TOPOS module is really usefull for this, thanks for mentioning.
However, the dialog_expires parameter is really confusing, since it imposes
a …
[View More]maximum time allowed for a dialog to exist (After the records are
deleted, routing no longer works). I could work with a very long timer for
this if the ended dialogs would get removed from the table automatically,
but that doesn't happen.
Cheers
[View Less]