|
Примерный алгоритм обработки:
Предположим, имеем сырой код номера 333 22 47 категории 1
который выглядит примерно так
...3 3 A A 1 1 1 7 7 4 4 4 B B B 2 2 3 3 3 B B 3 3 A A A 1 1 1....
1) Первый этап - сжатие ( удаление повторов цифр )
после сжатия сырой код будет выглядеть примерно так
...3 A 1 7 4 B 2 3 B 3 A 1 ....
Напомню что код А - означает начало/конец передачи номера,
код В - повтор предыдущей цифры.
2) Выделение кодов А - начала и конца передачи номера
Цифры между кодами А сохраняем,все остальное отбрасываем
После этого сырой код выглядит
A 1 7 4 B 2 3 B 3 A
3) Переписываем его слева направо для нормального отображени
В принципе, это необязаетльно, только надо выводить на индикатор
соответственно.
Получаем
А 3 В 3 2 В 4 7 1
4) Заменяем код повтора на предыдущую цифру
Получаем
А 333 22 47 1Если разрядность АТС меньше 7 цифр, то старшие цифры заполнены 2-ками
Их нужно удалить.
Вот и все.
E-mail: info@telesys.ru