Kaynağa Gözat

dialog: documented send_bye parameter

Daniel-Constantin Mierla 13 yıl önce
ebeveyn
işleme
b38a0047ad
2 değiştirilmiş dosya ile 167 ekleme ve 129 silme
  1. 143 127
      modules_k/dialog/README
  2. 24 2
      modules_k/dialog/doc/dialog_admin.xml

+ 143 - 127
modules_k/dialog/README

@@ -22,9 +22,9 @@ Alex Balashov
 
    <[email protected]>
 
-   Copyright © 2006 Voice Sistem SRL
+   Copyright © 2006 Voice Sistem SRL
 
-   Copyright © 2011 Carsten Bock, http://www.ng-voice.com
+   Copyright © 2011 Carsten Bock, http://www.ng-voice.com
      __________________________________________________________________
 
    Table of Contents
@@ -83,7 +83,8 @@ Alex Balashov
               5.40. profiles_with_value (string)
               5.41. profiles_no_value (string)
               5.42. bridge_controller (string)
-              5.43. initial_cbs_inscript (string)
+              5.43. initial_cbs_inscript (int)
+              5.44. send_bye (int)
 
         6. Functions
 
@@ -194,19 +195,20 @@ Alex Balashov
    1.41. Set profiles_no_value parameter
    1.42. Set bridge_controller parameter
    1.43. Set initial_cbs_inscript parameter
-   1.44. set_dlg_profile usage
-   1.45. unset_dlg_profile usage
-   1.46. is_in_profile usage
-   1.47. get_profile_size usage
-   1.48. dlg_isflagset usage
-   1.49. dlg_setflag usage
-   1.50. dlg_resetflag usage
-   1.51. dlg_bye usage
-   1.52. dlg_refer usage
-   1.53. dlg_manage usage
-   1.54. dlg_bridge usage
-   1.55. dlg_get usage
-   1.56. is_known_dlg() usage
+   1.44. Set send_bye parameter
+   1.45. set_dlg_profile usage
+   1.46. unset_dlg_profile usage
+   1.47. is_in_profile usage
+   1.48. get_profile_size usage
+   1.49. dlg_isflagset usage
+   1.50. dlg_setflag usage
+   1.51. dlg_resetflag usage
+   1.52. dlg_bye usage
+   1.53. dlg_refer usage
+   1.54. dlg_manage usage
+   1.55. dlg_bridge usage
+   1.56. dlg_get usage
+   1.57. is_known_dlg() usage
 
 Chapter 1. Admin Guide
 
@@ -264,7 +266,8 @@ Chapter 1. Admin Guide
         5.40. profiles_with_value (string)
         5.41. profiles_no_value (string)
         5.42. bridge_controller (string)
-        5.43. initial_cbs_inscript (string)
+        5.43. initial_cbs_inscript (int)
+        5.44. send_bye (int)
 
    6. Functions
 
@@ -348,14 +351,14 @@ Chapter 1. Admin Guide
 2. How it works
 
    To create the dialog associated with an initial request, the flag
-   “dlg_flag� (Section 5.4, “dlg_flag (integer)�) must be set before
+   "dlg_flag" (Section 5.4, "dlg_flag (integer)") must be set before
    creating the corresponding transaction.
 
-   The dialog is automatically destroyed when a “BYE� is received. In case
-   of no “BYE�, the dialog lifetime is controlled via the default timeout
-   (see “default_timeout� - Section 5.6, “default_timeout (integer)�) and
-   custom timeout (see “timeout_avp� - Section 5.5, “timeout_avp
-   (string)�). The dialog timeout is reset each time a sequential request
+   The dialog is automatically destroyed when a "BYE" is received. In case
+   of no "BYE", the dialog lifetime is controlled via the default timeout
+   (see "default_timeout" - Section 5.6, "default_timeout (integer)") and
+   custom timeout (see "timeout_avp" - Section 5.5, "timeout_avp
+   (string)"). The dialog timeout is reset each time a sequential request
    is processed.
 
 3. Dialog profiling
@@ -449,7 +452,8 @@ Chapter 1. Admin Guide
    5.40. profiles_with_value (string)
    5.41. profiles_no_value (string)
    5.42. bridge_controller (string)
-   5.43. initial_cbs_inscript (string)
+   5.43. initial_cbs_inscript (int)
+   5.44. send_bye (int)
 
 5.1. enable_stats (integer)
 
@@ -457,7 +461,7 @@ Chapter 1. Admin Guide
    variables, the module provide information about the dialog processing.
    Set it to zero to disable or to non-zero to enable it.
 
-   Default value is “1 (enabled)�.
+   Default value is "1 (enabled)".
 
    Example 1.1. Set enable_stats parameter
 ...
@@ -475,7 +479,7 @@ modparam("dialog", "enable_stats", 0)
    not take place. If you really want to modify the hash_size, you must
    delete all table's rows before restarting the server.
 
-   Default value is “4096�.
+   Default value is "4096".
 
    Example 1.2. Set hash_size parameter
 ...
@@ -488,7 +492,7 @@ modparam("dialog", "hash_size", 1024)
    is used for the fast matching of sequential requests to tracked
    dialogs.
 
-   Default value is “did�.
+   Default value is "did".
 
    Example 1.3. Set rr_param parameter
 ...
@@ -500,7 +504,7 @@ modparam("dialog", "rr_param", "xyz")
    Flag to be used for marking if a dialog should be constructed for the
    current request (this make sense only for initial requests).
 
-   Default value is “none�.
+   Default value is "none".
 
    Example 1.4. Set dlg_flag parameter
 ...
@@ -513,7 +517,7 @@ modparam("dialog", "dlg_flag", 4)
    seconds) for the dialog. It may be used only in a request (initial or
    sequential) context.
 
-   Default value is “none�.
+   Default value is "none".
 
    Example 1.5. Set timeout_avp parameter
 ...
@@ -525,7 +529,7 @@ modparam("dialog", "timeout_avp", "$avp(i:10)")
    The default dialog timeout (in seconds), in the absence of a custom
    value provided in an AVP.
 
-   Default value is “43200 (12 hours)�.
+   Default value is "43200 (12 hours)".
 
    Example 1.6. Set default_timeout parameter
 ...
@@ -537,7 +541,7 @@ modparam("dialog", "default_timeout", 21600)
    A string containing the extra headers (full format, with EOH) to be
    added to requests generated locally by the module (like BYEs).
 
-   Default value is “NULL�.
+   Default value is "NULL".
 
    Example 1.7. Set dlf_extra_hdrs parameter
 ...
@@ -558,7 +562,7 @@ modparam("dialog", "dlg_extra_hdrs", "Hint: credit expired\r\n")
      * 2 - DID_NONE - the match is done exclusively based on SIP elements;
        no DID information is added in RR.
 
-   Default value is “0 (DID_ONLY)�.
+   Default value is "0 (DID_ONLY)".
 
    Example 1.8. Set dlg_match_mode parameter
 ...
@@ -587,7 +591,7 @@ modparam("dialog", "detect_spirals", 1)
    If you want to store the information about the dialogs in a database, a
    database URL must be specified.
 
-   Default value is “mysql://openser:openserrw@localhost/openser�.
+   Default value is "mysql://openser:openserrw@localhost/openser".
 
    Example 1.10. Set db_url parameter
 ...
@@ -608,7 +612,7 @@ modparam("dialog", "db_url", "dbdriver://username:password@dbhost/dbname")
      * 3 - SHUTDOWN - the dialog information will be flushed into DB only
        at shutdown - no runtime updates.
 
-   Default value is “0�.
+   Default value is "0".
 
    Example 1.11. Set db_mode parameter
 ...
@@ -622,7 +626,7 @@ modparam("dialog", "db_mode", 1)
    interval will generate intensive database operations, while an
    excessively long one will miss dialogs with a short lifetime.
 
-   Default value is “60�.
+   Default value is "60".
 
    Example 1.12. Set db_update_period parameter
 ...
@@ -638,7 +642,7 @@ modparam("dialog", "db_update_period", 120)
    fetch_result() capability. A value of 0 means the functionality is
    disabled.
 
-   Default value is “200�.
+   Default value is "200".
 
    Example 1.13. Set db_fetch_rows parameter
 ...
@@ -650,7 +654,7 @@ modparam("dialog", "db_fetch_rows", 500)
    If you want to store the information about the dialogs in a database a
    table name must be specified.
 
-   Default value is “dialog�.
+   Default value is "dialog".
 
    Example 1.14. Set table_name parameter
 ...
@@ -661,7 +665,7 @@ modparam("dialog", "table_name", "my_dialog")
 
    The column name in the database to store the dialogs' callid.
 
-   Default value is “callid�.
+   Default value is "callid".
 
    Example 1.15. Set callid_column parameter
 ...
@@ -672,7 +676,7 @@ modparam("dialog", "callid_column", "callid_c_name")
 
    The column name in the database to store the caller's sip address.
 
-   Default value is “from_uri�.
+   Default value is "from_uri".
 
    Example 1.16. Set from_uri_column parameter
 ...
@@ -684,7 +688,7 @@ modparam("dialog", "from_uri_column", "from_uri_c_name")
    The column name in the database to store the From tag from the INVITE
    request.
 
-   Default value is “from_tag�.
+   Default value is "from_tag".
 
    Example 1.17. Set from_tag_column parameter
 ...
@@ -695,7 +699,7 @@ modparam("dialog", "from_tag_column", "from_tag_c_name")
 
    The column name in the database to store the callee's sip address.
 
-   Default value is “to_uri�.
+   Default value is "to_uri".
 
    Example 1.18. Set to_uri_column parameter
 ...
@@ -707,7 +711,7 @@ modparam("dialog", "to_uri_column", "to_uri_c_name")
    The column name in the database to store the To tag from the 200 OK
    response to the INVITE request, if present.
 
-   Default value is “to_tag�.
+   Default value is "to_tag".
 
    Example 1.19. Set to_tag_column parameter
 ...
@@ -718,7 +722,7 @@ modparam("dialog", "to_tag_column", "to_tag_c_name")
 
    The column name in the database to store the cseq from caller side.
 
-   Default value is “caller_cseq�.
+   Default value is "caller_cseq".
 
    Example 1.20. Set caller_cseq_column parameter
 ...
@@ -729,7 +733,7 @@ modparam("dialog", "caller_cseq_column", "column_name")
 
    The column name in the database to store the cseq from callee side.
 
-   Default value is “callee_cseq�.
+   Default value is "callee_cseq".
 
    Example 1.21. Set callee_cseq_column parameter
 ...
@@ -741,7 +745,7 @@ modparam("dialog", "callee_cseq_column", "column_name")
    The column name in the database to store the route records from caller
    side (proxy to caller).
 
-   Default value is “caller_route_set�.
+   Default value is "caller_route_set".
 
    Example 1.22. Set caller_route_column parameter
 ...
@@ -753,7 +757,7 @@ modparam("dialog", "caller_route_column", "column_name")
    The column name in the database to store the route records from callee
    side (proxy to callee).
 
-   Default value is “callee_route_set�.
+   Default value is "callee_route_set".
 
    Example 1.23. Set to_route_column parameter
 ...
@@ -764,7 +768,7 @@ modparam("dialog", "to_route_column", "column_name")
 
    The column name in the database to store the caller's contact uri.
 
-   Default value is “from_contact�.
+   Default value is "from_contact".
 
    Example 1.24. Set caller_contact_column parameter
 ...
@@ -775,7 +779,7 @@ modparam("dialog", "caller_contact_column", "column_name")
 
    The column name in the database to store the callee's contact uri.
 
-   Default value is “callee_contact�.
+   Default value is "callee_contact".
 
    Example 1.25. Set callee_contact_column parameter
 ...
@@ -787,7 +791,7 @@ modparam("dialog", "callee_contact_column", "column_name")
    The column name in the database to store the information about the
    local interface receiving the traffic from caller.
 
-   Default value is “caller_sock�.
+   Default value is "caller_sock".
 
    Example 1.26. Set caller_sock_column parameter
 ...
@@ -799,7 +803,7 @@ modparam("dialog", "caller_sock_column", "column_name")
    The column name in the database to store information about the local
    interface receiving the traffic from callee.
 
-   Default value is “callee_contact�.
+   Default value is "callee_contact".
 
    Example 1.27. Set callee_sock_column parameter
 ...
@@ -811,7 +815,7 @@ modparam("dialog", "callee_sock_column", "column_name")
    The column name in the database to store the dialogs' hash id
    information.
 
-   Default value is “hash_id�.
+   Default value is "hash_id".
 
    Example 1.28. Set h_id_column parameter
 ...
@@ -823,7 +827,7 @@ modparam("dialog", "h_id_column", "hash_id_c_name")
    The column name in the database to store the dialogs' hash entry
    information.
 
-   Default value is “hash_entry�.
+   Default value is "hash_entry".
 
    Example 1.29. Set h_entry_column parameter
 ...
@@ -835,7 +839,7 @@ modparam("dialog", "h_entry_column", "h_entry_c_name")
    The column name in the database to store the dialogs' state
    information.
 
-   Default value is “state�.
+   Default value is "state".
 
    Example 1.30. Set state_column parameter
 ...
@@ -847,7 +851,7 @@ modparam("dialog", "state_column", "state_c_name")
    The column name in the database to store the dialogs' start time
    information.
 
-   Default value is “start_time�.
+   Default value is "start_time".
 
    Example 1.31. Set start_time_column parameter
 ...
@@ -858,7 +862,7 @@ modparam("dialog", "start_time_column", "start_time_c_name")
 
    The column name in the database to store the dialogs' timeout.
 
-   Default value is “timeout�.
+   Default value is "timeout".
 
    Example 1.32. Set timeout_column parameter
 ...
@@ -869,7 +873,7 @@ modparam("dialog", "timeout_column", "timeout_c_name")
 
    The column name in the database to store the script flags.
 
-   Default value is “sflags�.
+   Default value is "sflags".
 
    Example 1.33. Set sflags_column parameter
 ...
@@ -881,7 +885,7 @@ modparam("dialog", "sflags_column", "s_flags")
    The column name in the database to store the index of the route to be
    executed at timeout.
 
-   Default value is “toroute�.
+   Default value is "toroute".
 
    Example 1.34. Set toroute_column parameter
 ...
@@ -893,7 +897,7 @@ modparam("dialog", "toroute_column", "timeout_route")
    If you want to store the variables for a dialog in a database a table
    name must be specified.
 
-   Default value is “dialog_vars�.
+   Default value is "dialog_vars".
 
    Example 1.35. Set vars_table_name parameter
 ...
@@ -905,7 +909,7 @@ modparam("dialog", "vars_table_name", "my_dialog_vars")
    The column name in the database to store the dialogs' hash id
    information (as a reference to the dialog table).
 
-   Default value is “hash_id�.
+   Default value is "hash_id".
 
    Example 1.36. Set vars_h_id_column parameter
 ...
@@ -917,7 +921,7 @@ modparam("dialog", "vars_h_id_column", "vars_h_id_name")
    The column name in the database to store the dialogs' hash entry
    information (as a reference to the dialog table).
 
-   Default value is “hash_entry�.
+   Default value is "hash_entry".
 
    Example 1.37. Set vars_h_entry_column parameter
 ...
@@ -928,7 +932,7 @@ modparam("dialog", "vars_h_entry_column", "vars_h_entry_name")
 
    The column name in the database to store the keys of a variable.
 
-   Default value is “dialog_key�.
+   Default value is "dialog_key".
 
    Example 1.38. Set vars_key_column parameter
 ...
@@ -939,7 +943,7 @@ modparam("dialog", "vars_key_column", "vars_key_name")
 
    The column name in the database to store the keys of a variable.
 
-   Default value is “dialog_value�.
+   Default value is "dialog_value".
 
    Example 1.39. Set vars_value_column parameter
 ...
@@ -950,7 +954,7 @@ modparam("dialog", "vars_value_column", "vars_value_name")
 
    List of names for profiles with values.
 
-   Default value is “empty�.
+   Default value is "empty".
 
    Example 1.40. Set profiles_with_value parameter
 ...
@@ -961,7 +965,7 @@ modparam("dialog", "profiles_with_value", "caller ; my_profile")
 
    List of names for profiles without values.
 
-   Default value is “empty�.
+   Default value is "empty".
 
    Example 1.41. Set profiles_no_value parameter
 ...
@@ -972,14 +976,14 @@ modparam("dialog", "profiles_no_value", "inbound ; outbound")
 
    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.42. Set bridge_controller parameter
 ...
 modparam("dialog", "bridge_controller", "sip:[email protected]")
 ...
 
-5.43. initial_cbs_inscript (string)
+5.43. initial_cbs_inscript (int)
 
    If the initial dialog callbacks (i.e., DLGCB_CREATED and
    DLGCB_SPIRALED) should be executed in-script or post-script. If
@@ -995,11 +999,23 @@ modparam("dialog", "bridge_controller", "sip:[email protected]")
      * 1 - IN-SCRIPT - execute initial callbacks during script execution,
        i.e., right after dlg_manage() is called;
 
-   Default value is “1�.
+   Default value is "1".
 
    Example 1.43. Set initial_cbs_inscript parameter
 ...
-modparam("dialog", "initial_cbs_inscript", "0")
+modparam("dialog", "initial_cbs_inscript", 0)
+...
+
+5.44. send_bye (int)
+
+   If set to 1, BYE requests will be sent out for each dialog that timed
+   out. It is an alternative to $dlg_ctx(timeout_bye)=1 for all dialogs.
+
+   Default value is "0".
+
+   Example 1.44. Set send_bye parameter
+...
+modparam("dialog", "send_bye", 1)
 ...
 
 6. Functions
@@ -1018,7 +1034,7 @@ modparam("dialog", "initial_cbs_inscript", "0")
    6.12. dlg_get(callid, ftag, ttag)
    6.13. is_known_dlg()
 
-6.1.  set_dlg_profile(profile,[value])
+6.1. set_dlg_profile(profile,[value])
 
    Inserts the current dialog into a profile. Note that if the profile
    does not support values, they will be silently discarded. Also, there
@@ -1034,13 +1050,13 @@ modparam("dialog", "initial_cbs_inscript", "0")
    This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, REPLY_ROUTE
    and FAILURE_ROUTE.
 
-   Example 1.44. set_dlg_profile usage
+   Example 1.45. set_dlg_profile usage
 ...
 set_dlg_profile("inbound_call");
 set_dlg_profile("caller","$fu");
 ...
 
-6.2.  unset_dlg_profile(profile,[value])
+6.2. unset_dlg_profile(profile,[value])
 
    Removes the current dialog from a profile.
 
@@ -1053,13 +1069,13 @@ set_dlg_profile("caller","$fu");
    This function can be used from BRANCH_ROUTE, REPLY_ROUTE and
    FAILURE_ROUTE.
 
-   Example 1.45. unset_dlg_profile usage
+   Example 1.46. unset_dlg_profile usage
 ...
 unset_dlg_profile("inbound_call");
 unset_dlg_profile("caller","$fu");
 ...
 
-6.3.  is_in_profile(profile,[value])
+6.3. is_in_profile(profile,[value])
 
    Checks if the current dialog belongs to a profile. If the profile
    supports values, the check can be reinforced to take into account a
@@ -1076,7 +1092,7 @@ unset_dlg_profile("caller","$fu");
    This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, REPLY_ROUTE
    and FAILURE_ROUTE.
 
-   Example 1.46. is_in_profile usage
+   Example 1.47. is_in_profile usage
 ...
 if (is_in_profile("inbound_call")) {
         log("this request belongs to a inbound call\n");
@@ -1087,7 +1103,7 @@ if (is_in_profile("caller","XX")) {
 }
 ...
 
-6.4.  get_profile_size(profile,[value],size)
+6.4. get_profile_size(profile,[value],size)
 
    Returns the number of dialogs belonging to a profile. If the profile
    supports values, the check can be reinforced to take into account a
@@ -1105,7 +1121,7 @@ if (is_in_profile("caller","XX")) {
    This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, REPLY_ROUTE
    and FAILURE_ROUTE.
 
-   Example 1.47. get_profile_size usage
+   Example 1.48. get_profile_size usage
 ...
 if(get_profile_size("inbound_call","$avp(size)"))
     xlog("currently there are $avp(size) inbound calls\n");
@@ -1114,7 +1130,7 @@ if(get_profile_size("caller","$fu","$avp(size)"))
     xlog("currently, the user $fu has $avp(size) active outgoing calls\n");
 ...
 
-6.5.  dlg_isflagset(flag)
+6.5. dlg_isflagset(flag)
 
    Check if the dialog flag is set or not.
 
@@ -1124,7 +1140,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.48. dlg_isflagset usage
+   Example 1.49. dlg_isflagset usage
 ...
 if(dlg_isflagset("1"))
 {
@@ -1132,7 +1148,7 @@ if(dlg_isflagset("1"))
 }
 ...
 
-6.6.  dlg_setflag(flag)
+6.6. dlg_setflag(flag)
 
    Set the dialog flag.
 
@@ -1142,12 +1158,12 @@ if(dlg_isflagset("1"))
    This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
    ONREPLY_ROUTE and FAILURE_ROUTE.
 
-   Example 1.49. dlg_setflag usage
+   Example 1.50. dlg_setflag usage
 ...
 dlg_setflag("1");
 ...
 
-6.7.  dlg_resetflag(flag)
+6.7. dlg_resetflag(flag)
 
    Reset the dialog flag.
 
@@ -1157,12 +1173,12 @@ dlg_setflag("1");
    This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
    ONREPLY_ROUTE and FAILURE_ROUTE.
 
-   Example 1.50. dlg_resetflag usage
+   Example 1.51. dlg_resetflag usage
 ...
 redlg_setflag("1");
 ...
 
-6.8.  dlg_bye(side)
+6.8. dlg_bye(side)
 
    Send BYE to both parties of a dialog.
 
@@ -1173,12 +1189,12 @@ redlg_setflag("1");
    This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
    ONREPLY_ROUTE and FAILURE_ROUTE.
 
-   Example 1.51. dlg_bye usage
+   Example 1.52. dlg_bye usage
 ...
 dlg_bye("all");
 ...
 
-6.9.  dlg_refer(side, address)
+6.9. dlg_refer(side, address)
 
    Refer the 'side' to a new SIP 'address'.
 
@@ -1190,12 +1206,12 @@ dlg_bye("all");
    This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
    ONREPLY_ROUTE and FAILURE_ROUTE.
 
-   Example 1.52. dlg_refer usage
+   Example 1.53. dlg_refer usage
 ...
 dlg_refer("caller", "sip:[email protected]");
 ...
 
-6.10.  dlg_manage()
+6.10. dlg_manage()
 
    Process current SIP request with dialog module. It is an alternative to
    setting dialog flag for initial INVITE and Route-parameter-callback
@@ -1203,7 +1219,7 @@ dlg_refer("caller", "sip:[email protected]");
 
    This function can be used from REQUEST_ROUTE.
 
-   Example 1.53. dlg_manage usage
+   Example 1.54. dlg_manage usage
 ...
 modparam("dialog", "default_timeout", 100)
 ...
@@ -1219,25 +1235,25 @@ route {
 }
 ...
 
-6.11.  dlg_bridge(from, to, op)
+6.11. dlg_bridge(from, to, op)
 
    Bridge 'from' SIP address to 'to' SIP address via outbound proxy 'op'.
 
    Meaning of the parameters is as follows:
      * from - SIP address of first side to call.
-     * to - SIP address to refer “from� to.
+     * to - SIP address to refer "from" to.
      * op - outbound proxy SIP address.
 
    This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
    ONREPLY_ROUTE and FAILURE_ROUTE.
 
-   Example 1.54. dlg_bridge usage
+   Example 1.55. dlg_bridge usage
 ...
 dlg_bridge("sip:[email protected]", "sip:[email protected]",
    "sip:kamailio.org:5080");
 ...
 
-6.12.  dlg_get(callid, ftag, ttag)
+6.12. dlg_get(callid, ftag, ttag)
 
    Search and set current dialog based on Call-ID, From-Tag and To-Tag
    parameters.
@@ -1250,7 +1266,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.55. dlg_get usage
+   Example 1.56. dlg_get usage
 ...
 if(dlg_get("abcdef", "123", "456"))
 {
@@ -1258,7 +1274,7 @@ if(dlg_get("abcdef", "123", "456"))
 }
 ...
 
-6.13.  is_known_dlg()
+6.13. is_known_dlg()
 
    This function checks if the current SIP message being processed belongs
    to any transaction within an active dialog that the dialog module is
@@ -1274,7 +1290,7 @@ if(dlg_get("abcdef", "123", "456"))
    This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, REPLY_ROUTE
    and FAILURE_ROUTE.
 
-   Example 1.56. is_known_dlg() usage
+   Example 1.57. is_known_dlg() usage
 ...
 if(!uri == myself) {
         if(is_known_dlg()) {
@@ -1347,12 +1363,12 @@ if(!uri == myself) {
 
 8.2. dlg_list_ctx
 
-   The same as the “dlg_list� but including in the dialog description the
+   The same as the "dlg_list" but including in the dialog description the
    associated context from modules sitting on top of the dialog module.
 
    Name: dlg_list_ctx
 
-   Parameters: see “dlg_list�
+   Parameters: see "dlg_list"
 
    MI FIFO Command Format:
                 :dlg_list_ctx:_reply_fifo_file_
@@ -1485,7 +1501,7 @@ if(!uri == myself) {
 
 9.2. dlg.list_ctx
 
-   The same as the “dlg_list� but including in the dialog description the
+   The same as the "dlg_list" but including in the dialog description the
    associated context from modules sitting on top of the dialog module.
 
    Name: dlg.list_ctx
@@ -1510,13 +1526,13 @@ if(!uri == myself) {
 
 9.4. dlg.dlg_list_ctx
 
-   The same as the “dlg.list_ctx� but including in the dialog description
+   The same as the "dlg.list_ctx" but including in the dialog description
    the associated context from modules sitting on top of the dialog
    module.
 
    Name: dlg.dlg_list_ctx
 
-   Parameters: see “dlg_list�
+   Parameters: see "dlg_list"
 
    RPC Command Format:
                 serctl dlg.list_ctx [email protected] AAdfeEFF33
@@ -1655,7 +1671,7 @@ Chapter 2. Developer Guide
    1.1. register_dlgcb (dialog, type, cb, param, free_param_cb)
    1.2. terminate_dlg (dlg, hdrs)
 
-1.1.  register_dlgcb (dialog, type, cb, param, free_param_cb)
+1.1. register_dlgcb (dialog, type, cb, param, free_param_cb)
 
    Register a new callback to the dialog.
 
@@ -1697,14 +1713,14 @@ Chapter 2. Developer Guide
           + DLGCB_SPIRALED - called when the dialog matches a spiraling
             request - it's a per dialog type.
           + DLGCB_DESTROY
-     * dialog_cb cb - callback function to be called. Prototype is: “void
+     * dialog_cb cb - callback function to be called. Prototype is: "void
        (dialog_cb) (struct dlg_cell* dlg, int type, struct dlg_cb_params *
-       params); �
+       params); "
      * void *param - parameter to be passed to the callback function.
      * param_free callback_param_free - callback function to be called to
-       free the param. Prototype is: “void (param_free_cb) (void *param);�
+       free the param. Prototype is: "void (param_free_cb) (void *param);"
 
-1.2.  terminate_dlg (dlg, hdrs)
+1.2. terminate_dlg (dlg, hdrs)
 
    Terminate a Dialog
 
@@ -1715,46 +1731,46 @@ Chapter 2. Developer Guide
 
 Chapter 3. Frequently Asked Questions
 
-   3.1. What happend with “use_tight_match� parameter?
+   3.1. What happend with "use_tight_match" parameter?
    3.2. Where can I find more about Kamailio?
    3.3. Where can I post a question about this module?
    3.4. How can I report a bug?
 
    3.1.
 
-       What happend with “use_tight_match� parameter?
+   What happend with "use_tight_match" parameter?
 
-       The parameter was removed with version 1.3 as the option of tight
-       matching became mandatory and not configurable. Now, the tight matching
-       is done all the time (when using DID matching).
+   The parameter was removed with version 1.3 as the option of tight
+   matching became mandatory and not configurable. Now, the tight matching
+   is done all the time (when using DID matching).
 
    3.2.
 
-       Where can I find more about Kamailio?
+   Where can I find more about Kamailio?
 
-       Take a look at http://www.kamailio.org/.
+   Take a look at http://www.kamailio.org/.
 
    3.3.
 
-       Where can I post a question about this module?
+   Where can I post a question about this module?
 
-       First at all check if your question was already answered on one of our
-       mailing lists:
-         * User Mailing List -
-           http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-         * Developer Mailing List -
-           http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
+   First at all check if your question was already answered on one of our
+   mailing lists:
+     * User Mailing List -
+       http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
+     * Developer Mailing List -
+       http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
 
-       E-mails regarding any stable Kamailio release should be sent to
-       <[email protected]> and e-mails regarding development
-       versions should be sent to <[email protected]>.
+   E-mails regarding any stable Kamailio release should be sent to
+   <[email protected]> and e-mails regarding development
+   versions should be sent to <[email protected]>.
 
-       If you want to keep the mail private, send it to
-       <[email protected]>.
+   If you want to keep the mail private, send it to
+   <[email protected]>.
 
    3.4.
 
-       How can I report a bug?
+   How can I report a bug?
 
-       Please follow the guidelines provided at:
-       http://sip-router.org/tracker.
+   Please follow the guidelines provided at:
+   http://sip-router.org/tracker.

+ 24 - 2
modules_k/dialog/doc/dialog_admin.xml

@@ -1076,7 +1076,7 @@ modparam("dialog", "bridge_controller", "sip:[email protected]")
 	</section>
 
 	<section>
-		<title><varname>initial_cbs_inscript</varname> (string)</title>
+		<title><varname>initial_cbs_inscript</varname> (int)</title>
 		<para>
             If the initial dialog callbacks (i.e., DLGCB_CREATED and
             DLGCB_SPIRALED) should be executed in-script or post-script.
@@ -1109,7 +1109,29 @@ modparam("dialog", "bridge_controller", "sip:[email protected]")
 		<title>Set <varname>initial_cbs_inscript</varname> parameter</title>
 		<programlisting format="linespecific">
 ...
-modparam("dialog", "initial_cbs_inscript", "0")
+modparam("dialog", "initial_cbs_inscript", 0)
+...
+</programlisting>
+		</example>
+	</section>
+
+	<section>
+		<title><varname>send_bye</varname> (int)</title>
+		<para>
+			If set to 1, BYE requests will be sent out for each dialog that
+			timed out. It is an alternative to $dlg_ctx(timeout_bye)=1 for
+			all dialogs.
+		</para>
+		<para>
+		<emphasis>
+			Default value is <quote>0</quote>.
+		</emphasis>
+		</para>
+		<example>
+		<title>Set <varname>send_bye</varname> parameter</title>
+		<programlisting format="linespecific">
+...
+modparam("dialog", "send_bye", 1)
 ...
 </programlisting>
 		</example>