Есть ли способ использовать штраф с динамическими агентами, чтобы упорядочить распределение вызовов агентов по полученным звонкам в очереди?
Мы используем линейную кольцевую стратегию, и это только упорядочивает вызовы динамических агентов по их порядку в логине.
Штраф устанавливается при добавлении участника в очередь. Если вы хотите контролировать это, вы можете удалить и повторно добавить участника в очередь, но, возможно, это может вызвать некорректное поведение.
Если вы действительно хотите это сделать, вы можете рассмотреть возможность использования агентов реального времени. Тогда вы сможете контролировать штраф без необходимости удаления участника из очереди.
[отредактировано] добавление комментариев об архитектуре реального времени Asterisk
Вы можете проверить, используете ли вы динамические агенты или в реальном времени с помощью интерфейса командной строки.
# rasterisk -x 'queue show'
Это должно быть что-то вроде
my_queue has 0 calls (max unlimited) in 'leastrecent' strategy (4s holdtime, 249s talktime), W:0, C:3834, A:130, SL:0.0% within 0s
Members:
member.one (sip/4206) (realtime) (In use) has taken 2 calls (last was 2457 secs ago)
member.two (sip/4234) (realtime) (In use) has taken 5 calls (last was 693 secs ago)
member.three (sip/4261) (realtime) (In use) has taken 6 calls (last was 638 secs ago)
No Callers
О реальном времени, взято с voip-info.org: http://www.voip-info.org/wiki/view/Asterisk+RealTime
В новой архитектуре RealTime весь код, относящийся к базе данных, перемещен в драйверы для конкретной базы данных. Канал просто вызывает общую процедуру поиска в базе данных. Намного чище, проще и удобнее с точки зрения кодирования.
Это означает, что каждое состояние, штраф, член остается в базе данных, и поэтому вы можете изменить их по своему желанию. Дайте мне знать, если я могу быть более полезным.