Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Есть контекст, в который приходят входящие звонки:

[from-trunk044]

exten => _X.,1, Set (CALLERID (num)=${CALLERID (num)})

;same => n, Set (CALLERID (name)=044); имя транка + номер сессии

same => n, Set (CDR (userfield)=${EXTEN})

same => n, Set (CDR (accountcode)=${CALLERID (dnid)})

same => n, GotoIf (${DB_EXISTS (vipclient/${CALLERID (num)})}?nashel); Поиск по базе

same => n, NoOp (== Номер не найден ==)

same => n, Goto (ne-nashel)

same => n (nashel), Set (vnutr-nomer=${DB (vipclient/${CALLERID (num)})}); Получаем внутренний номер

same => n, NoOp (== ${vnutr-nomer} ==)

same => n, Dial (IAX2/${vnutr-nomer},14, Tt, g)

same => n, Goto (ext-group,601,1)

same => n (ne-nashel), Goto (from-trunk,${EXTEN},1)

Нужно сделать такую логику:

1. сначала срабатывает та логика, что уже прописана — тоесть если человека набирали (он есть в базе), то звонок сразу идет тому, кто набирал,

2. если этот новый звонок — делается рандомный выбор из номеров sip 2011 — 2020

должен звонить один из телефонов в случайном порядке, причем телефон должен быть онлайн

если в течении 10 секунд человек не ответил на звонок — все падает на ринг-группу 601 (как сейчас и прописано)

10 лет назад
VVitovt
Тицкий 
41 годУкраина
13 лет в сервисе
Был
6 месяцев назад
Выбранный исполнитель
lstep
36 летРоссия
11 лет в сервисе
Был
4 года назад
10 лет назад
$50
1 день
Задача выполнена в срок и в полном объеме. Степан всегда был на связи и постоянно держал в курсе дел. По ходу возникло много непредвиденых обстоятельств (отстутсвие доступа на сервер, отключение электричества, неадекватное реагирование сервера на настройки), но несмотря на все это, Степан терпеливо и вежливо держал комуникацию и исправил все доработки. Рекомендую к сотрудничеству.
Приятно иметь дело с человеком обладающим техническими знаниями. Рекомендую Виталия как заказчика, чёткие и подробные ТЗ. Спасибо за сотрудничество.