|
@@ -58,11 +58,10 @@ Richard Good
|
|
5.11. db_mode (integer)
|
|
5.11. db_mode (integer)
|
|
5.12. db_update_period (integer)
|
|
5.12. db_update_period (integer)
|
|
5.13. db_fetch_rows (integer)
|
|
5.13. db_fetch_rows (integer)
|
|
- 5.14. table_name (string)
|
|
|
|
- 5.15. profiles_with_value (string)
|
|
|
|
- 5.16. profiles_no_value (string)
|
|
|
|
- 5.17. bridge_controller (string)
|
|
|
|
- 5.18. initial_cbs_inscript (string)
|
|
|
|
|
|
+ 5.14. profiles_with_value (string)
|
|
|
|
+ 5.15. profiles_no_value (string)
|
|
|
|
+ 5.16. bridge_controller (string)
|
|
|
|
+ 5.17. initial_cbs_inscript (string)
|
|
|
|
|
|
6. Functions
|
|
6. Functions
|
|
|
|
|
|
@@ -143,18 +142,22 @@ Richard Good
|
|
1.5. Set default_timeout parameter
|
|
1.5. Set default_timeout parameter
|
|
1.6. Set dlf_extra_hdrs parameter
|
|
1.6. Set dlf_extra_hdrs parameter
|
|
1.7. Set detect_spirals parameter
|
|
1.7. Set detect_spirals parameter
|
|
- 1.8. Set profiles_with_value parameter
|
|
|
|
- 1.9. Set profiles_no_value parameter
|
|
|
|
- 1.10. Set bridge_controller parameter
|
|
|
|
- 1.11. set_dlg_profile usage
|
|
|
|
- 1.12. unset_dlg_profile usage
|
|
|
|
- 1.13. is_in_profile usage
|
|
|
|
- 1.14. get_profile_size usage
|
|
|
|
- 1.15. dlg_isflagset usage
|
|
|
|
- 1.16. dlg_setflag usage
|
|
|
|
- 1.17. dlg_resetflag usage
|
|
|
|
- 1.18. dlg_terminate usage
|
|
|
|
- 1.19. dlg_get usage
|
|
|
|
|
|
+ 1.8. Set db_url parameter
|
|
|
|
+ 1.9. Set db_mode parameter
|
|
|
|
+ 1.10. Set db_update_period parameter
|
|
|
|
+ 1.11. Set db_fetch_rows parameter
|
|
|
|
+ 1.12. Set profiles_with_value parameter
|
|
|
|
+ 1.13. Set profiles_no_value parameter
|
|
|
|
+ 1.14. Set bridge_controller parameter
|
|
|
|
+ 1.15. set_dlg_profile usage
|
|
|
|
+ 1.16. unset_dlg_profile usage
|
|
|
|
+ 1.17. is_in_profile usage
|
|
|
|
+ 1.18. get_profile_size usage
|
|
|
|
+ 1.19. dlg_isflagset usage
|
|
|
|
+ 1.20. dlg_setflag usage
|
|
|
|
+ 1.21. dlg_resetflag usage
|
|
|
|
+ 1.22. dlg_terminate usage
|
|
|
|
+ 1.23. dlg_get usage
|
|
|
|
|
|
Chapter 1. Admin Guide
|
|
Chapter 1. Admin Guide
|
|
|
|
|
|
@@ -183,11 +186,10 @@ Chapter 1. Admin Guide
|
|
5.11. db_mode (integer)
|
|
5.11. db_mode (integer)
|
|
5.12. db_update_period (integer)
|
|
5.12. db_update_period (integer)
|
|
5.13. db_fetch_rows (integer)
|
|
5.13. db_fetch_rows (integer)
|
|
- 5.14. table_name (string)
|
|
|
|
- 5.15. profiles_with_value (string)
|
|
|
|
- 5.16. profiles_no_value (string)
|
|
|
|
- 5.17. bridge_controller (string)
|
|
|
|
- 5.18. initial_cbs_inscript (string)
|
|
|
|
|
|
+ 5.14. profiles_with_value (string)
|
|
|
|
+ 5.15. profiles_no_value (string)
|
|
|
|
+ 5.16. bridge_controller (string)
|
|
|
|
+ 5.17. initial_cbs_inscript (string)
|
|
|
|
|
|
6. Functions
|
|
6. Functions
|
|
|
|
|
|
@@ -327,11 +329,10 @@ Chapter 1. Admin Guide
|
|
5.11. db_mode (integer)
|
|
5.11. db_mode (integer)
|
|
5.12. db_update_period (integer)
|
|
5.12. db_update_period (integer)
|
|
5.13. db_fetch_rows (integer)
|
|
5.13. db_fetch_rows (integer)
|
|
- 5.14. table_name (string)
|
|
|
|
- 5.15. profiles_with_value (string)
|
|
|
|
- 5.16. profiles_no_value (string)
|
|
|
|
- 5.17. bridge_controller (string)
|
|
|
|
- 5.18. initial_cbs_inscript (string)
|
|
|
|
|
|
+ 5.14. profiles_with_value (string)
|
|
|
|
+ 5.15. profiles_no_value (string)
|
|
|
|
+ 5.16. bridge_controller (string)
|
|
|
|
+ 5.17. initial_cbs_inscript (string)
|
|
|
|
|
|
5.1. enable_stats (integer)
|
|
5.1. enable_stats (integer)
|
|
|
|
|
|
@@ -439,58 +440,100 @@ modparam("ims_dialog", "detect_spirals", 1)
|
|
|
|
|
|
5.10. db_url (string)
|
|
5.10. db_url (string)
|
|
|
|
|
|
- Db storage not yet supported by ims_dialog - this to be done in future.
|
|
|
|
|
|
+ In order to store information about dialogs in a database, a database
|
|
|
|
+ URL must be specified.
|
|
|
|
+
|
|
|
|
+ Default value is “mysql://kamailio:kamailiorw@localhost/kamailio”.
|
|
|
|
+
|
|
|
|
+ Example 1.8. Set db_url parameter
|
|
|
|
+ ...
|
|
|
|
+ modparam("ims_dialog", "db_url", "dbdriver://username:password@dbhost/dbname
|
|
|
|
+")
|
|
|
|
+ ...
|
|
|
|
|
|
5.11. db_mode (integer)
|
|
5.11. db_mode (integer)
|
|
|
|
|
|
- Db storage not yet supported by ims_dialog - this to be done in future.
|
|
|
|
|
|
+ This is the database mode to be used for dialog persistent storage.
|
|
|
|
+ * 0 - NO_DB - the memory content is not flushed into DB;
|
|
|
|
+ * 1 - REALTIME - any dialog information changes will be reflected
|
|
|
|
+ into the database immediately.
|
|
|
|
+ * 2 - DELAYED - the dialog information changes will be flushed into
|
|
|
|
+ DB periodically, based on a timer routine.
|
|
|
|
+ * 3 - SHUTDOWN - the dialog information will be flushed into DB only
|
|
|
|
+ at shutdown - no runtime updates.
|
|
|
|
+
|
|
|
|
+ Default value is “0”.
|
|
|
|
+
|
|
|
|
+ Example 1.9. Set db_mode parameter
|
|
|
|
+ ...
|
|
|
|
+ modparam("ims_dialog", "db_mode", 1)
|
|
|
|
+ ...
|
|
|
|
|
|
5.12. db_update_period (integer)
|
|
5.12. db_update_period (integer)
|
|
|
|
|
|
- Db storage not yet supported by ims_dialog - this to be done in future.
|
|
|
|
|
|
+ The interval (seconds) at which to update dialogs' information, if the
|
|
|
|
+ server is configured to store the dialog information at a given
|
|
|
|
+ interval. A too short interval will generate intensive database
|
|
|
|
+ operations, while an excessively long one will miss dialogs with a
|
|
|
|
+ short lifetime.
|
|
|
|
+
|
|
|
|
+ Default value is “60” seconds.
|
|
|
|
+
|
|
|
|
+ Example 1.10. Set db_update_period parameter
|
|
|
|
+ ...
|
|
|
|
+ modparam("ims_dialog", "db_update_period", 120)
|
|
|
|
+ ...
|
|
|
|
|
|
5.13. db_fetch_rows (integer)
|
|
5.13. db_fetch_rows (integer)
|
|
|
|
|
|
- Db storage not yet supported by ims_dialog - this to be done in future.
|
|
|
|
|
|
+ The number of the rows to be fetched at once from database when loading
|
|
|
|
+ the dialog records at startup from the database. This value can be used
|
|
|
|
+ to tune the load time at startup. For 1MB of private memory (default),
|
|
|
|
+ it should be below 400. The database driver must support the
|
|
|
|
+ fetch_result() capability. A value of 0 means the database fetch is not
|
|
|
|
+ limited.
|
|
|
|
|
|
-5.14. table_name (string)
|
|
|
|
|
|
+ Default value is “200”.
|
|
|
|
|
|
- Db storage not yet supported by ims_dialog - this to be done in future.
|
|
|
|
|
|
+ Example 1.11. Set db_fetch_rows parameter
|
|
|
|
+ ...
|
|
|
|
+ modparam("ims_dialog", "db_fetch_rows", 500)
|
|
|
|
+ ...
|
|
|
|
|
|
-5.15. profiles_with_value (string)
|
|
|
|
|
|
+5.14. profiles_with_value (string)
|
|
|
|
|
|
List of names for profiles with values.
|
|
List of names for profiles with values.
|
|
|
|
|
|
Default value is “empty”.
|
|
Default value is “empty”.
|
|
|
|
|
|
- Example 1.8. Set profiles_with_value parameter
|
|
|
|
|
|
+ Example 1.12. Set profiles_with_value parameter
|
|
...
|
|
...
|
|
modparam("ims_dialog", "profiles_with_value", "caller ; my_profile")
|
|
modparam("ims_dialog", "profiles_with_value", "caller ; my_profile")
|
|
...
|
|
...
|
|
|
|
|
|
-5.16. profiles_no_value (string)
|
|
|
|
|
|
+5.15. profiles_no_value (string)
|
|
|
|
|
|
List of names for profiles without values.
|
|
List of names for profiles without values.
|
|
|
|
|
|
Default value is “empty”.
|
|
Default value is “empty”.
|
|
|
|
|
|
- Example 1.9. Set profiles_no_value parameter
|
|
|
|
|
|
+ Example 1.13. Set profiles_no_value parameter
|
|
...
|
|
...
|
|
modparam("ims_dialog", "profiles_no_value", "inbound ; outbound")
|
|
modparam("ims_dialog", "profiles_no_value", "inbound ; outbound")
|
|
...
|
|
...
|
|
|
|
|
|
-5.17. bridge_controller (string)
|
|
|
|
|
|
+5.16. bridge_controller (string)
|
|
|
|
|
|
SIP address to be used in From header when initiating a call bridge.
|
|
SIP address to be used in From header when initiating a call bridge.
|
|
|
|
|
|
Default value is “sip:[email protected]”.
|
|
Default value is “sip:[email protected]”.
|
|
|
|
|
|
- Example 1.10. Set bridge_controller parameter
|
|
|
|
|
|
+ Example 1.14. Set bridge_controller parameter
|
|
...
|
|
...
|
|
modparam("ims_dialog", "bridge_controller", "sip:[email protected]")
|
|
modparam("ims_dialog", "bridge_controller", "sip:[email protected]")
|
|
...
|
|
...
|
|
|
|
|
|
-5.18. initial_cbs_inscript (string)
|
|
|
|
|
|
+5.17. initial_cbs_inscript (string)
|
|
|
|
|
|
This has been deprecated since dlg_manage has been removed.
|
|
This has been deprecated since dlg_manage has been removed.
|
|
|
|
|
|
@@ -526,7 +569,7 @@ modparam("ims_dialog", "bridge_controller", "sip:[email protected]")
|
|
This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, REPLY_ROUTE
|
|
This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, REPLY_ROUTE
|
|
and FAILURE_ROUTE.
|
|
and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.11. set_dlg_profile usage
|
|
|
|
|
|
+ Example 1.15. set_dlg_profile usage
|
|
...
|
|
...
|
|
set_dlg_profile("inbound_call");
|
|
set_dlg_profile("inbound_call");
|
|
set_dlg_profile("caller","$fu");
|
|
set_dlg_profile("caller","$fu");
|
|
@@ -545,7 +588,7 @@ set_dlg_profile("caller","$fu");
|
|
This function can be used from BRANCH_ROUTE, REPLY_ROUTE and
|
|
This function can be used from BRANCH_ROUTE, REPLY_ROUTE and
|
|
FAILURE_ROUTE.
|
|
FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.12. unset_dlg_profile usage
|
|
|
|
|
|
+ Example 1.16. unset_dlg_profile usage
|
|
...
|
|
...
|
|
unset_dlg_profile("inbound_call");
|
|
unset_dlg_profile("inbound_call");
|
|
unset_dlg_profile("caller","$fu");
|
|
unset_dlg_profile("caller","$fu");
|
|
@@ -568,7 +611,7 @@ unset_dlg_profile("caller","$fu");
|
|
This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, REPLY_ROUTE
|
|
This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, REPLY_ROUTE
|
|
and FAILURE_ROUTE.
|
|
and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.13. is_in_profile usage
|
|
|
|
|
|
+ Example 1.17. is_in_profile usage
|
|
...
|
|
...
|
|
if (is_in_profile("inbound_call")) {
|
|
if (is_in_profile("inbound_call")) {
|
|
log("this request belongs to an inbound call\n");
|
|
log("this request belongs to an inbound call\n");
|
|
@@ -597,7 +640,7 @@ if (is_in_profile("caller","XX")) {
|
|
This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, REPLY_ROUTE
|
|
This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, REPLY_ROUTE
|
|
and FAILURE_ROUTE.
|
|
and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.14. get_profile_size usage
|
|
|
|
|
|
+ Example 1.18. get_profile_size usage
|
|
...
|
|
...
|
|
if(get_profile_size("inbound_call","$avp(size)"))
|
|
if(get_profile_size("inbound_call","$avp(size)"))
|
|
xlog("currently there are $avp(size) inbound calls\n");
|
|
xlog("currently there are $avp(size) inbound calls\n");
|
|
@@ -616,7 +659,7 @@ if(get_profile_size("caller","$fu","$avp(size)"))
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.15. dlg_isflagset usage
|
|
|
|
|
|
+ Example 1.19. dlg_isflagset usage
|
|
...
|
|
...
|
|
if(dlg_isflagset("1"))
|
|
if(dlg_isflagset("1"))
|
|
{
|
|
{
|
|
@@ -634,7 +677,7 @@ if(dlg_isflagset("1"))
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.16. dlg_setflag usage
|
|
|
|
|
|
+ Example 1.20. dlg_setflag usage
|
|
...
|
|
...
|
|
dlg_setflag("1");
|
|
dlg_setflag("1");
|
|
...
|
|
...
|
|
@@ -649,7 +692,7 @@ dlg_setflag("1");
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.17. dlg_resetflag usage
|
|
|
|
|
|
+ Example 1.21. dlg_resetflag usage
|
|
...
|
|
...
|
|
dlg_resetflag("1");
|
|
dlg_resetflag("1");
|
|
...
|
|
...
|
|
@@ -667,7 +710,7 @@ dlg_resetflag("1");
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.18. dlg_terminate usage
|
|
|
|
|
|
+ Example 1.22. dlg_terminate usage
|
|
...
|
|
...
|
|
dlg_terminate("all", "Insufficient QoS");
|
|
dlg_terminate("all", "Insufficient QoS");
|
|
...
|
|
...
|
|
@@ -701,7 +744,7 @@ dlg_terminate("all", "Insufficient QoS");
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
ONREPLY_ROUTE and FAILURE_ROUTE.
|
|
|
|
|
|
- Example 1.19. dlg_get usage
|
|
|
|
|
|
+ Example 1.23. dlg_get usage
|
|
...
|
|
...
|
|
if(dlg_get("abcdef", "123", "456"))
|
|
if(dlg_get("abcdef", "123", "456"))
|
|
{
|
|
{
|