Как захватить auxcodes с помощью jtapi для телефонов avaya?

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


person Krishna    schedule 16.01.2014    source источник


Ответы (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;

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

РЕДАКТИРОВАТЬ :

Кажется, что вы можете отслеживать всю активность агента, отслеживая ACDAddress с помощью ACDAddressListener.

ae-services-jtapi-programmers-guide-6_3_1.pdf Приложение A Страница 60:

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

СТАРЫЙ (может быть устаревшим):

НО: другие события AgentTerminalEvents или ACDAddressEvents, а затем Logon и Logoff не создаются, если изменение состояния агента не выполняется самим JTAPI.

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

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

person Hajo Thelen    schedule 17.01.2014
comment
Спасибо. Я использовал ACDAddressListener, но когда пользователь меняет вспомогательные коды, они даже не отображаются. Приведенный выше код определенно даст auxcode, но затем это необходимо проверить через определенный интервал, чтобы получить auxcode. - person Krishna; 17.01.2014