|
@@ -64,6 +64,10 @@ int dlg_db_mode = DB_MODE_NONE;
|
|
|
static db_con_t* dialog_db_handle = 0; /* database connection handle */
|
|
|
static db_func_t dialog_dbf;
|
|
|
|
|
|
+extern int dlg_enable_stats;
|
|
|
+extern stat_var *active_dlgs;
|
|
|
+extern stat_var *early_dlgs;
|
|
|
+
|
|
|
#define SET_STR_VALUE(_val, _str)\
|
|
|
do{\
|
|
|
VAL_STR((_val)).s = (_str).s;\
|
|
@@ -309,7 +313,15 @@ static int load_dialog_info_from_db(int dlg_hash_size)
|
|
|
GET_STR_VALUE(to_tag, values, 6, 1, 1);
|
|
|
|
|
|
dlg->start_ts = VAL_INT(values+7);
|
|
|
+
|
|
|
dlg->state = VAL_INT(values+8);
|
|
|
+ if (dlg->state==DLG_STATE_CONFIRMED_NA ||
|
|
|
+ dlg->state==DLG_STATE_CONFIRMED) {
|
|
|
+ if_update_stat(dlg_enable_stats, active_dlgs, 1);
|
|
|
+ } else if (dlg->state==DLG_STATE_EARLY) {
|
|
|
+ if_update_stat(dlg_enable_stats, early_dlgs, 1);
|
|
|
+ }
|
|
|
+
|
|
|
dlg->tl.timeout = (unsigned int)(VAL_INT(values+9)) + get_ticks();
|
|
|
if (dlg->tl.timeout<=(unsigned int)time(0))
|
|
|
dlg->tl.timeout = 0;
|