--resolve FS-5478

上级 5110e284
...@@ -1525,7 +1525,15 @@ static void *SWITCH_THREAD_FUNC outbound_agent_thread_run(switch_thread_t *threa ...@@ -1525,7 +1525,15 @@ static void *SWITCH_THREAD_FUNC outbound_agent_thread_run(switch_thread_t *threa
/* Switch the agent session */ /* Switch the agent session */
if (real_uuid) { if (real_uuid) {
switch_core_session_rwunlock(agent_session); switch_core_session_rwunlock(agent_session);
agent_session = switch_core_session_locate(real_uuid); if (!(agent_session = switch_core_session_locate(real_uuid))) {
switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(member_session), SWITCH_LOG_DEBUG, "Real session is already gone (agent '%s')\n", h->agent_name);
sql = switch_mprintf("UPDATE members SET state = '%q', serving_agent = '', serving_system = ''"
" WHERE serving_agent = '%q' AND serving_system = '%q' AND uuid = '%q' AND system = 'single_box'",
cc_member_state2str(CC_MEMBER_STATE_WAITING), h->agent_name, h->agent_system, h->member_uuid);
cc_execute_sql(NULL, sql, NULL);
switch_safe_free(sql);
goto done;
}
agent_uuid = switch_core_session_get_uuid(agent_session); agent_uuid = switch_core_session_get_uuid(agent_session);
agent_channel = switch_core_session_get_channel(agent_session); agent_channel = switch_core_session_get_channel(agent_session);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论