![]() |
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SunCheek Offline AON 3.00О премудростях и особенностях дистанционного определения номера вызывающего абонента в отечественных телефонных сетях повествует множество страниц нашего проекта, а также инструкция к нашей программе генерации посылок АОН SunCheek AON Generator. Поэтому пропустим значительную часть теоретической подоплеки и приступим сразу к описанию программы, анализирующей частотную посылку и вычисляющей цифры закодированного в ней номера. Как уже отмечалось ранее, звуковой безынтервальный пакет, состоящий из двухтональных сигналов для каждой цифры и категории номера вызывающего абонента, выдается вызывающей АТС прямо в разговорном канале после снятия трубки (или равнозначного занятия линии) вызываемым абонентом. Для того, чтобы определить закодированный частотным способом номер, можно воспользоваться телефоном с функцией АОН. Однако иногда возникают ситуации, когда АОНа под рукой не оказывается, а частотная посылка оказывается записанной на магнитофон или автоответчик. Располагая подобной магнитофонной записью, можно определить номер при помощи разработанной SunCheek'ом программы SunCheek Offline AON (старое название - AON Frequency Analyzer). Программа может быть полезна также в том случае, когда с первой попытки (то есть при снятии трубки) номер абонента определить не удалось, однако АТС способна выдать его еще раз во время разговора. Большинство телефонных аппаратов с АОН не позволяет повторно отправить запрос и определить номер после установления соединения. В этом случае необходимо поставить подозрительный разговор на запись, а затем попробовать инициировать повторную посылку АОН. Иногда это удается сделать при помощи простого короткого нажатия на рычаг телефонного аппарата. Полученная запись многочастотной посылки также будет пригодна для обработки на предлагаемой программе.
Интерфейс программы предельно прост и кроме окна отображения номера содержит всего три кнопки "Загрузить файл", "Сырой код" и "О программе". Для начала работы с программой необходимо нажать кнопку "Load..." и в открывшемся диалоговом окне задать имя файла, содержащего двухтональную посылку. Поддерживаются следующие аудиоформаты RIFF WAVE (*.wav): PCM, 8000 Гц, 8 бит, моно; PCM, 11025 Гц, 8 бит, моно; PCM, 22050 Гц, 8 бит, моно и PCM, 44100 Гц, 8 бит, моно (в демо-версии – только два первых варианта). Повышение частоты дискретизации звукового файла не обязательно приводит к улучшению качества определения номера, а иногда (в особенности, при наличии на записи сильных шумов) и ухудшает его. Алгоритм обработки записи составлен таким образом, что не зависит от так называемого "нулевого уровня" аудиозаписи, то есть численного значения оцифровки тишины. Это означает, что программа одинаково хорошо работает с аудиофайлами, полученными при помощи различных устройств (модем, звуковая карта, самодельный АЦП и т.д.). Начиная с версии 2.80, в программе реализовано автоопределение типа (формата) открываемого файла. В случае, если формат файла не поддерживается (не совпадает частота дискретизации, глубина оцифровки или кодек), при попытке его загрузки будет выдано соответствующее предупреждение и обработка производиться не будет. В противном случае определение номера начнется автоматически. В зависимости от размера открытого файла процесс определения может занять несколько минут. Для того, чтобы максимально снизить вероятность ошибки при определении, мы рекомендуем: - максимально сокращать размеры звуковых файлов, вырезая из них посторонние звуки и паузы и оставляя только саму тоновую посылку; - не обрабатывать звуковой файл при помощи аудиофильтров, в том числе повышающих громкость звучания (на точность определения она практически не влияет); - исключать ситуации, когда в одном файле содержатся тоновые посылки нескольких номеров (наиболее вероятно, что определится только первый из них). Номер, содержащийся в первой достоверно определяемой тональной посылке, появляется в нижней части окна программы по окончании обработки. Формат выводимого номера - [семь цифр : цифра категории] (пример см. на рисунке). В случае неполного либо искаженного номера или "неправильной" посылки АОН в поле вывода кроме цифр могут появляться символы "-" (неопределенный символ) и "_" (признак начала номера). Номер считается неопределенным, если в частотной посылке отсутствует код "начало". Если номер определить не удается, будут выведены символы "-------:-". В целом отображение номера аналогично телефонным аппаратам с АОН "Русь " на Z80 (например, версии 17Е): - если номер начинается с нуля (нулей), они отображаются в нормальном режиме (например, "0984908:1"); - случайно "затесавшийся" в середину посылки символ "начало" будет показан как "пробел" (например, "06_1724:9"); - отдельная неопределенная цифра в любом месте посылки отображается, как "-", а если за ней следовал код "повтор", то и он заменяется тем же символом (например, "6660--6:1"). Иногда бывает полезно ознакомиться с так называемым "сырым кодом" определенного номера. В частности, эта функция реализована во многих аппаратах с АОН. Начиная с версии 3.00, программа также позволяет просмотреть и скопировать в Windows Clipboard сырой код, являющийся результатом обработки звукового файла. Для просмотра кода необходимо по завершению обработки нажать кнопку "Raw code" (при отсутствии результатов обработки кнопка неактивна). На экране появится окно следующего вида: Помимо определенных цифр номера, в сыром коде также могут присутствовать символы "A" ("начало" пакета АОН), "B" ("повтор" пакета АОН) и "C" (неопределенная цифра). Показанная в окне информация может быть скопирована и вставлена в другие программы Windows для последующей обработки. Для занесения кода в буфер обмена Windows необходимо нажать кнопку Copy, для завершения работы с сырым кодом - кнопку Close. Данная функция присутствует только в полной версии программы. Начиная с версии 2.80, программа может обрабатывать и звуковые файлы, находящиеся на Read-only носителях (например, в локальной сети или на CD-ROM). В процессе обработки исходный звуковой файл не модифицируется. Программа SunCheek Offline AON распространяется только в составе пакета SunCheek AON Tools, совместно с программами генерации посылок АОН SunCheek AON Generator, определения сигналов импульсного набора SunCheek Pulse Counter и считывания DTMF кодов SunCheek DTMF Reader. В комплект поставки также входит набор тестовых звуковых файлов, предназначенных для проверки качества работы программы. Эти файлы можно обнаружить в поддиректории Samples в той директории, куда Вы установили пакет SunCheek AON Tools. Имена файлов, предназначенных для программы Offline AON, представляют собой телефонный номер (без категории), который содержится в записанной посылке, с добавленной к нему через дефис характеристикой формата (например, (1234567)-8.wav - файл с номером 123-45-67, оцифрованный в формате 8000 Гц, 8 бит моно). Предложения и замечания по программе принимаются здесь. Мы также будем рады, если Вы захотите поделиться с нами тем применением, которое Вы нашли для данного программного продукта. При сообщении об ошибках не забудьте указать номер версии и сборки Вашей копии программы (эти данные можно узнать при нажатии на кнопку About). Обратите внимание, что так как программа является свободно и бесплатно распространяемым продуктом, автор не принимает на себя никаких обязательств по поддержке, сопровождению и обновлению версий. Факт установки программы на компьютере пользователя автоматически означает его согласие с условиями, приведенными в доступном при установке Лицензионном соглашении. История версий 3.00 (16.02.2005). Улучшен интерфейс программы: введен прогресс-индикатор хода обработки файла, добавлена кнопка "Отмена операции". Добавлена возможность просмотра и копирования в Windows Clipboard "сырого кода" (только в полной версии). 2.80 (07.03.2004). Произведен отказ от использования временных файлов, создаваемых в одной папке с обрабатываемым звуковым файлом. Это позволило более рационально использовать пространство жесткого диска, а также напрямую работать с файлами посылок, находящимися на read-only носителях (CD-ROM/локальная сеть). Просмотр "сырого кода", содержавшегося в файлах "number.txt" и "final.txt", таким образом, более невозможен. Программа впервые среди версий 2.ХХ включена в свободно распространяемый пакет SunCheek AON Tools 2.00. 2.70 (23.01.2004). Отображение определенного номера сделано более корректным, в частности правильно обрабатываются символы "начало" и "повтор", содержащиеся в кодовой посылке. До этого момента определенная комбинация символов, например "начало-повтор-начало-..." могла ставить программу "в тупик", приводя к отображению номеров типа "0101010:1". Введены символы "-" (неопределенная цифра) и "_" (символ начала посылки). "Компараторный" вариант алгоритма заменен на более точный "амплитудно-фазовый". 2.50 (01.01.2004). Введено автоопределение формата открываемого звукового файла (теперь нет необходимости указывать частоту дискретизации вручную). Вновь введена поддержка аудиоформата 44100 Гц, 8 бит моно. 2.00 (15.10.2003). Первая версия, основанная на алгоритме дискретного преобразования Фурье. Использован так называемый "компараторный" алгоритм, полностью аналогичный применяемому в аппаратах с АОН. 1.20 (30.12.2003). Несколько скорректирован ряд числовых констант, используемых в алгоритме вычисления номера, для корректной работы с файлами с высокой частотой дискретизации. Поддержка аудиоформата 44100 Гц, 8 бит заменена на более адекватную 22050 Гц, 8 бит (файлы формата 44100 больше не поддерживаются). Соответственно изменен состав и формат образцов звуковых файлов, поставляемых с программой. Обнаружен небольшой казус: ранее с программой предлагались образцы звуковых файлов в формате 11025 Гц, 16 бит, не поддерживаемом алгоритмом определения номера :( Баг исправлен. 1.10 (18.10.2003). Программа впервые свободно распространяется в пакете SunCheek AON Tools 1.00, совместно с программой генерации посылок АОН SunCheek AON Number Generator 1.12. 1.01 (01.10.2002). Добавлена независимость алгоритма от "нулевого" уровня сигнала; повышена достоверность обработки. 1.0 (18.07.2001). Первоначальная версия. Оригинальный авторский алгоритм определения (не на основе преобразования Фурье). Эта страница имеет свой постоянный адрес в Интернет: http://phonefan.narod.ru/offlineaon.htm. Загляните сюда на предмет появления новых версий и дополнительной информации. © SunCheek, 1998-2005. При цитировании ссылка обязательна. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
Copyright © 1998-2005 Phone Fans Club. All rights reserved |
![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |