Общая информация
СОРМ 1 — модуль системы оперативно-розыскных мероприятий, отвечающий за перехват данных в сотовой и телефонной связи. Устанавливается на АТС операторов в разных регионах.
Принцип работы
Section titled “Принцип работы”АТС оператора генерирует записи о звонках в формате 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
Компоненты
Section titled “Компоненты”sorm1-backend
Section titled “sorm1-backend”PHP-монолит на фреймворке CodeIgniter. Выполняет роль пульта управления — принимает запросы от органов, хранит данные о перехватах и звонках.
| Параметр | Значение |
|---|---|
| Язык | PHP |
| Фреймворк | CodeIgniter (монолит) |
| Назначение | Телефония |
Скрипты на сервере (sorm1-scripts)
Section titled “Скрипты на сервере (sorm1-scripts)”На сервере запущены скрипты из репозитория sorm1-scripts. Основной — ama2csv.
ama2csv
Section titled “ama2csv”Конвертирует AMA-файлы (Automatic Message Accounting) с АТС в формат CSV для дальнейшей загрузки в базу данных backend’а.
AMA — бинарный формат записей о вызовах, который генерируют телефонные коммутаторы (Nortel, Avaya и др.). Содержит: номера абонентов, время начала/конца звонка, длительность, тип вызова.
flowchart LR
AMA["AMA-файл\n(бинарный)"] -->|"ama2csv"| CSV["CSV\n(структурированный)"] --> DB[("БД backend")]