Сообщение от
cONST
Ни разу не работал с GSM модемами, но попробую рассказать что знаю о GSM связи и ей подобных протоколах соединения. Возможно, каким-то образом поможет. Если нет - прошу прощения за оффтоп.
В общем, GSM использует сигналлизацию подобную DSS1 (рекомендация ITTU Q.931). Кажется, там поверх MAP эмулируется сигналлизация ISUP (см. рекомендации на SS7).
Так вот - согласно последней когда вызывающий абонент начинает дозваниваться он посылает ряд запросов в сеть (SETUP, INFORMATION) когда вызываемый абонент получает вызов (у него начинает звенеть телефон), вызывающий абонент получает CALL PROCEEDING или ALERTING сообщения. Когда вызывающая сторона отвечает (снимает трубку) к нам прийдёт CONNECT. Замечу, что всё время до получения CONNECT информация (звук) проходить только в нашу сторону. после получения CONNECT открывается тракт в обратном направлении и голос (данные) идут к вызываемому абоненту.
В случае, когда отвечает IVR оператора, то сообщение CONNECT приходить не должно вместо него прийдёт RELEASE с кодом ошибки, почему не дозвонились.
К слову, большинство современных цифровых систем коммутации (читайте - АТС) начинают учёт длительности разговора именно после получения вызывающим абонентом CONNECT.
Вывод. Если Ваш ГСМ модем позволил бы отлавливать получения CONNECT сообщения, тогда проблем не вижу.
Социальные закладки