Hello, I'm using the set_dlg_profile function from the dialog module (kamailio 1.4). I use it to control limit of simultaneous calls to clients. I'm noticing that after this function is called, even if the call terminates immediately, it takes some 3 to 4 seconds for the profile to be cleared. Is there any reason for this? I can see even if I call unset_dlg_profile on failure_route, the profile will take that time span to be cleared.
regards, mayama
On Wed, Feb 25, 2009 at 7:29 PM, mayamatakeshi mayamatakeshi@gmail.com wrote:
Hello, I'm using the set_dlg_profile function from the dialog module (kamailio 1.4). I use it to control limit of simultaneous calls to clients. I'm noticing that after this function is called, even if the call terminates immediately, it takes some 3 to 4 seconds for the profile to be cleared. Is there any reason for this? I can see even if I call unset_dlg_profile on failure_route, the profile will take that time span to be cleared.
Sorry, I was retesting this. it seems unset_dlg_profile do has immediate effect.
On Thu, Feb 26, 2009 at 12:34 AM, mayamatakeshi mayamatakeshi@gmail.com wrote:
On Wed, Feb 25, 2009 at 7:29 PM, mayamatakeshi mayamatakeshi@gmail.com wrote:
Hello, I'm using the set_dlg_profile function from the dialog module (kamailio 1.4). I use it to control limit of simultaneous calls to clients. I'm noticing that after this function is called, even if the call terminates immediately, it takes some 3 to 4 seconds for the profile to be cleared. Is there any reason for this? I can see even if I call unset_dlg_profile on failure_route, the profile will take that time span to be cleared.
Sorry, I was retesting this. it seems unset_dlg_profile do has >immediate effect.
Oh yes, unset_dlg_profile will immediately remove the dialog from the profile, but this cannot be called from request_route, so if a call is immediately answered and disconnected, we will get to this situation of having the dialog still in the profile for some seconds. Well, this would be very unlikely so, being able to resolve the case of immediate disconnection will be just fine.
On 02/25/2009 06:16 PM, mayamatakeshi wrote:
On Thu, Feb 26, 2009 at 12:34 AM, mayamatakeshi mayamatakeshi@gmail.com wrote:
On Wed, Feb 25, 2009 at 7:29 PM, mayamatakeshi mayamatakeshi@gmail.com wrote:
Hello, I'm using the set_dlg_profile function from the dialog module (kamailio 1.4). I use it to control limit of simultaneous calls to clients. I'm noticing that after this function is called, even if the call terminates immediately, it takes some 3 to 4 seconds for the profile to be cleared. Is there any reason for this? I can see even if I call unset_dlg_profile on failure_route, the profile will take that time span to be cleared.
Sorry, I was retesting this. it seems unset_dlg_profile do has >immediate effect.
Oh yes, unset_dlg_profile will immediately remove the dialog from the profile, but this cannot be called from request_route, so if a call is immediately answered and disconnected,
is the call answered? or the call is cancelled?
The profile should be removed as soon as the dialog terminates. I do not see a reason why not enabling the unset_dlg_profile for request_route. Edit modules/dialog/dialog.c and set REQUEST_ROUTE for unset_dlg_profile in:
static cmd_export_t cmds[]
Then in: modules/dialog/dlg_profile.c, in function unset_dlg_profile replace line: if (dlg==NULL || route_type==REQUEST_ROUTE) {
with: if (dlg==NULL) {
Recompile, reinstall, do some tests and report it here. If all ok, we can enable it.
Cheers, Daniel
we will get to this situation of having the dialog still in the profile for some seconds. Well, this would be very unlikely so, being able to resolve the case of immediate disconnection will be just fine.
On Thu, Feb 26, 2009 at 3:22 AM, Daniel-Constantin Mierla miconda@gmail.com wrote:
On 02/25/2009 06:16 PM, mayamatakeshi wrote:
On Thu, Feb 26, 2009 at 12:34 AM, mayamatakeshi mayamatakeshi@gmail.com wrote:
On Wed, Feb 25, 2009 at 7:29 PM, mayamatakeshi mayamatakeshi@gmail.com wrote:
Hello, I'm using the set_dlg_profile function from the dialog module (kamailio 1.4). I use it to control limit of simultaneous calls to clients. I'm noticing that after this function is called, even if the call terminates immediately, it takes some 3 to 4 seconds for the profile to be cleared. Is there any reason for this? I can see even if I call unset_dlg_profile on failure_route, the profile will take that time span to be cleared.
Sorry, I was retesting this. it seems unset_dlg_profile do has >immediate effect.
Oh yes, unset_dlg_profile will immediately remove the dialog from the profile, but this cannot be called from request_route, so if a call is immediately answered and disconnected,
Hello Daniel, sorry for the late reply (I was not aware of you response till some days ago. I might have mistakenly deleted your message without reading it).
is the call answered? or the call is cancelled?
The call is answered immediately upon reception of the INVITE and immediately terminated with BYE.
The profile should be removed as soon as the dialog terminates.
This is not happening if you expect the profile to be cleared by itself upon reception of BYE (it will only happen for calls longer than 3 or 4 seconds from INVITE to BYE).
I do not see a reason why not enabling the unset_dlg_profile for request_route. Edit modules/dialog/dialog.c and set REQUEST_ROUTE for unset_dlg_profile in:
static cmd_export_t cmds[]
Then in: modules/dialog/dlg_profile.c, in function unset_dlg_profile replace line: if (dlg==NULL || route_type==REQUEST_ROUTE) {
with: if (dlg==NULL) {
Recompile, reinstall, do some tests and report it here. If all ok, we can enable it.
I tried that with the 1.4 branch and it works. Thanks for your assistance.
regards, takeshi
we will get to this situation of having the dialog still in the profile for some seconds. Well, this would be very unlikely so, being able to resolve the case of immediate disconnection will be just fine.
-- Daniel-Constantin Mierla http://www.asipto.com
Hello,
On 04/15/2009 06:43 AM, mayamatakeshi wrote:
On Thu, Feb 26, 2009 at 3:22 AM, Daniel-Constantin Mierla miconda@gmail.com wrote:
On 02/25/2009 06:16 PM, mayamatakeshi wrote:
On Thu, Feb 26, 2009 at 12:34 AM, mayamatakeshi mayamatakeshi@gmail.com wrote:
On Wed, Feb 25, 2009 at 7:29 PM, mayamatakeshi mayamatakeshi@gmail.com wrote:
Hello, I'm using the set_dlg_profile function from the dialog module (kamailio 1.4). I use it to control limit of simultaneous calls to clients. I'm noticing that after this function is called, even if the call terminates immediately, it takes some 3 to 4 seconds for the profile to be cleared. Is there any reason for this? I can see even if I call unset_dlg_profile on failure_route, the profile will take that time span to be cleared.
Sorry, I was retesting this. it seems unset_dlg_profile do has >immediate effect.
Oh yes, unset_dlg_profile will immediately remove the dialog from the profile, but this cannot be called from request_route, so if a call is immediately answered and disconnected,
Hello Daniel, sorry for the late reply (I was not aware of you response till some days ago. I might have mistakenly deleted your message without reading it).
is the call answered? or the call is cancelled?
The call is answered immediately upon reception of the INVITE and immediately terminated with BYE.
The profile should be removed as soon as the dialog terminates.
This is not happening if you expect the profile to be cleared by itself upon reception of BYE (it will only happen for calls longer than 3 or 4 seconds from INVITE to BYE).
I do not see a reason why not enabling the unset_dlg_profile for request_route. Edit modules/dialog/dialog.c and set REQUEST_ROUTE for unset_dlg_profile in:
static cmd_export_t cmds[]
Then in: modules/dialog/dlg_profile.c, in function unset_dlg_profile replace line: if (dlg==NULL || route_type==REQUEST_ROUTE) {
with: if (dlg==NULL) {
Recompile, reinstall, do some tests and report it here. If all ok, we can enable it.
I tried that with the 1.4 branch and it works.
to summarize now: - unset_dlg_profile works ok with the change in the source - still there is not an auto-clear for very short calls
Is it right?
Cheers, Daniel
On Wed, Apr 15, 2009 at 4:27 PM, Daniel-Constantin Mierla miconda@gmail.com wrote:
Hello,
On 04/15/2009 06:43 AM, mayamatakeshi wrote:
On Thu, Feb 26, 2009 at 3:22 AM, Daniel-Constantin Mierla miconda@gmail.com wrote:
On 02/25/2009 06:16 PM, mayamatakeshi wrote:
On Thu, Feb 26, 2009 at 12:34 AM, mayamatakeshi mayamatakeshi@gmail.com wrote:
On Wed, Feb 25, 2009 at 7:29 PM, mayamatakeshi mayamatakeshi@gmail.com wrote:
Hello, I'm using the set_dlg_profile function from the dialog module (kamailio 1.4). I use it to control limit of simultaneous calls to clients. I'm noticing that after this function is called, even if the call terminates immediately, it takes some 3 to 4 seconds for the profile to be cleared. Is there any reason for this? I can see even if I call unset_dlg_profile on failure_route, the profile will take that time span to be cleared.
Sorry, I was retesting this. it seems unset_dlg_profile do has
immediate
effect.
Oh yes, unset_dlg_profile will immediately remove the dialog from the profile, but this cannot be called from request_route, so if a call is immediately answered and disconnected,
Hello Daniel, sorry for the late reply (I was not aware of you response till some days ago. I might have mistakenly deleted your message without reading it).
is the call answered? or the call is cancelled?
The call is answered immediately upon reception of the INVITE and immediately terminated with BYE.
The profile should be removed as soon as the dialog terminates.
This is not happening if you expect the profile to be cleared by itself upon reception of BYE (it will only happen for calls longer than 3 or 4 seconds from INVITE to BYE).
I do not see a reason why not enabling the unset_dlg_profile for request_route. Edit modules/dialog/dialog.c and set REQUEST_ROUTE for unset_dlg_profile in:
static cmd_export_t cmds[]
Then in: modules/dialog/dlg_profile.c, in function unset_dlg_profile replace line: if (dlg==NULL || route_type==REQUEST_ROUTE) {
with: if (dlg==NULL) {
Recompile, reinstall, do some tests and report it here. If all ok, we can enable it.
I tried that with the 1.4 branch and it works.
to summarize now:
- unset_dlg_profile works ok with the change in the source
- still there is not an auto-clear for very short calls
Is it right?
Hello, Daniel yes, that's correct.
regards, takeshi
On 04/15/2009 11:06 AM, mayamatakeshi wrote:
On Wed, Apr 15, 2009 at 4:27 PM, Daniel-Constantin Mierla miconda@gmail.com wrote:
Hello,
On 04/15/2009 06:43 AM, mayamatakeshi wrote:
On Thu, Feb 26, 2009 at 3:22 AM, Daniel-Constantin Mierla miconda@gmail.com wrote:
On 02/25/2009 06:16 PM, mayamatakeshi wrote:
On Thu, Feb 26, 2009 at 12:34 AM, mayamatakeshi mayamatakeshi@gmail.com wrote:
On Wed, Feb 25, 2009 at 7:29 PM, mayamatakeshi mayamatakeshi@gmail.com wrote:
> Hello, > I'm using the set_dlg_profile function from the dialog module > (kamailio > 1.4). > I use it to control limit of simultaneous calls to clients. > I'm noticing that after this function is called, even if the call > terminates immediately, it takes some 3 to 4 seconds for the profile > to be cleared. Is there any reason for this? > I can see even if I call unset_dlg_profile on failure_route, the > profile will take that time span to be cleared. > > > Sorry, I was retesting this. it seems unset_dlg_profile do has
> immediate > effect.
Oh yes, unset_dlg_profile will immediately remove the dialog from the profile, but this cannot be called from request_route, so if a call is immediately answered and disconnected,
Hello Daniel, sorry for the late reply (I was not aware of you response till some days ago. I might have mistakenly deleted your message without reading it).
is the call answered? or the call is cancelled?
The call is answered immediately upon reception of the INVITE and immediately terminated with BYE.
The profile should be removed as soon as the dialog terminates.
This is not happening if you expect the profile to be cleared by itself upon reception of BYE (it will only happen for calls longer than 3 or 4 seconds from INVITE to BYE).
I do not see a reason why not enabling the unset_dlg_profile for request_route. Edit modules/dialog/dialog.c and set REQUEST_ROUTE for unset_dlg_profile in:
static cmd_export_t cmds[]
Then in: modules/dialog/dlg_profile.c, in function unset_dlg_profile replace line: if (dlg==NULL || route_type==REQUEST_ROUTE) {
with: if (dlg==NULL) {
Recompile, reinstall, do some tests and report it here. If all ok, we can enable it.
I tried that with the 1.4 branch and it works.
to summarize now:
- unset_dlg_profile works ok with the change in the source
- still there is not an auto-clear for very short calls
Is it right?
Hello, Daniel yes, that's correct.
I did a patch some days ago. Can you test it with 1.5 or trunk? http://lists.kamailio.org/pipermail/users/2009-April/022811.html
Thanks, Daniel
On Wed, Apr 15, 2009 at 5:28 PM, Daniel-Constantin Mierla
I did a patch some days ago. Can you test it with 1.5 or trunk? http://lists.kamailio.org/pipermail/users/2009-April/022811.html
I modified my cfg to run with trunk (rev. 5795) and verified presence of the problem reported by Alex (no insertion of dialogs in the profiles). I applied your patch and it solved the above problem.
But the problem of delayed auto-clear in short calls remains.
regard, takeshi
On 04/17/2009 05:55 AM, mayamatakeshi wrote:
On Wed, Apr 15, 2009 at 5:28 PM, Daniel-Constantin Mierla
I did a patch some days ago. Can you test it with 1.5 or trunk? http://lists.kamailio.org/pipermail/users/2009-April/022811.html
I modified my cfg to run with trunk (rev. 5795) and verified presence of the problem reported by Alex (no insertion of dialogs in the profiles). I applied your patch and it solved the above problem.
ok, thanks, then I will commit the patch.
But the problem of delayed auto-clear in short calls remains.
I will try to reproduce and see if I can get it.
Cheers, Daniel