Module: kamailio
Branch: master
Commit: b3c301e1c99eb90df1533724442aef7991cd36bc
URL: https://github.com/kamailio/kamailio/commit/b3c301e1c99eb90df1533724442aef7…
Author: Stefan Mititelu <stefan-cristian.mititelu(a)1and1.ro>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2022-03-10T10:46:04+01:00
uac: trigger event route for failure and timeout
...when $uac_req(evroute) = 2
---
Modified: src/modules/uac/doc/uac_admin.xml
Modified: src/modules/uac/uac_send.c
---
Diff: https://github.com/kamailio/kamailio/commit/b3c301e1c99eb90df1533724442aef7…
Patch: https://github.com/kamailio/kamailio/commit/b3c301e1c99eb90df1533724442aef7…
---
diff --git a/src/modules/uac/doc/uac_admin.xml b/src/modules/uac/doc/uac_admin.xml
index 188d1b913e..3ce59d3e11 100644
--- a/src/modules/uac/doc/uac_admin.xml
+++ b/src/modules/uac/doc/uac_admin.xml
@@ -1241,11 +1241,20 @@ failure_route[REMOTE_AUTH] {
<function moreinfo="none">event_route[uac:reply]</function>
</title>
<para>
- Event route executed for the final reply of the branch for the
- request sent with uac_req_send(). The associated $uac_req(evroute)
- has to be set to 1. If the request is challenged for authentication
+ The associated $uac_req(evroute) can have either of the following values:
+ <itemizedlist>
+ <listitem><para>
+ <emphasis>1</emphasis> : event route executed for the <emphasis>final reply</emphasis> of the branch for the
+ request sent with uac_req_send(). If the request is challenged for authentication
with 401/407, then the event_route is executed twice, first for
401/407 and second for final reply of the transaction.
+ </para></listitem>
+ <listitem><para>
+ <emphasis>2</emphasis> : event route executed for <emphasis>failure</emphasis> of the branch for the
+ request sent with uac_req_send(). event route will execute also for timeout.
+ In order for this to work, please also enable TM module "enable_uac_fr" modparam.
+ </para></listitem>
+ </itemizedlist>
</para>
<example>
<title><function>event_route[uac:reply]</function> usage</title>
diff --git a/src/modules/uac/uac_send.c b/src/modules/uac/uac_send.c
index 43767c7804..887dc1b4a4 100644
--- a/src/modules/uac/uac_send.c
+++ b/src/modules/uac/uac_send.c
@@ -886,9 +886,21 @@ int uac_req_send(void)
return -1;
}
- uac_r.cb_flags = TMCB_LOCAL_COMPLETED;
- /* Callback function */
- uac_r.cb = uac_send_tm_callback;
+ switch (_uac_req.evroute)
+ {
+
+ case 2:
+ uac_r.cb_flags = TMCB_ON_FAILURE;
+ /* Callback function */
+ uac_r.cb = uac_resend_tm_callback;
+ break;
+ case 1:
+ default:
+ uac_r.cb_flags = TMCB_LOCAL_COMPLETED;
+ /* Callback function */
+ uac_r.cb = uac_send_tm_callback;
+ break;
+ }
/* Callback parameter */
uac_r.cbp = (void*)tp;
}
…tional response sent by callee
(INVITE,180 and BYE from callee instead CANCEL)
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [x] PR should be backported to stable branches
- [x] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
topos: handle BYE sent by callee during non connected call with provitional response sent by callee (INVITE,180 and BYE from callee instead CANCEL)
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3046
-- Commit Summary --
* topos: handle BYE sent by callee during non connected call with provitional response sent by callee
-- File Changes --
M src/modules/topos/tps_msg.c (5)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3046.patchhttps://github.com/kamailio/kamailio/pull/3046.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3046
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3046(a)github.com>
Hello,
Kamailio SIP Server v5.4.8 stable release is out.
This is a maintenance release of the latest stable branch, 5.4, that
includes fixes since the release of v5.4.7. There is no change to
database schema or configuration language structure that you have to do
on previous installations of v5.4.x. Deployments running previous v5.4.x
versions are strongly recommended to be upgraded to v5.4.8.
Note that 5.4 is the second last stable branch, still officially maintained
by Kamailio development team. The latest stable branch is 5.5, with
v5.5.4 being release out of it.
For more details about version 5.4.8 (including links and guidelines to
download the tarball or from GIT repository), visit:
* https://www.kamailio.org/w/2022/03/kamailio-v5-4-8-released/
RPM, Debian/Ubuntu packages will be available soon as well.
Many thanks to all contributing and using Kamailio!
Cheers,
Daniel
--
Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio Advanced Training - Online
March 28-31, 2022 (Europe Timezone)
* https://www.asipto.com/sw/kamailio-advanced-training-online/