|
@@ -112,6 +112,7 @@ Julien Klingenmeyer
|
|
|
6.60. h_id_start (int)
|
|
|
6.61. h_id_step (int)
|
|
|
6.62. keep_proxy_rr (string)
|
|
|
+ 6.63. update_all_states (string)
|
|
|
|
|
|
7. Functions
|
|
|
|
|
@@ -253,27 +254,28 @@ Julien Klingenmeyer
|
|
|
1.60. Set h_id_start parameter
|
|
|
1.61. Set h_id_step parameter
|
|
|
1.62. Set dlg_keep_proxy_rr parameter
|
|
|
- 1.63. set_dlg_profile usage
|
|
|
- 1.64. unset_dlg_profile usage
|
|
|
- 1.65. is_in_profile usage
|
|
|
- 1.66. get_profile_size usage
|
|
|
- 1.67. dlg_isflagset usage
|
|
|
- 1.68. dlg_setflag usage
|
|
|
- 1.69. dlg_resetflag usage
|
|
|
- 1.70. dlg_bye usage
|
|
|
- 1.71. dlg_refer usage
|
|
|
- 1.72. dlg_manage usage
|
|
|
- 1.73. dlg_bridge usage
|
|
|
- 1.74. dlg_get usage
|
|
|
- 1.75. is_known_dlg() usage
|
|
|
- 1.76. dlg_set_timeout usage
|
|
|
- 1.77. dlg_set_timeout_by_profile usage
|
|
|
- 1.78. dlg_set_property usage
|
|
|
- 1.79. dlg_remote_profile usage
|
|
|
- 1.80. dlg_set_ruri() usage
|
|
|
- 1.81. dlg_db_load_callid() usage
|
|
|
- 1.82. dlg_db_load_extra() usage
|
|
|
- 1.83. dlg_reset_property usage
|
|
|
+ 1.63. Set update_all_states parameter
|
|
|
+ 1.64. set_dlg_profile usage
|
|
|
+ 1.65. unset_dlg_profile usage
|
|
|
+ 1.66. is_in_profile usage
|
|
|
+ 1.67. get_profile_size usage
|
|
|
+ 1.68. dlg_isflagset usage
|
|
|
+ 1.69. dlg_setflag usage
|
|
|
+ 1.70. dlg_resetflag usage
|
|
|
+ 1.71. dlg_bye usage
|
|
|
+ 1.72. dlg_refer usage
|
|
|
+ 1.73. dlg_manage usage
|
|
|
+ 1.74. dlg_bridge usage
|
|
|
+ 1.75. dlg_get usage
|
|
|
+ 1.76. is_known_dlg() usage
|
|
|
+ 1.77. dlg_set_timeout usage
|
|
|
+ 1.78. dlg_set_timeout_by_profile usage
|
|
|
+ 1.79. dlg_set_property usage
|
|
|
+ 1.80. dlg_remote_profile usage
|
|
|
+ 1.81. dlg_set_ruri() usage
|
|
|
+ 1.82. dlg_db_load_callid() usage
|
|
|
+ 1.83. dlg_db_load_extra() usage
|
|
|
+ 1.84. dlg_reset_property usage
|
|
|
|
|
|
Chapter 1. Admin Guide
|
|
|
|
|
@@ -352,6 +354,7 @@ Chapter 1. Admin Guide
|
|
|
6.60. h_id_start (int)
|
|
|
6.61. h_id_step (int)
|
|
|
6.62. keep_proxy_rr (string)
|
|
|
+ 6.63. update_all_states (string)
|
|
|
|
|
|
7. Functions
|
|
|
|
|
@@ -468,8 +471,8 @@ Chapter 1. Admin Guide
|
|
|
* 4 : Confirmed dialog (active call)
|
|
|
* 5 : Deleted dialog
|
|
|
|
|
|
- The early and deleted dialog states are not updated in database
|
|
|
- storage.
|
|
|
+ The early and deleted dialog states are updated in database storage,
|
|
|
+ unless deactivated with the update_all_states parameter.
|
|
|
|
|
|
4. Dialog profiling
|
|
|
|
|
@@ -583,6 +586,7 @@ Chapter 1. Admin Guide
|
|
|
6.60. h_id_start (int)
|
|
|
6.61. h_id_step (int)
|
|
|
6.62. keep_proxy_rr (string)
|
|
|
+ 6.63. update_all_states (string)
|
|
|
|
|
|
6.1. enable_stats (integer)
|
|
|
|
|
@@ -1435,6 +1439,24 @@ modparam("dialog", "h_id_step", 10)
|
|
|
modparam("dialog", "keep_proxy_rr", 1)
|
|
|
...
|
|
|
|
|
|
+6.63. update_all_states (string)
|
|
|
+
|
|
|
+ When enabled the dialog modules will also synchronize the early and
|
|
|
+ deleted dialog states to the database. This is useful in failover
|
|
|
+ situations, but of course will generate more load to the database from
|
|
|
+ this module.
|
|
|
+
|
|
|
+ Valid values are:
|
|
|
+ * 0 - Don't synchronize early and deleted dialogs
|
|
|
+ * 1 - Synchronize early and deleted dialogs
|
|
|
+
|
|
|
+ Default value is “1”.
|
|
|
+
|
|
|
+ Example 1.63. Set update_all_states parameter
|
|
|
+...
|
|
|
+modparam("dialog", "update_all_states", 1)
|
|
|
+...
|
|
|
+
|
|
|
7. Functions
|
|
|
|
|
|
7.1. set_dlg_profile(profile,[value])
|
|
@@ -1475,7 +1497,7 @@ modparam("dialog", "keep_proxy_rr", 1)
|
|
|
This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, REPLY_ROUTE
|
|
|
and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.63. set_dlg_profile usage
|
|
|
+ Example 1.64. set_dlg_profile usage
|
|
|
...
|
|
|
set_dlg_profile("inbound_call");
|
|
|
set_dlg_profile("caller","$fu");
|
|
@@ -1494,7 +1516,7 @@ set_dlg_profile("caller","$fu");
|
|
|
This function can be used from BRANCH_ROUTE, REPLY_ROUTE and
|
|
|
FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.64. unset_dlg_profile usage
|
|
|
+ Example 1.65. unset_dlg_profile usage
|
|
|
...
|
|
|
unset_dlg_profile("inbound_call");
|
|
|
unset_dlg_profile("caller","$fu");
|
|
@@ -1517,7 +1539,7 @@ unset_dlg_profile("caller","$fu");
|
|
|
This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, REPLY_ROUTE
|
|
|
and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.65. is_in_profile usage
|
|
|
+ Example 1.66. is_in_profile usage
|
|
|
...
|
|
|
if (is_in_profile("inbound_call")) {
|
|
|
log("this request belongs to a inbound call\n");
|
|
@@ -1547,7 +1569,7 @@ if (is_in_profile("caller","XX")) {
|
|
|
This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, REPLY_ROUTE
|
|
|
and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.66. get_profile_size usage
|
|
|
+ Example 1.67. get_profile_size usage
|
|
|
...
|
|
|
if(get_profile_size("inbound_call","$avp(size)"))
|
|
|
xlog("currently there are $avp(size) inbound calls\n");
|
|
@@ -1566,7 +1588,7 @@ if(get_profile_size("caller","$fu","$avp(size)"))
|
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.67. dlg_isflagset usage
|
|
|
+ Example 1.68. dlg_isflagset usage
|
|
|
...
|
|
|
if(dlg_isflagset("1"))
|
|
|
{
|
|
@@ -1584,7 +1606,7 @@ if(dlg_isflagset("1"))
|
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.68. dlg_setflag usage
|
|
|
+ Example 1.69. dlg_setflag usage
|
|
|
...
|
|
|
dlg_setflag("1");
|
|
|
...
|
|
@@ -1599,7 +1621,7 @@ dlg_setflag("1");
|
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.69. dlg_resetflag usage
|
|
|
+ Example 1.70. dlg_resetflag usage
|
|
|
...
|
|
|
redlg_setflag("1");
|
|
|
...
|
|
@@ -1614,7 +1636,7 @@ redlg_setflag("1");
|
|
|
|
|
|
This function can be used from ANY_ROUTE.
|
|
|
|
|
|
- Example 1.70. dlg_bye usage
|
|
|
+ Example 1.71. dlg_bye usage
|
|
|
...
|
|
|
dlg_bye("all");
|
|
|
...
|
|
@@ -1631,7 +1653,7 @@ dlg_bye("all");
|
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.71. dlg_refer usage
|
|
|
+ Example 1.72. dlg_refer usage
|
|
|
...
|
|
|
dlg_refer("caller", "sip:[email protected]");
|
|
|
...
|
|
@@ -1644,7 +1666,7 @@ dlg_refer("caller", "sip:[email protected]");
|
|
|
|
|
|
This function can be used from REQUEST_ROUTE.
|
|
|
|
|
|
- Example 1.72. dlg_manage usage
|
|
|
+ Example 1.73. dlg_manage usage
|
|
|
...
|
|
|
modparam("dialog", "default_timeout", 100)
|
|
|
...
|
|
@@ -1672,7 +1694,7 @@ request_route {
|
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.73. dlg_bridge usage
|
|
|
+ Example 1.74. dlg_bridge usage
|
|
|
...
|
|
|
dlg_bridge("sip:[email protected]", "sip:[email protected]",
|
|
|
"sip:kamailio.org:5080");
|
|
@@ -1691,7 +1713,7 @@ dlg_bridge("sip:[email protected]", "sip:[email protected]",
|
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.74. dlg_get usage
|
|
|
+ Example 1.75. dlg_get usage
|
|
|
...
|
|
|
if(dlg_get("abcdef", "123", "456"))
|
|
|
{
|
|
@@ -1715,7 +1737,7 @@ if(dlg_get("abcdef", "123", "456"))
|
|
|
This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, REPLY_ROUTE
|
|
|
and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.75. is_known_dlg() usage
|
|
|
+ Example 1.76. is_known_dlg() usage
|
|
|
...
|
|
|
if(!uri == myself) {
|
|
|
if(is_known_dlg()) {
|
|
@@ -1739,7 +1761,7 @@ if(!uri == myself) {
|
|
|
|
|
|
This function can be used from ANY_ROUTE.
|
|
|
|
|
|
- Example 1.76. dlg_set_timeout usage
|
|
|
+ Example 1.77. dlg_set_timeout usage
|
|
|
...
|
|
|
if(dlg_set_timeout("180", "123", "456"))
|
|
|
{
|
|
@@ -1761,7 +1783,7 @@ if(dlg_set_timeout("180", "123", "456"))
|
|
|
|
|
|
This function can be used from ANY_ROUTE.
|
|
|
|
|
|
- Example 1.77. dlg_set_timeout_by_profile usage
|
|
|
+ Example 1.78. dlg_set_timeout_by_profile usage
|
|
|
...
|
|
|
# All dialogs belonging to user abc123 (tracked via set_dlg_profile())
|
|
|
# will be timed out in 3 seconds.
|
|
@@ -1793,7 +1815,7 @@ dlg_set_timeout_by_profile("users", "abc123", "3");
|
|
|
|
|
|
This function can be used from ANY_ROUTE.
|
|
|
|
|
|
- Example 1.78. dlg_set_property usage
|
|
|
+ Example 1.79. dlg_set_property usage
|
|
|
...
|
|
|
dlg_set_property("ka-src");
|
|
|
dlg_set_property("ka-dst");
|
|
@@ -1821,7 +1843,7 @@ dlg_set_property("timeout-noreset");
|
|
|
|
|
|
This function can be used from ANY_ROUTE.
|
|
|
|
|
|
- Example 1.79. dlg_remote_profile usage
|
|
|
+ Example 1.80. dlg_remote_profile usage
|
|
|
...
|
|
|
$var(exp) = 3600 + $Ts;
|
|
|
dlg_remote_profile("add", "caller", "test", "$sruid", "$var(exp)");
|
|
@@ -1834,7 +1856,7 @@ dlg_remote_profile("add", "caller", "test", "$sruid", "$var(exp)");
|
|
|
|
|
|
This function can be used from ANY_ROUTE.
|
|
|
|
|
|
- Example 1.80. dlg_set_ruri() usage
|
|
|
+ Example 1.81. dlg_set_ruri() usage
|
|
|
...
|
|
|
if(has_totag() and is_present_hf("Route") and uri==myself ) {
|
|
|
if(dlg_set_ruri()) {
|
|
@@ -1850,7 +1872,7 @@ if(has_totag() and is_present_hf("Route") and uri==myself ) {
|
|
|
|
|
|
This function can be used from ANY_ROUTE.
|
|
|
|
|
|
- Example 1.81. dlg_db_load_callid() usage
|
|
|
+ Example 1.82. dlg_db_load_callid() usage
|
|
|
...
|
|
|
if(has_totag()) {
|
|
|
if(!is_known_dlg()) {
|
|
@@ -1869,7 +1891,7 @@ if(has_totag()) {
|
|
|
|
|
|
This function can be used from ANY_ROUTE.
|
|
|
|
|
|
- Example 1.82. dlg_db_load_extra() usage
|
|
|
+ Example 1.83. dlg_db_load_extra() usage
|
|
|
...
|
|
|
if(has_totag()) {
|
|
|
if(!is_known_dlg()) {
|
|
@@ -1895,7 +1917,7 @@ if(has_totag()) {
|
|
|
|
|
|
This function can be used from ANY_ROUTE.
|
|
|
|
|
|
- Example 1.83. dlg_reset_property usage
|
|
|
+ Example 1.84. dlg_reset_property usage
|
|
|
...
|
|
|
dlg_reset_property("ka-src");
|
|
|
dlg_reset_property("ka-dst");
|