Hi,
we would like to add a new pv $presentity (or better name) to be set on presence handle_subscribe.
the reason for this is that we need the presentity of the subscription to carry on further tasks in the script and the To header not always carries the right information on re-subscriptions.
handle_subscribe will take the presentity from Request-URI if no to-tag is sent or it will take it from hash/db if to-tag is present.
is that ok to proceed with implementation ?
Best
Hi,
I want to propose a patch to usrloc:
https://github.com/kamailio/kamailio/commit/14852a98ed46b7a88c92bff31c319d2…
this patch adds a new parameter, close_expired_tcp, that makes usrloc
request the main TCP process to end the connections of expired
registrations (assuming 1 connection = 1 contact).
It enables to release resources on the system ASAP, in the event of a
lost connection (e.g. when clients are on mobile networks).
Any thoughts?
Cheers,
--
Camille
Module: kamailio
Branch: master
Commit: e172b7a1b66edfb302da8d498eada7da9f21643e
URL: https://github.com/kamailio/kamailio/commit/e172b7a1b66edfb302da8d498eada7d…
Author: Richard Fuchs <rfuchs(a)sipwise.com>
Committer: Richard Fuchs <rfuchs(a)sipwise.com>
Date: 2015-03-20T09:43:36-04:00
tmrec: update licensing and copyright info
---
Modified: modules/tmrec/doc/tmrec.xml
Modified: modules/tmrec/period.c
Modified: modules/tmrec/period.h
---
Diff: https://github.com/kamailio/kamailio/commit/e172b7a1b66edfb302da8d498eada7d…
Patch: https://github.com/kamailio/kamailio/commit/e172b7a1b66edfb302da8d498eada7d…
---
diff --git a/modules/tmrec/doc/tmrec.xml b/modules/tmrec/doc/tmrec.xml
index 441cffe..f429be3 100644
--- a/modules/tmrec/doc/tmrec.xml
+++ b/modules/tmrec/doc/tmrec.xml
@@ -28,11 +28,20 @@
<surname>Balashov</surname>
<email>abalashov(a)evaristesys.com</email>
</editor>
+ <editor>
+ <firstname>Richard</firstname>
+ <surname>Fuchs</surname>
+ <email>rfuchs(a)sipwise.com</email>
+ </editor>
</authorgroup>
<copyright>
<year>2012</year>
<holder>asipto.com</holder>
</copyright>
+ <copyright>
+ <year>2012</year>
+ <holder>Sipwise GmbH</holder>
+ </copyright>
</bookinfo>
<toc></toc>
diff --git a/modules/tmrec/period.c b/modules/tmrec/period.c
index c5e4407..0b43696 100644
--- a/modules/tmrec/period.c
+++ b/modules/tmrec/period.c
@@ -1,3 +1,24 @@
+/*
+ * Copyright (C) 2012 Sipwise GmbH
+ * Written by Richard Fuchs <rfuchs(a)sipwise.com>
+ *
+ * This file is part of Kamailio, a free SIP server.
+ *
+ * Kamailio is free software; you can redistribute it and/or modify it under the
+ * terms of the GNU General Public License as published by the Free Software
+ * Foundation; either version 2 of the License, or (at your option) any later
+ * version
+ *
+ * Kamailio is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc., 59
+ * Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
#include <stdio.h>
#include <string.h>
#include <time.h>
diff --git a/modules/tmrec/period.h b/modules/tmrec/period.h
index bede828..25103d7 100644
--- a/modules/tmrec/period.h
+++ b/modules/tmrec/period.h
@@ -1,3 +1,24 @@
+/*
+ * Copyright (C) 2012 Sipwise GmbH
+ * Written by Richard Fuchs <rfuchs(a)sipwise.com>
+ *
+ * This file is part of Kamailio, a free SIP server.
+ *
+ * Kamailio is free software; you can redistribute it and/or modify it under the
+ * terms of the GNU General Public License as published by the Free Software
+ * Foundation; either version 2 of the License, or (at your option) any later
+ * version
+ *
+ * Kamailio is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc., 59
+ * Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
#ifndef _PERIOD_H_
#define _PERIOD_H_
There are two files in tmrec module that has no copyright, no boilerplate, anything.
period.c and period.h
Do you know their history? Should we add a GPL or BSD boilerplate or something?
If so, please take action.
/O
Module: kamailio
Branch: master
Commit: e6cdb91037abc5a7668e7919281072b15e758739
URL: https://github.com/kamailio/kamailio/commit/e6cdb91037abc5a7668e7919281072b…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2015-03-20T12:57:04+01:00
tm: formated the comment without + chars
---
Modified: modules/tm/t_suspend.c
---
Diff: https://github.com/kamailio/kamailio/commit/e6cdb91037abc5a7668e7919281072b…
Patch: https://github.com/kamailio/kamailio/commit/e6cdb91037abc5a7668e7919281072b…
---
diff --git a/modules/tm/t_suspend.c b/modules/tm/t_suspend.c
index cc4dd61..3fa8f2e 100644
--- a/modules/tm/t_suspend.c
+++ b/modules/tm/t_suspend.c
@@ -216,13 +216,13 @@ int t_continue(unsigned int hash_index, unsigned int label,
}
/* Set last_received to something >= 200,
-+ * the actual value does not matter, the branch
-+ * will never be picked up for response forwarding.
-+ * If last_received is lower than 200,
-+ * then the branch may tried to be cancelled later,
-+ * for example when t_reply() is called from
-+ * a failure route => deadlock, because both
-+ * of them need the reply lock to be held. */
+ * the actual value does not matter, the branch
+ * will never be picked up for response forwarding.
+ * If last_received is lower than 200,
+ * then the branch may tried to be cancelled later,
+ * for example when t_reply() is called from
+ * a failure route => deadlock, because both
+ * of them need the reply lock to be held. */
t->uac[branch].last_received=500;
uac = &t->uac[branch];
}
Hello Richard,
with the commit 16e763c32d7a2b9fc451185e028a90b3be758f65 you removed the
setting of last_received code for the branch used for suspending the
transaction (blind uac).
You added some comments:
+ /*we really don't need this next line anymore
otherwise we will
+ never be able to forward replies after a
(t_relay) on this branch.
+ We want to try and treat this branch as 'normal'
(as if it were a normal req, not async)' */
+ //t->uac[branch].last_received=500;
But a t_relay() will create a new uac/branch, not reusing it.
Do you have some specific use cases reusing that suspended branch? If
not, then I will revert the above change and set the last_received to
make the branch inactive. If yes, we have to identify the case and set
the last received for the rest.
On a report from Alex Balashov with a crash, the suspended branch is
picked for handling cancel and apparently messes some stuff. There is
another active branch due to a t_relay() after t_continue().
Cheers,
Daniel
--
Daniel-Constantin Mierla
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Kamailio World Conference, May 27-29, 2015
Berlin, Germany - http://www.kamailioworld.com
Hi,
I would like to propose [and manage] an effort with the primary Kamailio
developers to simplify the configuration syntax. I'm not a developer,
but used lot's of different applications and I'm familiar with various
configuration formats.
Based on what I've seen, there are five (5) types of configuration
directives used with Kamailio.
- C-Style Control Directives
- Apache-Like Name/Value Pairs
- Normal Name/Value Pairs
- Modify Parameter Procedures
- Routing Logic Scripting
I do understand some of this may be the result of merging multiple
projects. But this mixture of syntax slows adoption, drastically
increases the learning curve for the user base. By implementing a
consistent standard to the configuration syntax, it will make using the
application less complicated.
--
My first recommendation, would be to separate the routing logic from the
primary configuration file. This can easily be done with
import/include. However, I feel that a fixed path should be added
during compile.
‘--with-routing=/etc/kamailio/routing/’
Then it would possible to modify the configuration parser to read all
the files in that directory. Allowing the separation of the route logic
into individual files. relay.cfg, reqinit.cfg, ... xmlrpc.cfg,
tovoicemail.cfg, etc... Making individual logic changes a bit easier.
To reach a fixed path solution, and keep some backwards compatibility,
the first step should be... Use import/include and move all the route
logic into /etc/kamailio/routing/basic.cfg
We can discuss on the mailing list or feel free to contact me directly.
Sincerely,
Brian LaVallee