Опубликован: 20.02.2007 | Доступ: свободный | Студентов: 3481 / 786 | Оценка: 4.42 / 4.03 | Длительность: 40:03:00
Лекция 16:

Программы автопрозвона

< Лекция 15 || Лекция 16: 12345 || Лекция 17 >
Технология обработки файлов .dat

ToneLoc подтверждает, что файлы .dat содержат всю информацию, и что необходимо отыскать и обработать эти данные. ToneLoc предоставляет несколько утилит, которые помогают это сделать.

Основная выгода от сохранения результатов сканирования в файлах .dat заключается в возможности вернуться к повторному набору номеров, которые дали некоторые типы ответов. Вспомогательная утилита tlreplac.exe дает вам возможность изменить входы в файл .dat. Файл .dat содержит отдельный байт, соответствующий каждому номеру в телефонном узле, всего 10000 байтов. Каждое число имеет значение, которое соответствует одному из нескольких возможных результатов попытки набора телефонного номера.

UNDIALED [00] ToneLoc еще не набирал этот номер.
BUSY [1x] Был обнаружен сигнал "занято".
VOICE [2x] Обнаружен голосовой ответ (в большинстве случаев, это означает наличие факса).
NODIAL [30] Отсутствовал гудок.
ABORTED [5x] Звонок был прерван.
RINGOUT [6x] Достигнуто заданное количество гудков Ringout (установленное файлом tlcfg.exe в ScanOptions).
TIMEOUT [7x] Достигнуто заданное время ожидания, установленное файлом tlcfg.exe в ScanOptions.
TONE [8x] ToneLoc получил гудок.
CARRIER [9x] Была обнаружена carrier.
EXCLUDE [100] Номер исключен из сканирования.

Утилита tlreplac.exe читает файл .dat и заменяет значение одного типа на другое. Например, вы можете повторно набрать каждый номер, по которому был получен сигнал "занято", вернув его к состоянию еще не набранного.

C:\tlreplac.exe 1907836-.dat BUSY UNDIALED
TLReplace;  Replace ToneLoc .DAT tone responses with something else
                by Minor Threat and Mucho Maas, Version 1.0
Using Data File: 1907836.DAT

Marking BUSY responses as UNDIALED.
122 responses were changed.

Когда вы повторно запускаете toneloc.exe с этим файлом .dat, он опять набирает все номера, которые ранее были заняты; то есть вам нет необходимости просматривать весь файл регистрации и вручную отмечать номера, которые будут набраться повторно! Это полезно также для обработки ответов TIMEOUT и RINGOUT.

Prescan.exe

Утилита prescan.exe помогает генерировать файл .dat, основанный на списке номеров. Например, у вас может быть текстовый файл, содержащий только 400 номеров, которые надо набрать для некоторой АТС. Вместо того чтобы пытаться создать сложную комбинацию из включающих и исключающих масок, используйте утилиту prescan.exe, чтобы быстро сгенерировать файл .dat .

Во-первых, текстовый файл должен содержать только последние четыре цифры телефонного номера. Предполагается, что первые три должны быть одинаковыми для каждого номера. Затем, запустите prescan и отметьте каждый номер как BUSY. По умолчанию, prescan отметит все остальные номера как UNDIALED (ненабиравшийся). Мы должны вначале отметить все целевые номера, как BUSY, чтобы отличать номера, которые должны быть набраны, от номеров, которые никогда не должны набираться (то есть все номера вне целевого диапазона).

C:\prescan.exe num_list.txt BUSY
PreScan v.04? - Fill a ToneLoc datafile with known exchange data
Sorting "num_list.txt"...
Generating Header info...
Processing Data...
(100%), done.

Создан новый файл, prescan.dat, который содержит данные о состоянии всех 10000 номеров (0000-9999) целой АТС. Помните, что номера, которые мы собираемся набирать, в настоящее время отмечены как BUSY (занято), а номера, которые мы никогда не будем набирать, в настоящее время отмечены как UNDIALED (ненабиравшийся). Однако вы должны преобразовать файл prescan.dat из старого формата ToneLoc, который использует prescan, прежде чем вы сможете обрабатывать состояние BUSY/UNDIALED. То, что программа tconvert.exe может это сделать, весьма удобно.

D:\Tools\toneloc>TCONVERT.EXE PRESCAN.DAT
TCONVERT;   ToneLoc .DAT file conversion utility to 1.00 datafiles
                by Mucho Maas and Minor Threat 1994
Converting PRESCAN.DAT to 1.00 format
PRESCAN.DAT : 0.98 -> 1.00 Ok

Теперь мы должны сделать различие между номерами UNDIALED, которые не были включены в наш первоначальный список, и номерами BUSY, которые мы должны набирать. Файл tlreplac.exe легко с этим справляется. Нам нужно отметить номера UNDIALED как BLACK, чтобы поместить их в черный список. В результате, ToneLoc не набирает эти номера даже случайно.

C:\tlreplac.exe PRESCAN.DAT UNDIALED BLACK
Using Data File: PRESCAN.DAT
Marking UNDIALED responses as BLACKLIST.
9600 responses were changed.

Затем мы изменяем отметку номеров BUSY назад к UNDIALED.

C:\tlreplac.exe PRESCAN.DAT BUSY UNDIALED
Using Data File: PRESCAN.DAT
Marking BUSY responses as UNDIALED.
400 responses were changed.

В результате получаем файл prescan.dat, содержащий несколько номеров, которые мы хотим набрать, и которые правильно отмечены как UNDIALED. Любой другой номер будет игнорироваться. Эти шаги, возможно, показались вам сложными, но их можно тиражировать в простом командном файле (batch).

rem prep.bat
rem %1 = area code, %2 = exchange, %3 = text file input
PRESCAN.EXE %3 busy
TCONVERT    PRESCAN.DAT
TLREPLAC    PRESCAN     undialed black
TLREPLAC    PRESCAN     busy undialed
copy PRESCAN.DAT    %1%2.dat

Далее мы переименовываем prescan.dat так, чтобы указать требуемый междугородный код и АТС, запускаем ToneLoc и ждем ответ.

C:\move prescan.dat 1907836-.dat
C:\toneloc.exe 1907836-.dat /M:1907836xxxx

Хотя маска имеет значение xxxx, что обычно означает номера с 0000 до 9999, будут набраны только те телефонные номера из .dat-файла, которые попадают в этот диапазон. Все номера, помещенные в черный список, будут игнорироваться.

Анализ файлов .dat

Инструмент ToneLoc также включает в себя три утилиты, которые генерируют простую статистику, основанную на результатах файла .dat. Утилита Tlsumm.exe дает резюме всех файлов .dat, которые она находит в текущем каталоге.

C:\Tlsumm.exe * 
Summarizing *.DAT ...   
filename.dat:   tried   rings   voice   busys   carrs   tones   timeouts    spent
-----------     -----   -----   -----   -----   -----   -----   --------    -----
SAMPLE8A.DAT:   10000    1432       0    1963       0       4       6575     0:00
SAMPLE8B.DAT:   10000    1659    5853     466      47       0       1973     0:00
-----------     -----   -----   -----   -----   -----   -----   --------    -----
Totals:         20000    3091    5853    2429      47       4       8548     0:00    
-----------     -----   -----   -----   -----   -----   -----   --------    -----
Averages:       10000    1545    2926    1214      23       2       4274     0:00    
-----------     -----   -----   -----   -----   -----   -----   --------    -----
2 DatFiles      tried   rings   voice   busys   carrs   tones   timeouts    spent
16.1.

Вы можете определить другие знаки в дополнение к звездочке ( * ), чтобы выбрать меньшее число файлов.

Tlreport.exe дает статистику по определенному файлу .dat. Укажите имя целевого файла в командной строке.

C:\tlreport.exe PRESCAN.DAT
Report for PRESCAN.DAT: (v1.00)
                       Absolute    Relative
                       Percent     Percent
Dialed     = 10000     (100.00%)
Busy       =   479     (4.79%)     (4.79%)
Voice      =  2242     (22.42%)    (22.42%)
Noted      =     1     (0.01%)     (0.01%)
Aborted    =     2     (0.02%)     (0.02%)
Ringout    =  3683     (36.83%)    (36.83%)
Timeout    =  3563     (35.63%)    (35.63%)
Tones      =     0     (0.00%)     (0.00%)
Carriers   =    29     (0.29%)     (0.29%)
Scan is 100% complete.
56:03 spent on scan so far.

Столбец Absolute Percent дает процент номеров, соответствующий каждой категории из всех 10000 возможных номеров. Столбец Relative Percent показывает процент номеров каждой категории из общего числа набранных номеров.

Наконец, как показано на рис. 16.7, вы можете отобразить результаты в графическом формате. Каждая клетка в ToneMap представляет отдельный телефонный номер. Хотя такой способ представления данных для идентификации ( carriers ) слишком громоздкий, он, однако, показывает тенденцию в наборе данных. Используйте утилиту tonemap.exe, чтобы отобразить это в виде графика. Когда вы щелкаете левой кнопкой мыши на цветном пятне в ToneMap, телефонный номер появляется в нижнем правом углу. Это дает вам возможность найти соответствие между телефонным номером и его определением, закодированным определенным цветом.

C:\tonemap.exe sample2.dat
Пример вывода утилиты ToneMap

Рис. 16.7. Пример вывода утилиты ToneMap
< Лекция 15 || Лекция 16: 12345 || Лекция 17 >