Jugin » 15 июл 2014, 09:48
Здравствуйте,
В данном случае дело в технологии, которую вы используете для обзвона. Дело в том, что обычная телефонная линия не имеет сигнализации о том, что на другом конце сняли трубку, поэтому определить факт поднятия трубки можно только анализируя стандартные сигналы, такие как "Вызов" и "Занято" и сигнал на линии. Такое программное распознавание голосового ответа абонента не всегда будет работать качественно, так как нельзя предположить как будет звучать голос абонента, а некоторые абоненты вообще молчат после снятия трубки. В этом случае программа может определить, что сняли трубку только через 4 секунды, не получив следующий сигнал "Вызов". Так же всегда снимает трубку российский АОН, а потом начинает посылать в линию сигналы "Вызов". И здесь все зависит от того, насколько качественно он это делает. Если не совсем, его сигналы будут восприняты как голосовой ответ. Так же различные мелодии и другие сообщения автоответчика на линии будут распознаны как голос.
Поэтому, если вы используете обычный голосовой модем, подключенный к телефонной линии, по другому определить факт поднятия трубки нельзя (не берем во внимание экзотические таксофонные линии с переполюсовкой и модемы позволяющие определять переполюсовку).
Если же вы используете GSM-модем, такой проблемы не будет, так как в сети GSM есть сигнализация о снятии трубки, причем она корректно работает и с различного вида атоответами.
Если речь идет о SIP-шлюзе, то в стандарте SIP-протокола есть команда снятия трубки, но если SIP-шлюз подключен к телефонной сети через обычную телефонную линию, очень часто он посылает команду о снятии трубки сразу после набора номера. Во многих шлюзах в таких случаях можно включить программное распознавание, но качество его все равно будет существенно ниже, чем аппаратное. Если же шлюз подключен правильно, все должно работать без ошибок.
Какое устройство вы используете?