Hi,
I have queues in asterisk 18.5.1, in some queues I have a problem when an agent has Not in Use status and the queue doesn’t see him.
Queue configuration for exmple:
[2042997821]
setinterfacevar=yes
ringinuse=no
strategy=leastrecent
wrapuptime=60
announce-holdtime=No
periodic-announce-frequency=0
announce-position=no
announce-frequency=0
min-announce-frequency=0
servicelevel=60
weight=0
timeout=15
retry=5
memberdelay=0
monitor-type=MixMonitor
In global configuration file:
autofill=yes
persistentmembers = yes
monitor-type = MixMonitor
shared_lastcall=yes
I run debug and get some information about agent, caller and queue
Agent comes out of pause:
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Skip: 0; SQL: INSERT INTO queue_log (time, data5, data4, data3, data2, data1, event, agent, queuename, callid) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 1 (‘time’) = ‘2023-03-06 10:22:16.821552’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 2 (‘data5’) = ‘’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 3 (‘data4’) = ‘’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 4 (‘data3’) = ‘’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 5 (‘data2’) = ‘’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 6 (‘data1’) = ‘Ready;2;1678087336’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 7 (‘event’) = ‘UNPAUSE’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 8 (‘agent’) = ‘5366’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 9 (‘queuename’) = ‘2042997821’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 10 (‘callid’) = ‘NONE’
[Mar 6 10:22:16] DEBUG[32022] res_odbc.c: Releasing ODBC handle 0x30390a0 into pool
[Mar 6 10:22:16] DEBUG[32022] manager.c: Running action ‘QueuePenalty’
[Mar 6 10:22:16] DEBUG[32022] res_odbc.c: Reusing ODBC handle 0x30390a0 from class ‘asteriskcdrdb’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Skip: 0; SQL: INSERT INTO queue_log (time, data5, data4, data3, data2, data1, event, agent, queuename, callid) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 1 (‘time’) = ‘2023-03-06 10:22:16.824128’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 2 (‘data5’) = ‘’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 3 (‘data4’) = ‘’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 4 (‘data3’) = ‘’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 5 (‘data2’) = ‘’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 6 (‘data1’) = ‘10’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 7 (‘event’) = ‘PENALTY’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 8 (‘agent’) = ‘PJSIP/5366@5366’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 9 (‘queuename’) = ‘2042997821’
[Mar 6 10:22:16] DEBUG[32022] res_config_odbc.c: Parameter 10 (‘callid’) = ‘NONE’
After a short time range asterisk accepts the call and queues it
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] app_queue.c: Queue ‘2042997821’ Join, Channel ‘PJSIP/transit_04-00021833’, Position ‘1’
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] res_odbc.c: Reusing ODBC handle 0x30390a0 from class ‘asteriskcdrdb’
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] res_config_odbc.c: Skip: 0; SQL: INSERT INTO queue_log (time, data5, data4, data3, data2, data1, event, agent, queuename, callid) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] res_config_odbc.c: Parameter 1 (‘time’) = ‘2023-03-06 10:22:43.317643’
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] res_config_odbc.c: Parameter 2 (‘data5’) = ‘’
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] res_config_odbc.c: Parameter 3 (‘data4’) = ‘’
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] res_config_odbc.c: Parameter 4 (‘data3’) = ‘1’
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] res_config_odbc.c: Parameter 5 (‘data2’) = ‘number’
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] res_config_odbc.c: Parameter 6 (‘data1’) = ‘’
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] res_config_odbc.c: Parameter 7 (‘event’) = ‘ENTERQUEUE’
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] res_config_odbc.c: Parameter 8 (‘agent’) = ‘NONE’
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] res_config_odbc.c: Parameter 9 (‘queuename’) = ‘2042997821’
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] res_config_odbc.c: Parameter 10 (‘callid’) = ‘1678087363.1989892’
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] res_odbc.c: Releasing ODBC handle 0x30390a0 into pool
[Mar 6 10:22:43] VERBOSE[31381][C-0001b5ed] res_musiconhold.c: Started music on hold, class ‘default’, on channel ‘PJSIP/transit_04-00021833’
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] channel.c: Scheduling timer at (50 requested / 50 actual) timer ticks per second
And I see that queue doesn’t have members.
[Mar 6 10:22:43] DEBUG[31381][C-0001b5ed] app_queue.c: There are 0 available members.
And it all looks like this problem is only for one agent.
Can you help me to understand why?