Skip to content

Общая информация

СОРМ 1 — модуль системы оперативно-розыскных мероприятий, отвечающий за перехват данных в сотовой и телефонной связи. Устанавливается на АТС операторов в разных регионах.


АТС оператора генерирует записи о звонках в формате AMA (Automatic Message Accounting). Сервер СОРМ 1 забирает эти записи, конвертирует их и предоставляет интерфейс управления для органов.

flowchart TD
    subgraph ATS["АТС оператора"]
        SWITCH["Телефонный коммутатор"]
        AMA["AMA-файлы\n(записи о звонках)"]
        SWITCH --> AMA
    end

    subgraph SRV["Сервер СОРМ 1"]
        subgraph SCRIPTS["Скрипты (sorm1-scripts)"]
            A2C["ama2csv\n(конвертер записей)"]
        end

        subgraph BACKEND["sorm1-backend (PHP CodeIgniter)"]
            API["REST API"]
            PANEL["Панель управления"]
            DB[("База данных")]
        end

        A2C --> DB
        API --> DB
        PANEL --> DB
    end

    subgraph PULT["Пульт (органы)"]
        ORG["Запросы на перехват"]
    end

    AMA -->|"забор файлов"| A2C
    ORG <-->|"HTTP"| API

PHP-монолит на фреймворке CodeIgniter. Выполняет роль пульта управления — принимает запросы от органов, хранит данные о перехватах и звонках.

ПараметрЗначение
ЯзыкPHP
ФреймворкCodeIgniter (монолит)
НазначениеТелефония

Скрипты на сервере (sorm1-scripts)

Section titled “Скрипты на сервере (sorm1-scripts)”

На сервере запущены скрипты из репозитория sorm1-scripts. Основной — ama2csv.

Конвертирует AMA-файлы (Automatic Message Accounting) с АТС в формат CSV для дальнейшей загрузки в базу данных backend’а.

AMA — бинарный формат записей о вызовах, который генерируют телефонные коммутаторы (Nortel, Avaya и др.). Содержит: номера абонентов, время начала/конца звонка, длительность, тип вызова.

flowchart LR
    AMA["AMA-файл\n(бинарный)"] -->|"ama2csv"| CSV["CSV\n(структурированный)"] --> DB[("БД backend")]