2014-01-16 6 views
0

Я реализую приложение CTI, которое будет отслеживать все события агента. В настоящее время у меня возникают проблемы с получением событий auxcodes. Проверяя состояние агента, я получаю auxcodes, но я хочу, чтобы событие изменилось для auxcode, так что сразу я могу получить auxcodes.Как захватить auxcodes с помощью jtapi для телефонов avaya?

ответ

1

Вы можете извлечь расширение Avaya из AgentEvent и получить от него AgentStateInfo.

Agent agent = agentTerminalEvent.getAgent(); 
LucentV5AgentStateInfo lasi = (LucentV5AgentStateInfo)((LucentAgent)agent).getStateInfo(); 
int state = lasi.state; 
int rc = lasi.reasonCode; 
int wm = lasi.workMode; 

(если это то, что вы ищете)

EDIT:

кажется, что вы можете контролировать весь агент activty путем мониторинга ACDAddress с ACDAddressListener.

АЭ-сервис-JTAPI-программисты-гид-6_3_1.pdf Приложение A Page 60:

Чтобы полностью контролировать деятельность агентов, пожалуйста, используйте ACDAddressListener

OLD (могут быть устаревшими):

НО: Другие AgentTerminalEvents или ACDAddressEvents затем Вход в систему и выход из системы не про если изменение состояния агента не выполняется самим JTAPI.

Это означает, что если агент изменяет свое состояние на NOT_READY, используя свой телефон , вы не получите AgentTerminalEvent.

Если это изменение состояния осуществляется вашей программой (Agent.setState ...), то вы получите событие.

+0

Спасибо. Я использовал ACDAddressListener, но когда пользователь меняет auxcodes, даже нет. Вышеприведенный код определенно даст auxcode, но затем это необходимо проверить после некоторого заданного интервала, чтобы получить auxcode. – Krishna