есть маленький колцентр, в нём GMS шлюз на 4 GMS канала. случается, все порты заняты, и в качесте дополнительного, (и более дорогого маршрута) используется fallback шлюз. проблема в том, что вызовы уходят на fallback даже если вызываемый абонент не принял вызов (сбросил вызов, или звонок завершился по таймауту). т.е. абонент на телефоне сбросил вызов не принимая его, и через ~10 сек снова получил вызов уже с другого номера.
как сделать так, чтобы вызовы при занятости основного шлюза уходили на fallback, а при отбое абонента - нет. или чистыми средствами * этого не добиться? ведь стандартно сервер не знает сколько каналов у GMS шлюза. т.е. нужно городить какой-то счётчик? как сделать это оптимально?
пример текущего конфига (в 1й сторке пишем разговор):
exten => _096X., 1, Monitor(wav,/var/lib/asterisk/recordings/${STRFTIME(${EPOCH},,%m.%d.%Y__%H-%M)}_${EXTEN}_${CALLERID(num)}_${CDR(billsec)},bm)
exten => _096X., n, Dial(SIP/${EXTEN}@192.168.10.112, 60, rt)
exten => _096X., n, Dial(SIP/${EXTEN}@192.168.10.117, 60, rt)