switch_log_printf(SWITCH_CHANNEL_LOG,SWITCH_LOG_DEBUG,"Queue '%s' changed strategy, adjusting member parameters",queue_name);
sql=switch_mprintf("UPDATE members SET serving_agent = '', state = '%s' WHERE uuid = '%s' AND state = '%s' AND serving_agent = 'ring-all'",cc_member_state2str(CC_MEMBER_STATE_WAITING),cbt.member_uuid,cc_member_state2str(CC_MEMBER_STATE_TRYING));
switch_log_printf(SWITCH_CHANNEL_LOG,SWITCH_LOG_DEBUG,"Queue '%s' changed strategy, adjusting member parameters",queue_name);
sql=switch_mprintf("UPDATE members SET serving_agent = 'ring-all', state = '%s' WHERE uuid = '%s' AND state = '%s' AND serving_agent = ''",cc_member_state2str(CC_MEMBER_STATE_TRYING),cbt.member_uuid,cc_member_state2str(CC_MEMBER_STATE_WAITING));
cc_execute_sql(NULL,sql,NULL);
switch_safe_free(sql);
}
/* Check if member is in the queue waiting */
if(zstr(cbt.member_session_uuid)){
...
...
@@ -2307,7 +2325,7 @@ void *SWITCH_THREAD_FUNC cc_agent_dispatch_thread_run(switch_thread_t *thread, v
while(globals.running==1){
char*sql=NULL;
sql=switch_mprintf("SELECT queue,uuid,session_uuid,cid_number,cid_name,joined_epoch,(%"SWITCH_TIME_T_FMT"-joined_epoch)+base_score+skill_score AS score, state, abandoned_epoch FROM members"
sql=switch_mprintf("SELECT queue,uuid,session_uuid,cid_number,cid_name,joined_epoch,(%"SWITCH_TIME_T_FMT"-joined_epoch)+base_score+skill_score AS score, state, abandoned_epoch, serving_agent FROM members"
" WHERE state = '%q' OR state = '%q' OR (serving_agent = 'ring-all' AND state = '%q') ORDER BY score DESC",