среда, 25 июля 2012 г.

Особенности работы скрипта "Имитация поведения стационарного телефона в Lync" при использовании групп дозвона (RGS)

В процессе перевода одного из представительств на Lync с аналога совместно с телефонистом решили протестировать звонки на Hunt Group линка и столкнулись с тем, что при ответе на звонок участником группы звонок сбрасывался.

Просмотр логов показал, что звонок сбрасывает скрипт имитации поведения стационарного телефона в Lync. Причины и условия возникновения следующие:

Исходные данные:

  • Сотрудник через Lync звонит на группу дозвона (Response Group).
  • Звонящий и отвечающий зарегистрированы на разных Lync серверах (несколько front end серверов в пуле

Симптомы:

При ответе у отвечающего звонок не проходит (разрывается до начала голоса), у звонящего появляется уведомление «[сотрудник] отвечает на другой звонок».

Причины и лечение:

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

Данная проблема не возникнет при звонке на группу с Астериска или перевода звонка с астериска на группу, единственный возможный способ заткнуть эту проблему – переделать скрипт генерации сигнала занято, чтобы отбой не генерировался для переведенных звонков, т.е. проверять наличие заголовка Referred-By. Из очевидных минусов - ВСЕ переведенные звонки будут игнорировать статус отвечающего.

Кусочек кода будет выглядеть так:


//Проверяем звонок на переадресацию
referredByString = GetHeaderValues("Referred-By");
if (LengthString(referredByString) > 0) {
    Log("Event", false, "***BusyBusy***: Not processing. Call is transferred from ",referredByString);
    return;
    }

Комментариев нет:

Отправить комментарий