Hey everyone!
Problem:
At startup the presence module for reginfos can get into a state where it is not adding bodies to reginfo NOTIFYs.
Setup:
We are using the pua_reginfo to let the Kamailio (4.2.6) PUBLISH the current registration state to itself. The body is correctly added to the presentity-table in the Postgres.
Analysis:
However, we have identified two cases where after startup the Kamailio can reach a state where he won't add bodies to the NOTIFYs. And this does not fix itself over time.
We are pretty confident that the problem lies in an inconsistency between the presentity table in the DB and the hashtable of the presence module.
Case 1:
The entry for a URI in the DB is expired. On startup of the Kamailio the hashtable remains empty for that URI.
Maybe due to another bug the pua_reginfo occasionally sends PUBLISHes with an expired "SIP-If-Match"-header.
In module/presence/presentity.c::update_presentity() the DB is updated. However, the hashtable is only updated if it is a new request (i.e. no "SIP-If-Match"-header and thus new_t not set).
The hash table is not filled on startup, not on the first PUBLISH as it contains a (wrong) "SIP-If-Match"-header, and not on any subsequent PUBLISH as they contain correct "SIP-If-Match"-headers.
Case 2:
The presentity table contains at least one expired and one non-expired reginfo entry for a URI.
The Kamailio seems to send a NOTIFY with a body within about a minute (probably the default clean period of 100 secs?). But after that short interval only NOTIFYs with empty bodies are sent.
To us it looks like the cleanup function (module/presence/publish.c::msg_presentity_clean()) is cleaning up the expired DB entries correctly. But despite one still valid entry in the DB the entry in the hash table gets removed as well. And it wont get filled again (see case 1).
This only seems to apply to the "reg" event, the "presence" event does not seem to be affected.
We are aware aware of the publ_cach parameter, but we don't know if this has any performance impact on our system.
If needed we can try to provide more insight on this problem.
Some help on this or a fix would be much appreciated!
BR, Stefan
Hi guys,
Kamailio P-CSCF is unable to return true for:
pcscf_is_registered("location") on INVITE
and responds to the INVITE with: 403 Forbidden - You must register first
with a S-CSCF
Registration completes fine and I can see database with valid location
entries though... Any ideas?
Regards,
Owais
--
View this message in context: http://sip-router.1086192.n5.nabble.com/Kamailio-P-CSCF-error-on-INVITE-tp1…
Sent from the Users mailing list archive at Nabble.com.
Hi,
I have a registered handset which replies to an INVITE message from Kamailio with a "302 Moved Temporarily" message. The reason for this is because the user has set their handset to forward the call to another telephone number.
In a wireshark trace I can see the forwarded telephone number in the Contact header of the SIP message but I can't find a way to access this header via any variables. In the config file I have tried this:
# Manage incoming repliesonreply_route[MANAGE_REPLY] { ...
if(t_check_status("3[0-9][0-9]")) {
xlog("L_INFO", "test1: $hdr(Contact)");
xlog("L_INFO", "test2: $ct");
}
...
}
, but in both cases the value returned is the Contact header of the original INVITE message and not the Contact shown in the "302 Moved Temporarily" reply message.
How do I access the Contact header in the reply message?
Regards,
Mark.
Hi,
I've installed Kamailio on CentOS using yum but it's not installed the geoip2 module, amongst others.
I'm I correct in saying that to install this module I'd need to install Kamailio from the source code?
Regards,
Mark.
Hi,
Trying kamailio with Ubuntu 16.04 and I'm getting errors as follows:
ERROR: tls [tls_init.c:490]: tls_pre_init(): Unable to set the memory
allocation functions
The error is identical to the one mentioned here:
https://bugs.launchpad.net/ubuntu/+source/kamailio/+bug/1591992
Is there a solution to this. Thanks for any response.
- Jayesh
Hello,
I'm trying to extract the privacy param from the RPID header, but without success.
Could someone point me in the right direction?
Remote-Party-ID: "Cullen Jennings" <sip:+3123456789@1.1.1.1>;party=calling;privacy=off;screen=no.
I've tried the following ways:
1) TEXTOPSX: $var(rpid_privacy_value) = @hf_value.remote_party_id.privacy;
2) Param Transformations:
a. $(hdr(Remote-Party-ID){param.value,privacy})
b. $(re{param.value,privacy})
c. 4re{param.value,privacy}
I can't seem to extract the value of privacy from the RPID header.
Regards,
Grant
Hi,
while playing with the script from http://kb.asipto.com/kamailio:presence:k43-blf
and "kamailio 4.4.3 (x86_64/freebsd) 5a2195" I could not see any NOTIFY packet
going out to the subscribed watcher.
"tcpdump -i lo0" shows self injected PUBLISH packets challenged with
"407 Proxy Authentication Required" and there they got stuck.
The PUBLISH packets are sent on lo0 from my network address to the same network
address (here 10.0.0.106 to 10.0.0.106). The proxy challenge is also sent from
10.0.0.106 to 10.0.0.106.
An xlog entry with the variable "$Ri" in route REQUEST shows 10.0.0.106 too.
Since these packets are only seen on lo0, should "$Ri" not show 127.0.0.1?
After disabling the WITH_AUTH variable, the watcher is getting its NOTIFY's.
Now I wonder under which circumstances this script is supposed to function
correctly without changes in the AUTH route?
By the way, I had the same problem with the provided script of the
msilo module (http://kamailio.org/docs/modules/4.4.x/modules/msilo.html#idp42867388)
which too only works if there is no "auth_challenge" in the way.
Could somebody with more insight in Kamailio internals give some hints
on this, please? How can it get solved in an elegant way?
Thanks,
Torsten
Hello
I tested a package http://download.opensuse.org/repositories/home:/kamailio:/v4.3.x-rpms/CentO… ( I downlowaded 4.3.6 version rpm and installed it. Kamailio restarts well. The behaviour is the same. the phone registeres without nonce.
I install kamailio, kamailio-kazoo - 2 rpm зфслфпуы
On Thursday, September 15, 2016 9:34 PM, Dmitry <mbike2000ru(a)yahoo.com> wrote:
I made loadmodule and modparam("debugger", "cfgtrace", 1)
but anyway - no logs when I register.
As I understand - it's like no config file.
On Thursday, September 15, 2016 6:01 PM, Daniel-Constantin Mierla <miconda(a)gmail.com> wrote:
I am not familiar with kazoo configs, maybe asking on their mailing list can help you more. From Kamailio point of view, you can load debugger module and set its cfgtrace parameter to 1, then see what actions from config are executed and why is not getting to the authentication part. Cheers,
Daniel
On 15/09/16 14:09, Dmitry wrote:
/etc/kazoo/kamailio/default.cfg - which containes all routes. 2600hz/kazoo-configs
|
|
|
|
|
|
|
|
|
| |
2600hz/kazoo-configs
kazoo-configs - Kazoo Configuration Files for Software We Use |
|
|
|
I test on a working server (testing one) and a working config
--
Daniel-Constantin Mierla
http://www.asipto.com - http://www.kamailio.orghttp://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
On Thursday, September 15, 2016 3:56 PM, Daniel-Constantin Mierla <miconda(a)gmail.com> wrote:
Are you using default kamailio.cfg or another one? Cheers,
Daniel
On 15/09/16 12:39, Dmitry wrote:
Hello
I took this spec from suse.
It generates no errors.
When I installed from the RPM I had made - the phone register, but
The phone sends a REGISTER and the KAmailio sends 200ok back to the phone (so no NONCE authorization) and no logs during it.
In default.cfg I set L_DBG but no logs are generated during registering a phone.
And I see no AMQP messages (I set to 1 Kazoo_enable in the SPEC file).
Why there are no logs during register (I saw register in tcpdump)?
On Wednesday, September 14, 2016 7:42 PM, Daniel-Constantin Mierla <miconda(a)gmail.com> wrote:
Then you just need add those files in various packages inside the spec file, so they are not detected to be orphaned. Maybe you can inspire from: - https://build.opensuse.org/package/view_file/home:kamailio:v4.3.x-rpms/kama…
Cheers,
Daniel
On 14/09/16 16:35, Dmitry wrote:
4.3.4 version is for Kazoo It is on production server currently.
I need to rebuild the current RPM so as to apply patches.
But first I want to get a working Kamailio and only after it I will apply the patches.
I think I may take a list of modules from the production Kazoo-kamailio and rearchive the tar.gz because now the Fedora 18 rpmbuild gives a lot of files:
RPM build errors: Installed (but unpackaged) file(s) found: /usr/lib64/kamailio/modules/auth_xkeys.so /usr/lib64/kamailio/modules/dmq_usrloc.so /usr/lib64/kamailio/modules/ims_charging.so /usr/lib64/kamailio/modules/jsonrpc-s.so /usr/lib64/kamailio/modules/mohqueue.so /usr/lib64/kamailio/modules/nosip.so /usr/lib64/kamailio/modules/rtjson.so /usr/lib64/kamailio/modules/rtpengine.so /usr/lib64/kamailio/modules/statsd.so /usr/lib64/kamailio/modules/tcpops.so /usr/lib64/kamailio/modules/tsilo.so /usr/share/doc/kamailio/modules/README.auth_xkeys /usr/share/doc/kamailio/modules/README.dmq_usrloc /usr/share/doc/kamailio/modules/README.ims_charging /usr/share/doc/kamailio/modules/README.ims_registrar_scscf /usr/share/doc/kamailio/modules/README.jsonrpc-s /usr/share/doc/kamailio/modules/README.mohqueue /usr/share/doc/kamailio/modules/README.nosip /usr/share/doc/kamailio/modules/README.rtjson /usr/share/doc/kamailio/modules/README.rtpengine /usr/share/doc/kamailio/modules/README.statsd /usr/share/doc/kamailio/modules/README.tcpops /usr/share/doc/kamailio/modules/README.tsilo /usr/share/snmp/mibs/KAMAILIO-MIB /usr/share/snmp/mibs/KAMAILIO-REG-MIB /usr/share/snmp/mibs/KAMAILIO-SIP-COMMON-MIB /usr/share/snmp/mibs/KAMAILIO-SIP-SERVER-MIB /usr/share/snmp/mibs/KAMAILIO-TC
On Wednesday, September 14, 2016 5:05 PM, Daniel-Constantin Mierla <miconda(a)gmail.com> wrote:
Hello, any reason not to use series 4.4.x? Iirc, the latest spec that got update on 4.4 are those for oracle enterprise linux, perhaps is something that you can reuse a lot for upgrading to the centos flavour. On the other hand, you can use opensuse build service if you want to build yourself, the spec from the kamailio project there is up to date and the ones for 4.3 should still be there. Anyhow, as I said, I would recommend to go with 4.4.x version. Cheers,
Daniel
--
Daniel-Constantin Mierla
http://www.asipto.com - http://www.kamailio.orghttp://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda