Продукты и услуги Информационно-правовое обеспечение ПРАЙМ Документы ленты ПРАЙМ Доработанный текст проекта Приказа Министерства цифрового развития, связи и массовых коммуникаций РФ "О внесении изменений в Требования к техническим и программным средствам информационных систем, содержащих базы данных абонентов оператора связи и предоставленных им услугах связи, а также информацию о пользователях услугами связи и о предоставленных им услугах связи, обеспечивающих выполнение установленных действий при проведении оперативно-розыскных мероприятий, утвержденные приказом Министерства связи и массовых коммуникаций Российской Федерации от 29.10.2018 N 573" (подготовлен Минцифры России 16.06.2022)

Обзор документа

Доработанный текст проекта Приказа Министерства цифрового развития, связи и массовых коммуникаций РФ "О внесении изменений в Требования к техническим и программным средствам информационных систем, содержащих базы данных абонентов оператора связи и предоставленных им услугах связи, а также информацию о пользователях услугами связи и о предоставленных им услугах связи, обеспечивающих выполнение установленных действий при проведении оперативно-розыскных мероприятий, утвержденные приказом Министерства связи и массовых коммуникаций Российской Федерации от 29.10.2018 N 573" (подготовлен Минцифры России 16.06.2022)

Досье на проект

В соответствии со статьей 41 и 64 Федерального закона от 7 июля 2003 г. N 126-ФЗ "О связи" (Собрание законодательства Российской Федерации, 2003, N 28, ст. 2895; 2014, N 26, ст. 3366; 2021, N 11, ст. 1709), пунктами 4 и 12 Правил взаимодействия операторов связи с уполномоченными государственными органами, осуществляющими оперативно-разыскную деятельность, утвержденных постановлением Правительства Российской Федерации от 27 августа 2005 г. N 538 (Собрание законодательства Российской Федерации, 2005, N 36, ст. 3704; 2018, N 3, ст. 556; N 40, ст. 6142) и пунктами 5 - 8 Правил хранения операторами связи текстовых сообщений пользователей услугами связи, голосовой информации, изображений, звуков, видео- и иных сообщений пользователей услугами связи, утвержденных постановлением Правительства Российской Федерации от 12 апреля 2018 г. N 445 (Собрание законодательства Российской Федерации, 2018, N 17 , ст. 2489; N 49, ст. 7600), приказываю:

Утвердить прилагаемые изменения, которые вносятся в Требования к техническим и программным средствам информационных систем, содержащих базы данных абонентов оператора связи и предоставленных им услугах связи, а также информацию о пользователях услугами связи и о предоставленных им услугах связи, обеспечивающих выполнение установленных действий при проведении оперативно-разыскных мероприятий, утвержденные приказом Министерства цифрового развития, связи и массовых коммуникаций Российской Федерации от 29.10.2018 N 573.

Министр М.И. Шадаев

УТВЕРЖДЕНЫ
приказом Министерства
цифрового развития, связи и массовых
коммуникаций Российской Федерации
от_____________2022 г. N_____

Изменения,
которые вносятся в Требования к техническим и программным средствам информационных систем, содержащих базы данных абонентов оператора связи и предоставленных им услугах связи, а также информацию о пользователях услугами связи и о предоставленных им услугах связи, обеспечивающих выполнение установленных действий при проведении оперативно-розыскных мероприятий, утвержденные приказом Министерства цифрового развития связи и массовых коммуникаций Российской Федерации от 29.10.2018 N 573

1. Подпункт 15 пункта 19 изложить в следующей редакции:

"15) взаимодействие с техническими средствами ОРМ в соответствии с протоколом взаимодействия, приведенным в приложении N 3 к Правилам применения оборудования систем коммутации, включая программное обеспечение, обеспечивающего выполнение установленных действий при проведении оперативно-розыскных мероприятий. Часть IV. Правила применения оборудования систем коммутации, включая программное обеспечение и технические средства накопления голосовой информации, обеспечивающего выполнение установленных действий при проведении оперативно-розыскных мероприятий, утвержденным приказом Министерства связи и массовых коммуникаций Российской Федерации от 26.02.2018 N 86 (зарегистрирован Министерством юстиции Российской Федерации 28 марта 2018 г., регистрационный N 50536), официальный интернет-портал правовой информации (http://www.pravo.gov.ru), 29.03.2018) (далее соответственно - ТС ОРМ 86; Приказ-86).

При организации подключения ТС ОРМ 86 к ИС ОРМ должно обеспечиваться формирование дополнительной статистической записи в справочнике операторов связи, обслуживаемых ИС ОРМ, в соответствии с подпунктом 13) пункта 9 Приложения N 1 к Требованиям. Данная запись должна иметь текстовое описание, указывающее на подключение ТС ОРМ 86 по Приказу 86".

2. В пункте 22:

а) абзац первый изложить в следующей редакции:

"22. Посредством технических и программных средств ИС ОРМ должен обеспечиваться непрерывный сбор и накопление информации о соединениях, инициированных абонентами и другими пользователями и реализованных посредством услуг сети передачи данных (при наличии лицензий на услуги связи по предоставлению каналов связи, услуги связи в сети передачи данных, за исключением передачи голосовой информации, телематические услуги связи):";

б) подпункт 8 изложить в следующей редакции:

"8) передаче прочих сообщений, передаваемых (получаемых) абонентом при помощи закрытых протоколов обмена, а также протокола DNS;";

в) дополнить подпунктом 11 следующего содержания:

"11) о фактах входа и иных действиях в личном кабинете абонента, при оказании услуг по предоставлению ресурсов для размещения информации на сервере, постоянно имеющем доступ к сети Интернет (услуги "хостинг-провайдеров")".

3. В пункте 23:

а) абзац первый изложить в следующей редакции:

"23. Посредством технических и программных средств ИС ОРМ должен обеспечиваться непрерывный сбор, накопление и хранение информации о следующих соединениях и сеансах связи абонентов (пользователей услугами телефонной связи) реализованных посредством сетей телефонной связи:";

б) дополнить абзацем следующего содержания:

"Информация о соединениях абонентов, использующих услуги VoWiFi (WiFi Calling и аналогичные), должна храниться в ИС ОРМ в формате статистических записей о телефонных соединениях абонентов. В качестве информации о местоположении должны указываться географические координаты абонентского устройства, либо IP-адрес и порт точки доступа WiFi-сети. В случае одновременного наличия актуальной информации о нескольких типах местоположения абонента следует дополнительно формировать отдельные статистические записи, соответствующие обновлению местоположения в мобильной сети связи.".

4. Пункт 24 изложить в следующей редакции:

"24. Посредством технических и программных средств ИС ОРМ должен обеспечиваться непрерывный сбор, накопление и хранение информации об изменении местоположения абонентов в соответствии с протоколом, приведенным в разделе "Locations.asn" приложения N 9 к Требованиям, доступную в сети связи, как при предоставлении услуги связи, так и в режиме ожидания вызова (при переключении его обслуживания разными устройствами сети связи, находящимися в разных географических зонах обслуживания, при включении и/или выключении абонентского устройства, при рассылке запросов от средств связи, при любом информационном обмене между абонентским устройством и коммутационным оборудованием, включая пейджинг и периодические запросы обновления местоположения).".

5. Пункт 25 дополнить абзацами следующего содержания:

"ИС ОРМ должна иметь функционал настройки правил формирования строк HTTP-статистики по критериям "Тип запроса (HTTP Request Methods)" и "Тип содержимого (HTTP Content-Type)".

По умолчанию ИС ОРМ должна формировать отдельные строки HTTP-статистики для каждой записи, соответствующей одному из приведенных ниже критериев:

тип запроса POST;

тип содержимого text/html;

тип содержимого application/* (за исключением application/javascript, json, woff).

При наличии нескольких сообщений протокола HTTP в рамках одной TCP-сессии, содержимое данной сессии записывается в полном объеме в единый pcap-файл и соотносится с каждой формируемой строкой HTTP-статистики.

Если в потоке TCP содержатся только сообщения протокола HTTP,по которым не требуется формировать строки HTTP-статистики, то формируется одна строка HTTP-статистики по первому сообщению протокола HTTP в потоке TCP.

В случае организации вызовов по протоколу STUN через сервисы обмена мгновенными сообщениями в сети "Интернет" необходимо накапливать внешние и внутренние сетевые реквизиты абонента и его контакта.

При этом статистические записи об использовании протокола STUN формируются путем формирования дополнительной строки в статистике VoIP-соединений (структура "dataVoipRecord" раздела "ReportsConnections.asn" приложения N 9 к Требованиям). Параметры "voip-calling-number" и voip-called-number блока "DataVoipRecordContent" имеют следующую структуру:

voip-calling-number:

original-number (stun:[телефонный номер абонента (при наличии)] prvip:[внутренний (серый) IP-адрес абонента: используемые порты] pubip:[внешний (белый) IP-адрес абонента: используемые порты] proxyip:[IP-адрес прокси-сервера: используемые порты (при наличии)]);

e164-number ([телефонный номер абонента (при наличии)]).

voip-called-number:

original-number (stun: prvip:[внутренний (серый) IP-адрес абонента: используемые порты] pubip:[внешний (белый) IP-адрес абонента: используемые порты].

Посредством технических и программных средств ИС ОРМ обеспечивается сбор, накопление и хранение информации о DNS-запросах абонентов (пользователей).

Формирование статистических записей DNS-запросов осуществляются с заполнением поля SNI/CN структуры "dataRawFlowsRecord" раздела "ReportsConnections.asn" приложения N 9 к Требованиям в следующей последовательности:

включать доменное имя из запроса пользователя (dns-query);

сокращать доменные имена до домена второго уровня и удалять дубли в случаях, когда в UDP потоке присутствуют доменные имена, размера большего, чем размер поля SNI/CN -.

При этом результат выполнения задачи поиска с заполнением поля SNI/CN должен включать как TLS, так и DNS-запросы пользователей.".

6. Дополнить пунктом 42 следующего содержания:

"42. ИС ОРМ должна обеспечивать передачу на ПУ ОРМ результатов поисковых задач в соответствии с временными характеристиками, приведенными в таблице N 2:

Таблица N 2. Результаты поисковых задач в соответствии с временными характеристиками

NN пп Количество записей в результате выполнения поисковой задачи Время загрузки результатов на ПУ ОРМ (минут)    
1 до 100 000 включительно менее 3    
2 от 100 001 до 200 000 менее 6    
3 от 200 001 до 300 000 менее 9    
4 от 300 001 до 400 000 менее 12    
5 от 400 001 до 500 000 менее 15    
6 от 500 001 до 600 000 менее 18    
7 от 600 001 до 700 000 менее 21    
8 от 700 001 до 800 000 менее 24    
9 от 800 001 до 900 000 менее 27    
10 от 900 001 до 1 000 000 менее 30 "

7. В приложении N 1:

а) подпункт 9 пункта 5 дополнить абзацем следующего содержания:

"DNS-запросы абонентов/пользователей услугами связи.";

б) пункт 5 дополнить подпунктами 11 и 12 следующего содержания:

"11) информацию о соединениях, использующих протокол STUN для организации вызовов посредством Интернет-мессенджеров, включающую:

телефонный номер абонента;

внутренние (серые) IP/порт абонента;

внешние (белые) IP/порт абонента;

внутренние (серые) IP/порт контакта;

внешние (белые) IP/порт контакта.

12) информацию о входах и иных действиях в личном кабинете абонента, при оказании услуг по предоставлению ресурсов для размещения информации на сервере, постоянно имеющем доступ к сети Интернет (услуги "хостинг-провайдеров"), включающую:

тип события;

наименования программы клиента (текстовая строка в произвольном виде, содержащая сведения о наименовании программы, версии, дате обновления, а также иные регистрируемые сведения при передаче);

идентификатор сообщений пользователей услугами связи.";

в) подпункт 4 пункта 6 дополнить текстом следующего содержания:

", а также информацию об IP-адресе и порте точки доступа Wi-Fi-сети";

г) подпункт 10 пункта 9 изложить в следующей редакции:

"10) справочниках с планами внешней и внутренней IP?адресации, используемой на сети оператора связи с обязательным разделением на пользовательские и служебные подсети;".

8. В приложении N 2:

а) пункт 24 дополнить подпунктами 9-11 следующего содержания:

"9) "Запрос на создание фильтра содержимого соединений сети передачи данных" (CreateFilterRequest);

10) "Запрос на удаление фильтра содержимого соединений сети передачи данных" (DropFilterRequest);

11) "Запрос на получение списка установленных фильтров" (GetFiltersRequest).";

б) пункт 28 дополнить подпунктами 9-11 следующего содержания:

"9) "Ответ на запрос создания фильтра содержимого соединений сети передачи данных" (CreateFilterResponse);

10) "Ответ на запрос удаления фильтра содержимого соединений сети передачи данных" (DropFilterResponse);

11) "Ответ на запрос получения списка установленных фильтров" (GetFilterResponse).";

в) абзац четвертый пункта 32 изложить в следующей редакции:

"Задача на поиск информации о действиях абонента в личном кабинете (ValidateEntranceTask)";

г) пункт 38 дополнить абзацем следующего содержания:

"Результат выполнения поисковой задачи с критерием, содержащим только символ маскирования "*", содержит все записи, присутствующие в ИС ОРМ по данному типу задач, включая записи, в которых запрашиваемое поле не заполнено.";

д) пункт 43 изложить в следующей редакции:

"43. При установлении соединения ПУ и ИС ОРМ должны взаимно аутентифицироваться. Аутентификация выполняется установлением SSL/TLS?соединения поверх установленного TCP?соединения между ПУ и ИС ОРМ. Для взаимной аутентификации ПУ и ИС ОРМ предварительно создаются X.509-сертификаты, которые должны быть подписаны самоподписанным корневым сертификатом, созданным уполномоченным государственным органом посредством ПУ. ИС ОРМ должна обеспечивать установку указанных корневых сертификатов в качестве доверенных. Созданный для ПУ сертификат используется для аутентификации данного ПУ на одной ИС ОРМ по всем каналам передачи данных - кпд1, кпд2, кпд3, кпд4, кпд5. ПУ и ИС ОРМ используют TLS версии 1.2. Требования к сертификатам (длины ключей, иные параметры) должны быть согласованы для каждой пары ИС ОРМ и ПУ отдельно. В случае невозможности аутентифицировать одну из сторон TCP?соединение разрывается.";

е) дополнить пунктом 61 следующего содержания:

"61. ИС ОРМ должна обеспечивать возможность задания, удаления и запроса установленных фильтров содержимого соединений сети передачи данных при реализации подпункта 2 пункта 27 настоящих требований. ИС ОРМ при этом должна обеспечивать:

при получении "Запроса на создание фильтра содержимого соединений сети передачи данных" добавляет заданный фильтр в список, используемый для фильтрации содержимого соединений в сети передачи данных;

при получении "Запроса на удаление фильтра содержимого соединений сети передачи данных" исключает заданный фильтр из списка, используемого для фильтрации соединений в сети передачи данных;

запись содержимого соединений сети передачи данных в соответствии с установленными фильтрами:

запись сетевого трафика в полном объеме при отсутствии установленных правил фильтрации производит;

исключать содержимое из записи при совпадении содержимого соединения с правилом фильтрации.

ИС ОРМ должна обеспечивать возможность настройки фильтра протоколов потокового медиаконтента (параметр protocol-group = 2 структуры "FilterSingleCriteria" раздела "Filters.asn" приложения N 9 к Требованиям) по следующим основным критериям в любой их комбинации:

IP-адрес/подсеть;

VLAN;

MPLS-метка;

SNI/URL.

В части предустановленных SNI/URL в обязательном порядке должны быть указаны CDN медиа-потоков видео-сервисов социальных сетей, онлайн-кинотеатров и иных видео-сервисов. Список основных критериев может быть расширен с учетом особенностей трафика, проходящего через сеть связи оператора связи.

При реализации подпункта 1 пункта 27 настоящих требований соответствующие команды управления фильтрацией от ПУ на ИС ОРМ выполняются с параметрами successful = false, error-description содержит произвольное текстовое описание ошибки.".

9. Абзац третий пункта 2 приложения N 4 изложить в следующей редакции:

"В случае если на ИС ОРМ передается запрос ПУ "Запрос загрузки данных" (DataLoadRequest), ИС ОРМ должна направлять "Ответ на запрос загрузки данных" (DataLoadResponse) по кпд1. Данные блоков отчетов по кпд2 должны передавться в последнюю очередь (при их наличии).".

10. Пункт 5 приложения N 5 дополнить подпунктом 5 следующего содержания:

"5) процент отфильтрованного трафика в соответствии с установленными на ИС ОРМ фильтрами на запись содержимого.".

11. В приложении N 6:

а) пункт 4 дополнить абзацем следующего содержания:

"Для услуг, предоставляемых в сети подвижной радиотелефонной связи, информации о подключении, отключении и изменении местоположения абонентов должна зраниться не менее 3 суток с момента наступления события, а информации о соединениях абонентов в сети передачи данных должна храниться не менее 1 суток с момента наступления события.";

б) пункт 5 изложить в следующей редакции:

"5. ИС ОРМ должна обеспечивать запись в буфер в виде архивированных недекодированных файлов следующей информации:

а) о соединениях и сеансах связи абонентов, реализованных посредством сетей телефонной связи:

телефонные соединения абонентов, дополненные информацией об идентификаторе потока;

служебные соединения;

входящие/исходящие SMS и USSD, как доставленные, так и не доставленные абоненту;

б) о соединениях, инициированных абонентами и другими пользователями и реализованных посредством услуг сети передачи данных;

в) о подключении, отключении и изменении местоположения абонентов - данные, содержащие информацию о параметрах подключения, отключения абонентов и изменения местоположения абонентов, соответствующие следующим событиям:

присоединение к сети и отключение от сети;

GTP-C события смены и обновления местоположения включая обновление зоны обслуживания (группы базовых станций);

смены зоны обслуживания во время активного вызова либо активной сессии передачи данных, включая смену базовой станции, смену контроллера группы базовых станций, смену обслуживающего коммутатора, смену обслуживающего узла сети передачи данных (SGSN, SGW, либо аналог);

запросы на дополнительные виды обслуживания.

В случае получения информации о подключении, отключении и изменении местоположения абонентов, соответствующей иным событиям сети связи, в буфере ИС ОРМ формируются соответствующие статистические записи.

Время обработки информации о подключении, отключении и изменении местоположении абонентов с момента наступления события до момента, когда она становится доступной для запросов ПУ по кпд4, не должно превышать 5 минут."; в) дополнить пунктом 10 следующего содержания:

"10. Поступающие запросы с ПУ по кпд4 и ответы ИС ОРМ на указанные запросы не должны оказывать влияния на обеспечиваемые ИС ОРМ временные характеристики обработки запросов и поиска информации, указанные в п.п. 34-41 Требований. В организованных каналах передачи данных для доставки информации на ПУ (в соответствии с п. 3 приложения N1 к Требованиям) должна резервироваться пропускная способность, равная или большая среднесуточной скорости поступления данных в циклический буфер.".

12. Приложение N 9 изложить в редакции:

"Приложение N 9
к Требованиям к техническим и
программным средствам
информационных систем, содержащих
базы данных абонентов оператора связи
и предоставленных им услугах связи, а
также информацию о пользователях
услугами связи и о предоставленных им
услугах связи, обеспечивающих
выполнение установленных действий
при проведении оперативно-розыскных
мероприятий, утвержденным приказом
Министерства цифрового развития,
связи и массовых коммуникаций
Российской Федерации
от 29.10.2018 N 573

Требования
к параметрам кодирования протокола взаимодействия ASN.1 пункта управления и информационных систем, содержащих базы данных абонентов оператора связи и предоставленных им услугах связи, а также информацию о пользователях услугами связи и о предоставленных им услугах связи, обеспечивающих выполнение установленных действий

при проведении оперативно-разыскных мероприятий

1. Classification.asn

Classification DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS TAGGED,

sorm-message-session,

sorm-message-trap,

sorm-message-task,

sorm-message-report,

sorm-message-management,

sorm-message-unformatted,

sorm-message-filter,

sorm-request-identifier-pager,

sorm-request-identifier-pstn,

sorm-request-identifier-gsm,

sorm-request-identifier-cdma,

sorm-request-identifier-data-network,

sorm-request-identifier-voip,

sorm-report-identifier-pager,

sorm-report-identifier-pstn,

sorm-report-identifier-gsm,

sorm-report-identifier-cdma,

sorm-report-identifier-data-network,

sorm-report-identifier-voip,

sorm-request-payment-bank-transaction,

sorm-request-payment-express-pays,

sorm-request-payment-terminal-pays,

sorm-request-payment-service-center,

sorm-request-payment-cross-account,

sorm-request-payment-telephone-card,

sorm-request-payment-balance-fillups,

sorm-request-payment-bank-division-transfer,

sorm-request-payment-bank-card-transfer,

sorm-request-payment-bank-account-transfer,

sorm-report-payment-bank-transaction,

sorm-report-payment-express-pays,

sorm-report-payment-terminal-pays,

sorm-report-payment-service-center,

sorm-report-payment-cross-account,

sorm-report-payment-telephone-card,

sorm-report-payment-balance-fillups,

sorm-report-payment-bank-division-transfer,

sorm-report-payment-bank-card-transfer,

sorm-report-payment-bank-account-transfer,

sorm-request-connection-pager,

sorm-request-connection-pstn,

sorm-request-connection-mobile,

sorm-request-connection-aaa-login,

sorm-request-connection-resource,

sorm-request-connection-email,

sorm-request-connection-im,

sorm-request-connection-voip,

sorm-request-connection-file-transfer,

sorm-request-connection-term-access,

sorm-request-connection-raw-flows,

sorm-request-connection-entrance,

sorm-request-connection-address-translations,

sorm-request-connection-sms,

sorm-report-connection-pager,

sorm-report-connection-pstn,

sorm-report-connection-mobile,

sorm-report-connection-ipdr-header,

sorm-report-connection-aaa-login,

sorm-report-connection-resource,

sorm-report-connection-email,

sorm-report-connection-im,

sorm-report-connection-voip,

sorm-report-connection-file-transfer,

sorm-report-connection-term-access,

sorm-report-connection-raw-flows,

sorm-report-connection-address-translations,

sorm-report-connection-entrance,

sorm-report-connection-sms,

sorm-request-dictionaries,

sorm-report-dictionary-bunches,

sorm-report-dictionary-basic-stations,

sorm-report-dictionary-roaming-partners,

sorm-report-dictionary-switches,

sorm-report-dictionary-gates,

sorm-report-dictionary-call-types,

sorm-report-dictionary-supplement-services,

sorm-report-dictionary-pay-types,

sorm-report-dictionary-termination-causes,

sorm-report-dictionary-ip-numbering-plan,

sorm-report-dictionary-phone-numbering-plan,

sorm-report-dictionary-doc-types,

sorm-report-dictionary-telcos,

sorm-report-dictionary-ip-data-points,

sorm-report-dictionary-special-numbers,

sorm-report-dictionary-bunches-map,

sorm-report-dictionary-mobile-subscriber-identity-plan,

sorm-report-dictionary-signal-point-codes,

sorm-request-presense,

sorm-report-presense-abonents,

sorm-report-presense-connections,

sorm-report-presense-payments,

sorm-report-presense-dictionaries,

sorm-report-presense-locations,

sorm-request-abonent-person,

sorm-request-abonent-organization,

sorm-report-abonent-abonent,

sorm-report-abonent-service,

sorm-report-abonent-person,

sorm-report-abonent-organization,

sorm-request-location,

sorm-report-data-content-raw;

TAGGED ::= CLASS {

&id ObjectDescriptor UNIQUE,

&Data

}

WITH SYNTAX {

OID &id

DATA &Data

}

--- Классификация

OID ::= ObjectDescriptor

-- Подструктура сообщений

sorm-message-session OID ::= "280"

sorm-message-trap OID ::= "281"

sorm-message-task OID ::= "282"

sorm-message-report OID ::= "283"

sorm-message-management OID ::= "284"

sorm-message-unformatted OID ::= "285"

sorm-message-filter OID ::= "286"

-- Идентификаторы

sorm-request-identifier-pager OID ::= "140"

sorm-request-identifier-pstn OID ::= "141"

sorm-request-identifier-gsm OID ::= "142"

sorm-request-identifier-cdma OID ::= "143"

sorm-request-identifier-data-network OID ::= "144"

sorm-request-identifier-voip OID ::= "145"

sorm-report-identifier-pager OID ::= "1"

sorm-report-identifier-pstn OID ::= "2"

sorm-report-identifier-gsm OID ::= "3"

sorm-report-identifier-cdma OID ::= "4"

sorm-report-identifier-data-network OID ::= "5"

sorm-report-identifier-voip OID ::= "6"

-- Параметры соединений

sorm-request-connection-pager OID ::= "160"

sorm-request-connection-pstn OID ::= "161"

sorm-request-connection-mobile OID ::= "162"

sorm-request-connection-aaa-login OID ::= "164"

sorm-request-connection-resource OID ::= "165"

sorm-request-connection-email OID ::= "166"

sorm-request-connection-im OID ::= "167"

sorm-request-connection-voip OID ::= "168"

sorm-request-connection-file-transfer OID ::= "169"

sorm-request-connection-term-access OID ::= "170"

sorm-request-connection-raw-flows OID ::= "171"

sorm-request-connection-entrance OID ::= "172"

sorm-request-connection-address-translations OID ::= "173"

sorm-request-connection-sms OID ::= "174"

sorm-report-connection-pager OID ::= "20"

sorm-report-connection-pstn OID ::= "21"

sorm-report-connection-mobile OID ::= "22"

sorm-report-connection-ipdr-header OID ::= "23"

sorm-report-connection-aaa-login OID ::= "24"

sorm-report-connection-resource OID ::= "25"

sorm-report-connection-email OID ::= "26"

sorm-report-connection-im OID ::= "27"

sorm-report-connection-voip OID ::= "28"

sorm-report-connection-file-transfer OID ::= "29"

sorm-report-connection-term-access OID ::= "30"

sorm-report-connection-raw-flows OID ::= "31"

sorm-report-connection-address-translations OID ::= "32"

sorm-report-connection-entrance OID ::= "33"

sorm-report-connection-sms OID ::= "34"

-- Абоненты

sorm-request-abonent-person OID ::= "180"

sorm-request-abonent-organization OID ::= "181"

sorm-report-abonent-abonent OID ::= "40"

sorm-report-abonent-service OID ::= "41"

sorm-report-abonent-person OID ::= "42"

sorm-report-abonent-organization OID ::= "43"

-- Местоположение

sorm-request-location OID ::= "200"

-- Платежи

sorm-request-payment-bank-transaction OID ::= "220"

sorm-request-payment-express-pays OID ::= "221"

sorm-request-payment-terminal-pays OID ::= "222"

sorm-request-payment-service-center OID ::= "223"

sorm-request-payment-cross-account OID ::= "224"

sorm-request-payment-telephone-card OID ::= "225"

sorm-request-payment-balance-fillups OID ::= "226"

sorm-request-payment-bank-division-transfer OID ::= "227"

sorm-request-payment-bank-card-transfer OID ::= "228"

sorm-request-payment-bank-account-transfer OID ::= "229"

sorm-report-payment-bank-transaction OID ::= "80"

sorm-report-payment-express-pays OID ::= "81"

sorm-report-payment-terminal-pays OID ::= "82"

sorm-report-payment-service-center OID ::= "83"

sorm-report-payment-cross-account OID ::= "84"

sorm-report-payment-telephone-card OID ::= "85"

sorm-report-payment-balance-fillups OID ::= "86"

sorm-report-payment-bank-division-transfer OID ::= "87"

sorm-report-payment-bank-card-transfer OID ::= "88"

sorm-report-payment-bank-account-transfer OID ::= "89"

-- Справочники

sorm-request-dictionaries OID ::= "240"

sorm-report-dictionary-bunches OID ::= "100"

sorm-report-dictionary-basic-stations OID ::= "101"

sorm-report-dictionary-roaming-partners OID ::= "102"

sorm-report-dictionary-switches OID ::= "103"

sorm-report-dictionary-gates OID ::= "104"

sorm-report-dictionary-call-types OID ::= "105"

sorm-report-dictionary-supplement-services OID ::= "106"

sorm-report-dictionary-pay-types OID ::= "107"

sorm-report-dictionary-termination-causes OID ::= "108"

sorm-report-dictionary-ip-numbering-plan OID ::= "109"

sorm-report-dictionary-phone-numbering-plan OID ::= "110"

sorm-report-dictionary-doc-types OID ::= "111"

sorm-report-dictionary-telcos OID ::= "112"

sorm-report-dictionary-ip-data-points OID ::= "113"

sorm-report-dictionary-special-numbers OID ::= "114"

sorm-report-dictionary-bunches-map OID ::= "115"

sorm-report-dictionary-mobile-subscriber-identity-plan OID ::= "116"

sorm-report-dictionary-signal-point-codes OID ::= "132"

-- Запрос о наличии данных

sorm-request-presense OID ::= "260"

sorm-report-presense-abonents OID ::= "120"

sorm-report-presense-connections OID ::= "121"

sorm-report-presense-payments OID ::= "122"

sorm-report-presense-dictionaries OID ::= "123"

sorm-report-presense-locations OID ::= "124"

-- Запрос о содержимом потоков

sorm-report-data-content-raw OID ::= "50"

END

2. Addresses.asn

Addresses DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS AddressType,

ReportedAddresses,

ReportedAddress,

RequestedAddress;

AddressType ::= ENUMERATED {

registered (0), --- Адрес регистрации (обязателен для юридических и физических лиц)

postal (1), --- Почтовый адрес (дополнительный адрес для юридических лиц)

invoice (2), --- Адрес доставки счета (дополнительный адрес для юридических лиц)

device-location (3), --- Адрес установки пользовательского устройства (телефонного аппарата)

reserved (4) --- Резерв

}

ReportedAddresses ::= SEQUENCE OF ReportedAddress

ReportedAddress ::= SEQUENCE {

title AddressType, --- тип адреса

address-info AddressInfoReport --- адрес

}

AddressInfoReport ::= CHOICE {

struct-info[1] AddressStructInfoReport, --- структурированный адрес

unstruct-info[2] UTF8String(SIZE (1 .. 1024) --- неструктурированный адрес

}

AddressStructInfoReport ::= SEQUENCE {

zip [0] UTF8String (SIZE (1 .. 32) OPTIONAL, --- почтовый индекс, zip-код

country [1] UTF8String (SIZE (1 .. 128) OPTIONAL, --- страна

region [2] UTF8String (SIZE (1 .. 128) OPTIONAL, --- область

zone [3] UTF8String (SIZE (1 .. 128) OPTIONAL, --- район, муниципальный округ

city [4] UTF8String (SIZE (1 .. 128) OPTIONAL,--- город, поселок, деревня

street [5] UTF8String (SIZE (1 .. 128) OPTIONAL, --- улица

building [6] UTF8String (SIZE (1 .. 128) OPTIONAL, --- дом, строение

build-sect [7] UTF8String (SIZE (1 .. 128) OPTIONAL, --- корпус

apartment [8] UTF8String (SIZE (1 .. 128) OPTIONAL --- квартира, офис

}

-- поля адресных данных

RequestedAddress ::= SEQUENCE {

zip [0] UTF8String (SIZE (1 .. 32) OPTIONAL, --- почтовый индекс, zip-код

country [1] UTF8String (SIZE (1 .. 128) OPTIONAL, --- страна

region [2] UTF8String (SIZE (1 .. 128) OPTIONAL, --- область

zone [3] UTF8String (SIZE (1 .. 128) OPTIONAL, --- район, муниципальный округ

city [4] UTF8String (SIZE (1 .. 128) OPTIONAL, --- город, поселок, деревня, населенный пункт

street [5] UTF8String (SIZE (1 .. 128) OPTIONAL, --- улица

building [6] UTF8String (SIZE (1 .. 128) OPTIONAL, --- дом, строение

build-sect [7] UTF8String (SIZE (1 .. 128) OPTIONAL, --- корпус

apartment [8] UTF8String (SIZE (1 .. 128) OPTIONAL --- квартира, офис

}

END

3. Dictionaries.asn

Dictionaries DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS

TelcoID,

TelcoList,

DictionaryTask,

DictionaryReport,

PhoneAbonentType;

IMPORTS DateAndTime

FROM Sorm

TAGGED,

sorm-request-dictionaries,

sorm-report-dictionary-telcos,

sorm-report-dictionary-bunches,

sorm-report-dictionary-basic-stations,

sorm-report-dictionary-roaming-partners,

sorm-report-dictionary-switches,

sorm-report-dictionary-gates,

sorm-report-dictionary-call-types,

sorm-report-dictionary-supplement-services,

sorm-report-dictionary-pay-types,

sorm-report-dictionary-termination-causes,

sorm-report-dictionary-ip-numbering-plan,

sorm-report-dictionary-phone-numbering-plan,

sorm-report-dictionary-doc-types,

sorm-report-dictionary-ip-data-points,

sorm-report-dictionary-special-numbers,

sorm-report-dictionary-bunches-map,

sorm-report-dictionary-mobile-subscriber-identity-plan,

sorm-report-dictionary-signal-point-codes

FROM Classification

ReportedAddress

FROM Addresses

Bunch,

DataNetworkEquipment,

IPAddress,

IPPort,

IPMask,

NetworkPeerInfo,

NetworkType

FROM NetworkIdentifiers

GeoLocation FROM Locations;

-- Идентификатор оператора связи или структурного подразделения

TelcoID ::= INTEGER (0 .. 65535)

--- список идентификаторов операторов связи или структурного подразделения

TelcoList ::= SEQUENCE OF TelcoID

-- Запрос

DictionaryTask ::= SEQUENCE {

id TAGGED.&id ({DictionaryTaskVariants}),

data TAGGED.&Data ({DictionaryTaskVariants}{@id})

}

DictionaryTaskVariants TAGGED ::= { dictionaryTask }

dictionaryTask TAGGED ::= {

OID { sorm-request-dictionaries }

DATA ObjectDescriptor -- тип запрашиваемого справочника (идентификатор отчёта)

}

-- ObjectDescriptor принимает значение одно из:

-- sorm-report-dictionary-telcos

-- sorm-report-dictionary-bunches

-- sorm-report-dictionary-basic-stations

-- sorm-report-dictionary-roaming-partners

-- sorm-report-dictionary-switches

-- sorm-report-dictionary-gates

-- sorm-report-dictionary-call-types

-- sorm-report-dictionary-supplement-services

-- sorm-report-dictionary-pay-types

-- sorm-report-dictionary-termination-causes

-- sorm-report-dictionary-ip-numbering-plan

-- sorm-report-dictionary-phone-numbering-plan

-- sorm-report-dictionary-doc-types

-- sorm-report-dictionary-ip-data-points

-- sorm-report-dictionary-special-numbers

-- sorm-report-dictionary-bunches-map,

-- sorm-report-dictionary-mobile-subscriber-identity-plan

-- sorm-report-dictionary-signal-point-codes

-- Отчёт

DictionaryReport ::= SEQUENCE {

id TAGGED.&id ({DictionaryRecordsVariants}), --- идентификтор записи справочника

data TAGGED.&Data({DictionaryRecordsVariants}{@id}) --- данные записи справочника

}

DictionaryRecordsVariants TAGGED ::= {

telcosRecords --- операторы связи, обслуживаемые ИС СОРМ

| bunchesRecords --- пучки соединительных линий

| basicStationsSectorRecords --- базовые станции

| roamingPartnersRecords --- роуминговые партнеры

| switchesRecords --- коммутаторы

| gatesRecords --- IP шлюзы

| callTypesRecords --- типы вызовов

| supplementServicesRecords --- список дополнительных видов обслуживания (далее - ДВО)

| payTypesRecords --- способы оплаты (пополнения баланса)

| terminationCausesRecords --- причины завершения соединения

| ipNumberingPlanRecords --- IP-план адресации

| telephoneNumberingPlanRecords --- план телефонной номерной емкости

| ipDataPointsRecords --- идентификаторы точек подключения к сети передачи данных, с которых получены записи о соединениях

| specialNumbersRecords --- специальные номера оператора (SMS-центры, ТМС, сервисы)

| bunchesMapRecords --- карта связей пучков соединительных линий

| mobileSubscriberIdenityPlanRecords --- план нумерации идентификаторов мобильных телефонных абонентов

| signalPointCodes --- коды сигнальных точек OPC/DPC

}

--- операторы связи, обслуживаемые ИС СОРМ

telcosRecords TAGGED ::= {

OID { sorm-report-dictionary-telcos }

DATA SEQUENCE OF TelcosRecord }

TelcosRecord ::= SEQUENCE {

telco-id TelcoID, --- номер структурного подразделения или оператора связи

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL, --- время конца действия

description UTF8String (SIZE (1 .. 256), --- описание (наименование) оператора связи или структурного подразделения

mcc [0] NumericString (SIZE(3) OPTIONAL, --- код страны

mnc [1] NumericString (SIZE(3) OPTIONAL --- код оператора связи

}

--- пучки соединительных линий

bunchesRecords TAGGED ::= {

OID { sorm-report-dictionary-bunches }

DATA SEQUENCE OF BunchRecord

}

BunchRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

bunch-id Bunch, --- идентификатор пучка

switch-id UTF8String (SIZE (1 .. 128), --- идентификатор коммутатора

bunch-type ENUMERATED { --- тип - входящий/исходящий

inbound (0),

outbound (1),

bidirectional (3)

},

begin-time DateAndTime, --- время начала назначения пучка

end-time DateAndTime OPTIONAL, --- время конца назначения пучка

description UTF8String (SIZE(1 .. 256) --- расшифровка пучка

}

--- базовые станции

basicStationsSectorRecords TAGGED ::= {

OID { sorm-report-dictionary-basic-stations }

DATA SEQUENCE OF BasicStationSectorRecord

}

BasicStationSectorRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

begin-time DateAndTime, --- время начала действия базовой станции

end-time DateAndTime, --- время конца действия базовой станции

address UTF8String (SIZE (1 .. 256), --- произвольное текстовое описание адреса или места расположения

sector-identifiers BasicStationIdentifiers, --- идентификаторы сектора

antenna-configuration BasicStationAntenna, --- параметры антенной системы

station-type BasicStationType, --- тип сети базовой станции

structured-address [0] ReportedAddress OPTIONAL, --- адрес места установки базовой станции

location [1] GeoLocation OPTIONAL --- географическое местоположение

}

--- идентификаторы сектора

BasicStationIdentifiers ::= CHOICE {

telepone [0] TelephoneIdentifiers, --- идентификаторы сектора для телефонной сети

wireless [1] SEQUENCE OF WirelessIdentifiers --- идентификаторы сектора для сети передачи данных

}

--- идентификаторы сектора для телефонной сети

TelephoneIdentifiers ::= SEQUENCE {

lac INTEGER (0 .. 65535), --- код зоны

cell INTEGER (0 .. 100000000000), --- идентификатор сектора базовой станции (идентификатор базовой станции и сектор)

cell-sign UTF8String (SIZE (1 .. 18) OPTIONAL --- телефонный идентификатор соты

}

--- идентификаторы сектора для сети передачи данных

WirelessIdentifiers ::= SEQUENCE {

cell UTF8String (SIZE (1 .. 64), --- идентификатор сектора

ip-list IPList OPTIONAL, --- перечень назначенных сектору IP-адресов/портов

mac OCTET STRING (SIZE (6) OPTIONAL --- MAC-адрес сетевого оборудования сектора

}

IPList ::= SEQUENCE OF NetworkPeerInfo

--- параметры антенной системы

BasicStationAntenna ::= CHOICE {

gsm-antenna [0] GsmAntenna, --- параметры антенной системы GSM-сектора

cdma-antenna [1] SEQUENCE OF CdmaAntenna, --- параметры антенной системы CDMA-сектора

wireless-antenna [2] SEQUENCE OF WirelessAntenna --- параметры антенной системы WiFi/WiMAX-сектора

}

--- параметры антенной системы

GsmAntenna ::= SEQUENCE {

azimuth INTEGER (-1 .. 359), --- азимут относительно направления на север, в градусах, если -1, то нет направленности

width INTEGER (0 .. 359), --- ширина растра в градусах

horizon-angle INTEGER (0 .. 359), --- угол наклона сектора к горизонту

power [0] INTEGER (0 .. 25000) OPTIONAL, --- мощность в ваттах (сектор)

frequency [1] INTEGER (0 .. 100000000000) OPTIONAL, --- частота излучения (сектор)

vertical-lift [2] INTEGER (0 .. 100) OPTIONAL, --- высота подвеса сектора

gain-factor [3] INTEGER (-100 .. 100) OPTIONAL, --- коэффициент усиления антенны (Дб)

polarization [4] INTEGER (-45 .. 45) OPTIONAL, --- поляризация антенной системы

setting [5] BsSetting OPTIONAL, --- тип расположения БС

thickness [6] INTEGER (0 .. 359) OPTIONAL, --- ширина диаграммы направленности основного лепестка сектора БС по вертикали (в градусах)

generation [7] BsGeneration OPTIONAL, --- поколение

controller-num [8] UTF8String (SIZE (1 .. 128) OPTIONAL, --- номер контроллера БС

bcc-ncc [9] UTF8String (SIZE (1 .. 128) OPTIONAL, --- код идентификации базовой станции (BCC + NCC)

cell-type [10] BsCellType OPTIONAL, --- тип БС соты (макро-, микро-, пико-, фемто-)

radiation-class [11] UTF8String (SIZE (1 .. 32) OPTIONAL, --- класс излучения (например: 200KG7D)

name [12] UTF8String (SIZE (1 .. 32) OPTIONAL, --- наименование базовой станции (номер БС в базах оператора)

channel [13] UTF8String (SIZE (1 .. 32) OPTIONAL --- десятичный номер канала (в соответствии со стандартом)

}

--- тип БС соты (макро-, микро-, пико-, фемто-)

BsCellType ::= ENUMERATED {

macro (0),

micro (1),

pico (2),

femto (3)

}

--- поколение БС

BsGeneration ::= ENUMERATED {

g2 (0),

g3 (1),

g4 (2),

g5 (3)

}

--- тип расположения БС

BsSetting ::= ENUMERATED {

indoor (0),

outdoor (1),

underground (2)

}

CdmaAntenna ::= BroadbandWirelessParameters --- параметры антенной системы CDMA-сектора

WirelessAntenna ::= BroadbandWirelessParameters --- параметры антенной системы WiFi/WiMAX-сектора

BroadbandWirelessParameters ::= SEQUENCE {

azimuth INTEGER (-1 .. 359), --- азимут относительно направления на север, в градусах, если -1, то нет направленности

width INTEGER (0 .. 359), --- ширина растра в градусах

horizon-angle INTEGER (0 .. 359), --- угол наклона сектора к горизонту

power [0] INTEGER (0 .. 25000) OPTIONAL, --- мощность в ваттах (сектор)

frequency-start [1] INTEGER (0 .. 10000000000) OPTIONAL, --- нижняя частота излучения диапазона (сектор)

frequency-stop [2] INTEGER (0 .. 10000000000) OPTIONAL, --- верхняя частота излучения диапазона (сектор)

leaf-level [3] INTEGER (-45 .. 45) OPTIONAL, --- уровень боковых лепестков

vertical-lift [4] INTEGER (0 .. 100) OPTIONAL, --- высота подвеса сектора

gain-factor [5] INTEGER (-100 .. 100) OPTIONAL, --- коэффициент усиления антенны (Дб)

polarization [6] INTEGER (-45 .. 45) OPTIONAL --- поляризация антенной системы

}

--- виды базовых станций

BasicStationType ::= ENUMERATED {

gsm (0),

cdma (1),

umts (2),

wifi (3),

wimax (4)

}

roamingPartnersRecords TAGGED::= {

OID { sorm-report-dictionary-roaming-partners }

DATA SEQUENCE OF RoamingPartnerRecord

}

RoamingPartnerRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

roaming-id INTEGER (0 .. 4294967295), --- идентификатор роумингового партнёра

begin-time DateAndTime, --- время начала действия роуминга

end-time DateAndTime OPTIONAL, --- время конца действия роуминга

description UTF8String (SIZE (1 .. 256) --- описание

}

switchesRecords TAGGED ::= {

OID { sorm-report-dictionary-switches }

DATA SEQUENCE OF SwitchesRecord

}

SwitchesRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

switch-id UTF8String (SIZE (1 .. 128), --- идентификатор коммутатора

begin-time DateAndTime, --- время начала действия коммутатора

end-time DateAndTime OPTIONAL, --- время конца действия коммутатора

description UTF8String (SIZE (1 .. 256), --- описание

network-type NetworkType, --- тип сети связи

address ReportedAddress, --- адрес места установки коммутатора

switch-sign NumericString (SIZE (1 .. 18) OPTIONAL, --- телефонный идентификатор коммутатора

switch-type ENUMERATED {

internal(0), --- внутренний

border(1) --- пограничный

}

}

gatesRecords TAGGED ::= {

OID { sorm-report-dictionary-gates }

DATA SEQUENCE OF GatesRecord

}

GatesRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

gate-id INTEGER (0 .. 4294967295), --- идентификатор шлюза

ip-list IPList, --- IP адрес шлюза

begin-time DateAndTime, --- время начала действия шлюза

end-time DateAndTime OPTIONAL, --- время конца действия шлюза

description UTF8String (SIZE (1 .. 256), --- описание

address ReportedAddress, --- адрес места установки шлюза

gate-type ENUMERATED { --- тип IP-шлюза

sgsn(0),

ggsn(1),

smsc(2),

gmsc(3),

hss(4),

pstn(5),

voip-gw(6),

aaa(7),

nat(8)

}

}

callTypesRecords TAGGED ::= {

OID { sorm-report-dictionary-call-types }

DATA SEQUENCE OF CallsTypesRecord

}

CallsTypesRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

call-type-id INTEGER (0 .. 4294967295), --- идентификатор типа вызова

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL, --- время конца действия

description UTF8String (SIZE (1 .. 256) --- описание

}

supplementServicesRecords TAGGED ::= {

OID { sorm-report-dictionary-supplement-services }

DATA SEQUENCE OF SupplementServicesRecord

}

SupplementServicesRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

service-id INTEGER (0 .. 4294967295), --- идентификатор сервиса

mnemonic UTF8String (SIZE (1..64) OPTIONAL, --- мнемоническое обозначение

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL, --- время конца действия

description UTF8String (SIZE (1 .. 256) --- описание

}

payTypesRecords TAGGED ::= {

OID { sorm-report-dictionary-pay-types }

DATA SEQUENCE OF PayTypesRecord

}

PayTypesRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

pay-type-id INTEGER (0 .. 4294967295), --- идентификатор типа оплаты

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL, --- время конца действия

description UTF8String (SIZE (1 .. 256) --- описание

}

terminationCausesRecords TAGGED ::= {

OID { sorm-report-dictionary-termination-causes }

DATA SEQUENCE OF TerminationCausesRecord

}

TerminationCausesRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

termination-cause-id INTEGER (0 .. 16384), --- код причины

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL, --- время конца действия

description UTF8String (SIZE (1 .. 256), --- описание

network-type NetworkType --- тип сети связи

}

ipNumberingPlanRecords TAGGED ::= {

OID { sorm-report-dictionary-ip-numbering-plan }

DATA SEQUENCE OF IpNumberingPlanRecord }

IpNumberingPlanRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или филиала

description UTF8String (SIZE (1 .. 256), --- описание назначения диапазона

network-address IPAddress, --- подсеть

network-mask IPMask, --- маска подсети

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL --- время конца действия

}

telephoneNumberingPlanRecords TAGGED ::= {

OID { sorm-report-dictionary-phone-numbering-plan }

DATA SEQUENCE OF TelephoneNumberingPlanRecord

}

TelephoneNumberingPlanRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

iso-3166-alpha-2 UTF8String (SIZE (2), --- 2-х символьная аббревиатура страны

iso-3166-alpha-3 UTF8String (SIZE (3), --- 3-х символьная аббревиатура страны

country-code UTF8String (SIZE (3), --- международный код страны

national-significant-number UTF8String (SIZE (14), --- номерной телефонный префикс оператора связи, включая код зоны

area-code-length INTEGER (0 .. 6), --- длина кода зоны в телефонном префиксе оператора связи

min-subscr-nr-length INTEGER (1 .. 15), --- минимальная длина абонентского номера, символов (national-significant-number + min-subscr)

max-subscr-nr-length INTEGER (1 .. 15), --- максимальная длина абонентского номера, символов (national-significant-number + max-subscr)

utc-min INTEGER (-12 .. 12), --- минимальный часовой пояс

utc-max INTEGER (-12 .. 12), --- максимальный часовой пояс

destination UTF8String (SIZE (2 .. 256), --- страна

operator-type-id NetworkType, --- тип сети связи оператора

capacity-from NumericString (SIZE (1 .. 15), --- нижняя граница диапазона выданных номеров (от)

capacity-to NumericString (SIZE (1 .. 15), --- верхняя граница диапазона выданных номеров (до)

capacity-size INTEGER (1 .. 10000000), --- количество выделенных номеров в диапазоне (емкость)

location UTF8String (SIZE (0 .. 256), --- текстовое описание местоположения оператора связи

registrar UTF8String (SIZE (0 .. 256), --- наименование оператора связи

range-activation DateAndTime, --- дата и время начала действия номерной емкости

mobile-country-code NumericString (SIZE(3), --- MCC

mobile-network-code NumericString (SIZE(3), --- MNC

range-deactivation [0] DateAndTime OPTIONAL, --- дата и время завершения действия номерной емкости

range-status [1] UTF8String (SIZE (1 .. 128) OPTIONAL,--- текущее состояние номерной емкости

description [2] UTF8String (SIZE (1 .. 256) OPTIONAL, --- расшифровка оказываемых услуг связи по номерной емкости

operating-company-number [3] UTF8String (SIZE (0 .. 4) OPTIONAL --- международный идентификатор оператора связи

}

OID {sorm-report-dictionary-doc-types}

}

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL, --- время конца действия

description UTF8String (SIZE (1 .. 256) --- описание (наименование)

}

ipDataPointsRecords TAGGED ::= {

OID { sorm-report-dictionary-ip-data-points }

DATA SEQUENCE OF IpDataPointRecord

}

IpDataPointRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

point-id INTEGER (0 .. 1000), --- идентификатор точки подключения

description UTF8String (SIZE (1 .. 256), --- описание (наименование) точки подключения

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL --- время конца действия

}

specialNumbersRecords TAGGED ::= {

OID { sorm-report-dictionary-special-numbers }

DATA SEQUENCE OF SpecialNumberRecord

}

SpecialNumberRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

directory-number UTF8String (SIZE (1 .. 32), --- специальный номер

description UTF8String (SIZE (1 .. 256), --- описание (наименование, назначение) специального номера

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL, --- время конца действия

network-address IPAddress OPTIONAL --- адрес в сети передачи данных

}

bunchesMapRecords TAGGED ::= {

OID { sorm-report-dictionary-bunches-map }

DATA SEQUENCE OF BunchesMapRecord

}

BunchesMapRecord ::= SEQUENCE {

a-bunch BunchMapPoint, --- пара коммутатор/пучок в связи

b-bunch BunchMapPoint, --- пара коммутатор/пучок в связи

begin-time DateAndTime, --- время начала действия связи

end-time DateAndTime OPTIONAL--- время конца действия связи

}

BunchMapPoint ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или филиала

switch-id UTF8String (SIZE (1 .. 128), --- идентификатор коммутатора

bunch-id Bunch --- идентификатор пучка коммутатора

}

mobileSubscriberIdenityPlanRecords TAGGED ::= {

OID { sorm-report-dictionary-mobile-subscriber-identity-plan }

DATA SEQUENCE OF MobileSubscriberIdenityPlanRecord

}

MobileSubscriberIdenityPlanRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

mcc NumericString (SIZE(3), - --- код страны

mnc NumericString (SIZE(3), --- код оператора связи

area-code NumericString (SIZE(3 .. 10), --- код зоны/региона

capacity-from NumericString (SIZE (0 .. 7), --- нижняя граница диапазона (от)

capacity-to NumericString (SIZE (0 .. 7 ), --- верхняя граница диапазона (до)

capacity-size INTEGER (1 .. 10000000), --- количество выделенных в диапазоне (емкость)

description UTF8String (SIZE (2 .. 255), --- описание, назначение

region UTF8String (SIZE (1 .. 128), --- область

city UTF8String (SIZE (1 .. 128), --- город, поселок, деревня

range-activation DateAndTime, --- дата и время начала действия номерной емкости

range-deactivation [0] DateAndTime OPTIONAL, --- дата и время завершения действия номерной емкости

range-status [1] UTF8String (SIZE (2 .. 128) OPTIONAL --- текущее состояние номерной емкости

}

-- Тип абонента

PhoneAbonentType ::= ENUMERATED {

local (0), -- абонент данного коммутатора

network (1), -- абонент сети связи

roamer (2), -- абонент сети подвижной радиосвязи, получающий услуги связи за пределами региона регистрации (роумер)

undefined (3)

}

--- коды сигнальных точек OPC/DPC

signalPointCodes TAGGED ::= {

OID {sorm-report-dictionary-signal-point-codes}

DATA SEQUENCE OF SignalPointCodesRecord

}

SignalPointCodesRecord ::= SEQUENCE {

ss7-point-code UTF8String (SIZE (1 .. 32), --- идентификатор сигнальной точки (OPC/DPC)

switch-id UTF8String (SIZE (1 .. 128), --- идентификатор коммутатора

begin-time DateAndTime, --- время начала назначения пучка

end-time DateAndTime OPTIONAL, --- время конца назначения пучка

description UTF8String (SIZE (1 .. 256) --- расшифровка пучка

}

END

4. Filters.asn

Filters DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS filterMessage;

IMPORTS TAGGED,

sorm-message-filter

FROM Classification

IPAddress,

IPPort,

IPMask,

PortRange

FROM NetworkIdentifiers

TelcoList

FROM Dictionaries;

filterMessage TAGGED ::= {

OID sorm-message-filter

DATA CHOICE {

create-filter-request [0] CreateFilterRequest,

create-filter-response [1] CreateFilterResponse,

drop-filter-request [2] DropFilterRequest,

drop-filter-response [3] DropFilterResponse,

get-filters-request [4] GetFiltersRequest,

get-filters-response [5] GetFiltersResponse

}

}

CreateFilterRequest ::= SEQUENCE {

filter-id FilterID,

filter-parameters FilterParameters,

allow-only-mode BOOLEAN DEFAULT TRUE,

telcos TelcoListOPTIONAL --- cписок филиалов\узлов, на которых устанавливается фильтр (для случаев, когда разные узлы ПД сведены в одну ИСБД с разными telco_id)

}

CreateFilterResponse ::= SEQUENCE {

filter-id FilterID,

successful BOOLEAN,

error-description UTF8String (SIZE (1 .. 256) OPTIONAL

}

DropFilterRequest ::= FilterID

DropFilterResponse ::= SEQUENCE {

filter-id FilterID,

successful BOOLEAN,

error-description UTF8String (SIZE (1 .. 256) OPTIONAL

}

GetFiltersRequest ::= NULL

GetFiltersResponse ::= SEQUENCE OF FilterResponse

FilterParameters ::= SEQUENCE OF FilterParameter

FilterParameter ::= CHOICE {

single-criteria [0] FilterSingleCriteria, --- одиночный критерий

pair-criteria [1] FilterPairCriteria --- два критерия объединенные по логическому "И"

}

FilterPairCriteria ::= SEQUENCE {

criteria-a [0] FilterSingleCriteria, --- Критерий 1

criteria-b [1] FilterSingleCriteria --- Критерий 2

}

FilterSingleCriteria ::= CHOICE {

ip-address [0] IPAddress, --- IP адрес

ip-port [1] IPPort, --- IP порт

port-range [2] PortRange, --- диапазон TCP/UDP портов

vlan [3] INTEGER (0 .. 4096), --- 802.1Q метка (VLAN)

mac [4] OCTET STRING (SIZE (6), --- MAC-адрес

mpls-tag [5] INTEGER, --- MPLS-метка

sni [6] UTF8String (SIZE (1 .. 128), --- SSL/TLS server name

http-content-type [7] UTF8String (SIZE (1 .. 64), --- тип содержимого поля Conten-typeHTTP-заголовка

protocol-group [8] INTEGER, --- группа прикладных протоколов (значение 1 - torrent-протоколы передачи, 2 - протоколы потокового медиаконтента, 3 - шифрованные протоколы)

ip-protocol-number [9] INTEGER, --- номер интернет-протокола по RFC1700

http-cookie [10] UTF8String, --- HTTP Cookie,

http-uri [11] UTF8String, --- HTTP URI

ip-filter-mask [12] IPFilterMask --- IP маска

}

IPFilterMask ::= SEQUENCE {

mask IPMask, --- маска IP/сети

mask-length INTEGER --- длина маски

}

FilterResponse ::= SEQUENCE {

filter-id FilterID,

filter-parameters FilterParameters,

allow-only-mode BOOLEAN,

telcos TelcoListOPTIONAL ---список филиалов, на которых установлен конкретный фильтр

}

FilterID ::= INTEGER

END

5. Locations.asn

Locations DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS

Location,

GeoLocation;

IMPORTS

NetworkPeerInfo FROM NetworkIdentifiers;

Location ::= CHOICE {

mobile-location [0] MobileLocation, --- местоположение мобильного абонента

wireless-location [1] WirelessLocation, --- местоположение абонента мобильной сети передачи данных

geo-location [2] GeoLocation, --- географическое местоположение

ip-location [3] IpLocation --- IP местоположение

}

MobileLocation ::= SEQUENCE {

lac INTEGER (0 .. 65535), --- код зоны

cell INTEGER (0 .. 100000000000), --- идентификатор базовой станции

ta [0] INTEGER (0 .. 63) OPTIONAL, --- Timing Advance (временная компенсация)

mcc [1] NumericString (SIZE(3) OPTIONAL, --- код страны

mnc [2] NumericString (SIZE(3) OPTIONAL --- код оператора связи

}

WirelessLocation ::= SEQUENCE {

cell UTF8String (SIZE (1 .. 64), --- идентификатор сектора

mac OCTET STRING (SIZE (6) --- MAC-адрес сетевого оборудования сектора

}

GeoLocation ::= SEQUENCE {

latitude-grade REAL, --- широта в формате [целое_число_градусов].[стотысячные_доли_градуса]

longitude-grade REAL, --- долгота в формате [целое_число_градусов].[стотысячные_доли_градуса]

projection-type ENUMERATED { --- тип проекции координат

wgs84 (0),

utm (1),

sgs85 (2)

}

}

IpLocation ::= NetworkPeerInfo

END

6. Management.asn

Management DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS managementMessage;

IMPORTS TAGGED,

sorm-message-management

FROM Classification;

managementMessage TAGGED ::= {

OID { sorm-message-management }

DATA CHOICE {

request [0] ManagementRequest,

response [1] ManagementResponse

}

}

--- тип сообщения "команда управления ИС СОРМ"

ManagementRequest ::= CHOICE {

get-structure [0] GetStructureRequest, --- запрос на получение структуры ИС СОРМ - КТС и модулей СПО

get-module-config [1] GetModuleConfigRequest, --- запрос на получение конфигурации КТС/модуля СПО

set-module-config [2] SetModuleConfigRequest, --- запрос на изменение конфигурации КТС/модуля СПО

check-module [3] CheckModuleRequest, --- запрос на получение состояния модуля

get-module-types [4] GetModuleTypesRequest --- запрос на получение типов модулей КТС и СПО

}

--- запрос на получение структуры ИС СОРМ - КТС и модулей СПО

GetStructureRequest ::= NULL

--- запрос на получение конфигурации КТС/модуля СПО

GetModuleConfigRequest::= CHOICE {

hw-modules-list [0] RequestedHardwareModules, --- перечень идентификаторов узлов КТС ИС СОРМ

sw-modules-list [1] RequestedSoftwareModules --- перечень идентификаторов модулей СПО ИС СОРМ

}

RequestedHardwareModules ::= SEQUENCEOFModuleId--- перечень идентификаторов узлов КТС ИС СОРМ

RequestedSoftwareModules ::= SEQUENCEOFModuleId --- перечень идентификаторов модулей СПО ИС СОРМ

--- запрос на изменение конфигурации КТС/модуля СПО

SetModuleConfigRequest::= SEQUENCE {

module-id ModuleId, --- идентификатор конфигурируемого модуля

module-config ConfiguratedModule --- устанавливаемая в модуль конфигурация

}

ConfiguratedModule ::= CHOICE {

sw-module [0] SormSoftwareModule, --- для узла СПО

hw-module [1] SormHardwareModule --- для узла КТС

}

--- запрос на получение состояния модуля

CheckModuleRequest::= RequestedModulesList

RequestedModulesList ::= CHOICE {

hw-modules [0] RequestedHardwareModules, --- идентификаторы узлов КТС, для которых запрашивается состояние

sw-modules [1] RequestedSoftwareModules --- идентификаторы модулей ИС СОРМ, для которых запрашивается состояние

}

--- запрос на получение типов модулей КТС и СПО

GetModuleTypesRequest ::= NULL

--- уникальный идентификатор КТС/модуля СПО ИС СОРМ

ModuleId ::= OCTET STRING (SIZE (8)

--- параметр модуля

ModuleParameter ::= SEQUENCE {

parameter-name UTF8String (SIZE (1 .. 256), --- наименование параметра

read-only BOOLEAN, --- контролируемый или измеряемый параметр

parameter-value ParameterValue --- значение параметра

}

--- варианты значений параметров

ParameterValue ::= CHOICE {

string [0] UTF8String (SIZE (1 .. 256),

integer [1] INTEGER (0 .. 999999999),

boolean [2] BOOLEAN

}

ModuleParameters ::= SEQUENCE OF ModuleParameter

SormSoftwareModule ::= SEQUENCE {

module-id ModuleId, --- уникальный идентификатор данного модуля

hardware-module-id ModuleId, --- идентификатор КТС, на котором работат данный блок модуля СПО

block-name INTEGER (0 .. 1024), --- номерблокаСПОмодуля

module-name UTF8String (SIZE (1 .. 512), --- наименование модуля

module-type INTEGER (1 .. 512), --- идентификатор типа модуля

module-parameters ModuleParameters, --- список параметров модуля

sub-modules-list SubmodulesList OPTIONAL --- субмодули

}

SubmodulesList ::= SEQUENCE OF SormSoftwareModule

SormHardwareModule ::= SEQUENCE {

module-id ModuleId, --- уникальный идентификатор данного модуля

block-name INTEGER (0 .. 1024), --- номер блока КТС

module-name UTF8String (SIZE (1 .. 512), --- наименование модуля

module-parameters HwParameterGroups --- значение группы параметров КТС

}

HwParameterGroup ::= SEQUENCE {

group-name UTF8String (SIZE (1 .. 512), --- наименование группы параметров для КТС

module-parameters ModuleParameters --- перечень параметров для КТС

}

HwParameterGroups ::= SEQUENCE OF HwParameterGroup

SormSoftwareModules ::= SEQUENCE OF SormSoftwareModule

SormHardwareModules ::= SEQUENCE OF SormHardwareModule

--- тип сообщения "ответ на команду управления ИС СОРМ"

ManagementResponse ::= CHOICE {

get-structure [0] GetStructureResponse, --- ответ на запрос получения структуры ИС СОРМ - КТС и модулей СПО

get-module-config [1] GetModuleConfigResponse, --- ответ на запрос получения конфигурации КТС/модуля СПО

set-module-config [2] SetModuleConfigResponse, --- ответ на запрос изменения конфигурации КТС/модуля СПО

check-module [3] CheckModuleResponse, --- ответ на запрос получения состояния модуля

get-module-types [4] GetModuleTypesResponse --- ответ на запрос получения типов модулей КТС и СПО

}

--- ответ на запрос получения структуры ИС СОРМ - КТС и модулей СПО

GetStructureResponse ::= SEQUENCE {

hw-modules SormHardwareModules, --- перечень всех узлов КТС

sw-modules SormSoftwareModules --- перечень всех модулей СПО ИС СОРМ

}

--- ответ на запрос получения конфигурации КТС/модуля СПО

GetModuleConfigResponse ::= SEQUENCE {

hw-modules SormHardwareModules, --- конфигурации запрошенных узлов КТС

sw-modules SormSoftwareModules --- конфигурации запрошенных модулей СПО ИС СОРМ

}

--- отчет на запрос изменения конфигурации КТС/модуля СПО

SetModuleConfigResponse::= ConfiguratedModule --- установленная в модуль конфигурация

--- ответ на запрос получения состояния модуля

CheckModuleResponse ::= CHOICE {

hw-modules [0] SormHardwareModules, --- текущее состояние запрошенных узлов КТС

sw-modules [1] SormSoftwareModules --- текущее состояние запрошенных модулей СПО ИС СОРМ

}

--- ответ на запрос получения типов модулей КТС и СПО

GetModuleTypesResponse ::= SEQUENCE OF ModuleType

ModuleType ::= SEQUENCE {

module-type INTEGER (1 .. 512), --- идентификатор типа модуля

type-description UTF8String ( SIZE (1 .. 128) --- расшифровка типа модуля

}

END

7. NetworkIdentifiers.asn

NetworkIdentifiers DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS Bunch, DataNetworkEquipment, IPAddress, IPPort, IPMask, NetworkPeerInfo, PortRange, NetworkType, DataVoipNumber, IMProtocol, VoipProtocol, HttpMethod, EntranceEventType;

--- идентификаторы пучка

Bunch ::= CHOICE {

gsm [0] UTF8String (SIZE (1 .. 32), --- идентификатор пучка для GSM-Сети

cdma-umts [1] DataNetworkEquipment --- идентификатор пучка для W/CDMA, UMTS-сети

}

-- идентификатор оборудования сети передачи данных

DataNetworkEquipment ::= CHOICE {

mac [0] OCTET STRING (SIZE (6), --- MAC-адрес оконечного сетевого оборудования

atm [1] DataNetworkATM

}

--- АТМ адрес (SDH/PDH сети)

DataNetworkATM ::= SEQUENCE {

vpi OCTET STRING (SIZE (1), --- номер виртуального пути сети АТМ (VPI)

vci OCTET STRING (SIZE (2) OPTIONAL --- номер виртуального канала сети АТМ (VCI)

}

--- тип сети связи (стандарт)

NetworkType ::= ENUMERATED {

not-specified(0), --- неконкретизированный стандарт

mob-gsm(1), --- сеть мобильной связи стандарта GSM

mob-cdma(2), --- сеть мобильной связи стандарта CDMA

fix-pstn(3), --- ТФоП-сеть

data-ip(4), --- стационарные сети передачи данных

data-srv(5), --- ТМС-службы

data-ip-mob(6), --- мобильная сеть передачи данных

data-ip-wifi (7), --- беспроводная сеть передачи данных стандарта WiFi

data-ip-max (8), --- беспроводная сеть передачи данных стандарта WiMAX

paging(9), --- персональный радиовызов

voip(10) --- сеть передачи голосовой информации посредством сети передачи данных

}

--- IP-адрес

IPAddress ::= CHOICE {

ipv4 [0] IPV4Address, --- IPv4-адрес

ipv6 [1] IPV6Address --- IPv6-адрес

}

-- IPv4-адрес

IPV4Address ::= OCTET STRING (SIZE (4) -- IP адрес (4 байта)

-- IPv6-адрес

IPV6Address ::= OCTET STRING (SIZE (16) -- IP адрес (16 байт)

--- IP/UDP/TCP-порт

IPPort ::= OCTET STRING (SIZE (2) -- порт

--- маска IP-подсети

IPMask ::= CHOICE {

ipv4-mask [0] IPV4Mask, --- IPv4-маска

ipv6-mask [1] IPV6Mask --- IPv6-маска

}

--- информация об участнике соединения передачи данных

NetworkPeerInfo ::= SEQUENCE {

ip-address IPAddress, --- IP-адрес

ip-port IPPort OPTIONAL --- IP-порт

}

PortRange ::= SEQUENCE {

port-from [0] IPPort,

port-to [1] IPPort

}

--- IPv4-маска

IPV4Mask ::= OCTET STRING (SIZE (4)

--- IPv6-маска

IPV6Mask ::= OCTET STRING (SIZE (16)

-- Номер телефона VoIP-абонента

DataVoipNumber ::= SEQUENCE {

original-number UTF8String (SIZE (1 .. 2048)OPTIONAL,--- исходный номер абонента

translated-number [0] UTF8String (SIZE (1 .. 32) OPTIONAL, --- номер абонента после преобразования

e164-number [1] UTF8String (SIZE (1 .. 15) OPTIONAL --- номер абонента в E164-сети

}

VoipProtocol ::= ENUMERATED {

sip(0),

h323(1),

iax(2),

skype(100)

}

IMProtocol ::= ENUMERATED { --- протокол, при помощи которого отправлены сообщения

icq(0),

aol(1),

msn(2),

yahoo(3),

web-mail(4), --- передача сообщения пользователем посредством почтового веб-сервера

skype(5),

irc(6),

jabber(7),

mra(8),

tencent(9),

airway (10),

mms(98),

sms(99),

vk(100),

facebook(101),

myspace(102),

twitter(103),

odnoklassniki(104),

moymir(105),

zello(106),

other(151),

whatsapp(152),

viber(153),

telegram(154),

rezerv5(155),

rezerv6(156),

rezerv7(157),

rezerv8(158),

rezerv9(159),

rezerv10(160),

rezerv11(161),

rezerv12(162),

rezerv13(163),

rezerv14(164),

rezerv15(165),

rezerv16(166),

rezerv17(167),

rezerv18(168),

rezerv19(169),

rezerv20(170)

}

--- http метод

HttpMethod ::= ENUMERATED {

get(0),

post(1),

put(2),

delete (3)

}

--- Тип события входа в личный кабинет

EntranceEventType ::= ENUMERATED {

registration(0), --- регистрация

logon(1), --- вход

logon-failure(2), --- неудачный вход

logoff(3), --- выход

add-service(4), --- заказ услуги

update-service(5), --- изменение услуги

del-service(6), --- прекращение услуги

add-domain(7), --- подключение/покупка домена

del-domain(8), --- удаление домена

create-support-ticket(9), --- создание запроса в службу поддержки

update-profile(10), --- обновления информации в профиле

other(11) --- иное

}

END

8. ReportedIdentifiers.asn

ReportedIdentifiers DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS

ReportedIdentifier

IMPORTS TAGGED,

sorm-report-identifier-pager,

sorm-report-identifier-pstn,

sorm-report-identifier-gsm,

sorm-report-identifier-cdma,

sorm-report-identifier-data-network,

sorm-report-identifier-voip

FROM Classification

IPAddress, DataNetworkEquipment, IPMask

FROM NetworkIdentifiers;

ReportedIdentifier ::= SEQUENCE {

id TAGGED.&id ({ReportedIdentifierVariants}),

data TAGGED.&Data ({ReportedIdentifierVariants}{@id})

}

--- варианты идентификаторов отчёта

ReportedIdentifierVariants TAGGED ::= {

reportedPagerIdentifier --- идентификатор сети персонального радиовызова

| reportedPstnIdentifier --- идентификатор ТФОП

| reportedGsmIdentifier --- идентификатор GSM

| reportedCdmaIdentifier --- идентификатор CDMA

| reportedDataNetworkIdentifier --- идентификатор сети передачи данных

| reportedVoipIdentifier

}

--- идентификатор сети персонального радиовызова

reportedPagerIdentifier TAGGED ::= {

OID { sorm-report-identifier-pager }

DATA ReportedPagerIdentifier

}

ReportedPagerIdentifier ::= NumericString (SIZE (2 .. 18)

--- идентификатор телефонной сети общего пользования

reportedPstnIdentifier TAGGED ::= {

OID { sorm-report-identifier-pstn }

DATA ReportedPstnIdentifier

}

ReportedPstnIdentifier ::= SEQUENCE {

directory-number UTF8String (SIZE (1 .. 32), --- телефонный номер в международном формате

internal-number NumericString (SIZE (1 .. 32) OPTIONAL --- дополнительный внутренний номер, если есть

}

-- идентификатор абонента GSM

reportedGsmIdentifier TAGGED ::= {

OID { sorm-report-identifier-gsm }

DATA ReportedGsmIdentifier

}

ReportedGsmIdentifier ::= SEQUENCE {

directory-number UTF8String (SIZE (1 .. 32), --- телефонный номер в международном формате

imsi NumericString (SIZE (2 .. 18), --- идентификатор мобильного абонента

imei [0] NumericString (SIZE (2 .. 18) OPTIONAL, --- идентификатор мобильной станции

icc [1] NumericString (SIZE (10 .. 20) OPTIONAL --- идентификатор SIM-карты абонента

}

-- идентификатор абонента CDMA

reportedCdmaIdentifier TAGGED ::= {

OID { sorm-report-identifier-cdma }

DATA ReportedCdmaIdentifier

}

ReportedCdmaIdentifier ::= SEQUENCE {

directory-number UTF8String (SIZE (1 .. 32), --- телефонный номер в международном формате

imsi NumericString (SIZE (2 .. 18), --- идентификатор мобильного абонента

esn [0] NumericString (SIZE (2 .. 18) OPTIONAL, --- идентификатор мобильной станции

min [1] NumericString (SIZE (2 .. 18) OPTIONAL,--- идентификатор мобильного абонента (CDMA)

icc [2] NumericString (SIZE (10 .. 20) OPTIONAL --- идентификатор SIM-карты абонента

}

reportedDataNetworkIdentifier TAGGED ::= {

OID { sorm-report-identifier-data-network }

DATA ReportedDataNetworkIdentifier

}

ReportedDataNetworkIdentifier ::= SEQUENCE {

user-equipment [0] DataNetworkEquipment OPTIONAL, --- идентификатор пользовательского оборудования

login [1] UTF8String (SIZE (1 .. 128) OPTIONAL, --- имя пользоавателя - login

ip-address [2] IPAddress OPTIONAL, --- IP адрес

e-mail [3] UTF8String (SIZE (1 .. 256) OPTIONAL, --- адрес электронной почты

pin [4] NumericString (SIZE (2 .. 20) OPTIONAL, --- PIN

phone-number [5] UTF8String (SIZE (2 .. 32) OPTIONAL, --- номер телефона

user-domain [6] UTF8String (SIZE (2 .. 256) OPTIONAL,--- пользовательский домен

reserved [7] UTF8String (SIZE (1 .. 256) OPTIONAL,--- резерв

ip-mask [8] IPMask OPTIONAL

}

reportedVoipIdentifier TAGGED ::= {

OID { sorm-report-identifier-voip }

DATA ReportedVoipIdentifier

}

ReportedVoipIdentifier ::= SEQUENCE {

ip-address [0] IPAddress OPTIONAL, --- IP-адрес абонента

originator-name [1] UTF8String (SIZE (1 .. 512) OPTIONAL, --- общедоступное имя инициатора связи

calling-number [2] UTF8String (SIZE (1 .. 32) OPTIONAL --- номер вызывающего абонента

}

END

9. ReportsAbonents.asn

ReportsAbonents DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS AbonentsReport;

IMPORTS TAGGED,

sorm-report-abonent-abonent,

sorm-report-abonent-service,

sorm-report-abonent-person,

sorm-report-abonent-organization

FROM Classification

DateAndTime

FROM Sorm

TelcoID

FROM Dictionaries

ReportedIdentifier

FROM ReportedIdentifiers

NetworkType,

NetworkPeerInfo,

IPAddress

FROM NetworkIdentifiers

AddressType,

ReportedAddresses,

ReportedAddress

FROM Addresses;

AbonentsReport ::= SEQUENCE {

id TAGGED.&id ({AbonentsReportVariants}),

data TAGGED.&Data({AbonentsReportVariants}{@id})

}

AbonentsReportVariants TAGGED ::= {

reportAbonent | --- информация об абоненте

reportService --- информация об сервисах

}

reportAbonent TAGGED ::= {

OID sorm-report-abonent-abonent

DATA SEQUENCE OF AbonentsRecord

}

AbonentsRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

idents ReportedIdentifier, --- идентификаторы абонента

contract-date DateAndTime, --- дата и время заключения договора

contract UTF8String (SIZE (1 .. 64), --- номер договора

actual-from DateAndTime, --- дата и время начала интервала времени, на котором актуальна информация по текущим idents+abonent

actual-to DateAndTime, --- дата и время окончания интервала времени, на котором актуальна информация по текущим idents+abonent

abonent AbonentInfo, --- информация об абоненте (клиенте оператора связи)

status ActiveStatus, --- текущий статус абонента (подключен/отключен)

attach [0] DateAndTime OPTIONAL, --- дата и время подключения услуги

detach [1] DateAndTime OPTIONAL, --- дата и время отключения услуги

services [3] ActiveServices OPTIONAL, --- активированные услуги

line-data [4] LineData OPTIONAL, --- линейные данные (кросс, рамка, пара и т.д.)

standard [5] Standard OPTIONAL, --- стандарт связи

addresses [6] ReportedAddresses OPTIONAL, --- адреса абонента

last-ip [8] NetworkPeerInfo OPTIONAL, --- последний IP-адрес абонента, зафиксированный при авторизации в системах IP-телефонии

last-ip-date [9] DateAndTime OPTIONAL --- дата фиксации последнего IP-адреса абонента

}

ActiveServices ::= SEQUENCE OF AbonentService --- набор подключенных ДВО

ActiveStatus ::= ENUMERATED {

active (0), --- активный

not-active (1) --- не активный

}

LineData ::= SEQUENCE {

object [0] UTF8String (SIZE (1 .. 128) OPTIONAL, --- описание объекта связи

cross [1] UTF8String (SIZE (1 .. 128) OPTIONAL, --- описание кросса

block [2] UTF8String (SIZE (1 .. 128) OPTIONAL, --- описние блока

pair [3] UTF8String (SIZE (1 .. 128) OPTIONAL, --- описание пары

reserved [4] UTF8String (SIZE (1 .. 128) OPTIONAL --- резерв

}

AbonentInfo ::= SEQUENCE {

id TAGGED.&id ({AbonentsInfoVariants}),

data TAGGED.&Data({AbonentsInfoVariants}{@id})

}

AbonentsInfoVariants TAGGED ::= {

abonentPerson | --- информация об абоненте - физическом лице

abonentOrganization --- информация об абоненте - юридическом лице

}

--- Физическое лицо

abonentPerson TAGGED ::= {

OID { sorm-report-abonent-person }

DATA AbonentPerson

}

AbonentPerson ::= SEQUENCE {

name-info PersonNameInfoReport, --- ФИО

birth-date GeneralizedTime OPTIONAL, --- дата рождения

passport-info PassportInfoReport, --- паспортные данные

bank [1] UTF8String (SIZE(1 .. 256) OPTIONAL, --- банк абонента (используемый при расчетах с оператором связи)

bank-account [2] UTF8String (SIZE(1 .. 30) OPTIONAL, --- счет абонента в банке (используемый при расчетах с оператором связи)

e-mail [3] UTF8String (SIZE (1 .. 256) OPTIONAL, --- адрес электронной почты

phone-contact [4] UTF8String (SIZE (1 .. 128) OPTIONAL, --- контактные телефоны

ssid [5] UTF8String (SIZE (1 .. 256) OPTIONAL, --- SSID абонентской WiFI-точки доступа

mac [6] OCTET STRING (SIZE (6) OPTIONAL --- MAC-адрес абонентской WiFI-точки доступа

}

PersonNameInfoReport ::= CHOICE {

struct-name[0] PersonStructNameInfoReport, --- структурированное ФИО

unstruct-name[1] UTF8String(SIZE(1 .. 1024) --- неструктурированное ФИО

}

PersonStructNameInfoReport ::= SEQUENCE {

given-name UTF8String (SIZE (1 .. 256), --- имя

initial UTF8String (SIZE (1 .. 256), --- отчество

family-name UTF8String (SIZE (1 .. 256) --- фамилия

}

PassportInfoReport::= SEQUENCE {

ident-card-info IdentCardInfoReport, --- описание удостоверения личности

}

IdentCardInfoReport ::= CHOICE {

struct-info [0] IdentCardStructInfoReport, --- структурированная информация

unstruct-info [1] UTF8String (SIZE (1 .. 1024) --- неструктурированная информация

}

IdentCardStructInfoReport ::= SEQUENCE {

ident-card-serial UTF8String (SIZE (1..16), --- серия удостоверения личности

ident-card-number UTF8String (SIZE (1..16), --- номер удостоверения личности

ident-card-description UTF8String (SIZE (1 .. 512) --- когда и кем выдано

}

abonentOrganization TAGGED ::= {

OID { sorm-report-abonent-organization }

DATA AbonentOrganization

}

AbonentOrganization ::= SEQUENCE {

full-name UTF8String (SIZE (1 .. 256), --- полное наименование

inn UTF8String (SIZE(1 .. 64), --- ИНН

contact [0] UTF8String (SIZE (1 .. 128) OPTIONAL,--- контактное лицо

phone-fax [1] UTF8String (SIZE (1 .. 128) OPTIONAL,--- контактные телефоны, факс

internal-users [2] InternalUsers OPTIONAL, --- список внутренних пользователей, выдается только при

--- заполнении аналогичного поля в запросе формирования

--- задачи на поиск идентификаторов абонентов или при заполнении

--- поля internal-number в запросе на принадлежность идентификаторов

--- операторам связи

bank [3] UTF8String (SIZE(1 .. 256) OPTIONAL, --- банк абонента (используемый при расчетах с оператором связи)

bank-account [4] UTF8String (SIZE(1 .. 30) OPTIONAL, --- счет абонента в банке (используемый при расчетах с оператором связи)

e-mail [5] UTF8String (SIZE (1 .. 256) OPTIONAL, --- адрес электронной почты

ssid [6] UTF8String (SIZE (1 .. 256) OPTIONAL, --- SSID абонентской WiFI-точки доступа

mac [7] OCTET STRING (SIZE (6) OPTIONAL --- MAC-адрес абонентской WiFI-точки доступа

}

InternalUsers ::= SEQUENCE OF InternalUsersRecord -- набор записей, описывающих внутренних пользователей абонента -

-- юридического лица

InternalUsersRecord ::= SEQUENCE {

user-name UTF8String (SIZE (1 .. 64), --- строка - описатель внутреннего пользователя

internal-number NumericString (SIZE (1 .. 64) --- внутренний номер

}

Standard ::= NetworkType --- перечень стандартов связи

reportService TAGGED ::= {

OID sorm-report-abonent-service

DATA SEQUENCE OF AbonentService

}

AbonentService ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

service-id INTEGER (0 .. 4294967295), --- идентификатор услуги

idents ReportedIdentifier OPTIONAL, --- идентификаторы абонента

contract UTF8String (SIZE (1 .. 64), --- номер договора

begin-time DateAndTime, --- дата и время начала оказания услуги

end-time DateAndTime, --- дата и время окончания оказания услуги

parameter UTF8String (SIZE(1..256) OPTIONAL --- индивидуальные параметры настройки услуги абонента

}

END

10. Reports.asn

Reports DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS reportMessage,

Acknowledgement;

IMPORTS TAGGED,

sorm-message-report

FROM Classification

Message, MessageID, DateAndTime

FROM Sorm

TaskID

FROM Tasks

DictionaryReport

FROM Dictionaries

ConnectionsReport

FROM ReportsConnections

LocationReport

FROM ReportsLocations

PaymentsReport

FROM ReportsPayments

PresenseReport

FROM ReportsPresense

NonFormalizedReport

FROM ReportsNonFormalized

AbonentsReport

FROM ReportsAbonents

DataContentReport

FROM ReportsDataContent;

reportMessage TAGGED ::= {

OID { sorm-message-report }

DATA CHOICE {

report [0] Report, --- тип сообщения "отчет"

ack [1] Acknowledgement --- тип сообщения "подтверждение"

}

}

-- Блок данных сообщения типа "отчет"

Report ::= SEQUENCE {

request-id MessageID, --- идентификатор запроса, запросивший отчёт

task-id TaskID, --- идентификатор задачи, сгенерировавшей данный отчет

total-blocks-number INTEGER, --- общее количество блоков в отчете

block-number INTEGER, --- порядковый номер текущего блока

report-block ReportDataBlock --- блок данных отчета

}

-- Подтверждение приёма блока, передаётся с номером соощения соответствующему номеру сообщения блока отчёта

Acknowledgement ::= SEQUENCE {

successful BOOLEAN, --- признак успешного приёма блока

broken-record INTEGER OPTIONAL, --- номер записи в отчете, обработанной на ПУ с ошибкой

error-description UTF8String (SIZE(1..1024) OPTIONAL --- описание ошибки приёма блока в произвольной форме

}

ReportDataBlock ::= CHOICE {

dictionary [0] DictionaryReport, --- отчеты задач пополнения справочников (нормативно-справочная информация)

abonents [1] AbonentsReport, --- отчеты задач поисков по принадлежности абонентов

connections [2] ConnectionsReport, --- отчеты задач поисков по соединениям абонентов

locations [3] LocationReport, --- отчет задачи получения данных местоположения абонентов

payments [4] PaymentsReport, --- отчеты задач поисков по совершенным платежам

presense [6] PresenseReport, --- отчеты задач по запросу наличия в ИС СОРМ информации

nonFormalized [7] NonFormalizedReport, --- отчеты задач по обработке неформализованных данных

data-content [10] DataContentReport --- отчеты задач по получению содержимого потоков

}

END

11. ReportsConnections.asn

ReportsConnections DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS ConnectionsReport, CallsRecords;

IMPORTS DateAndTime

FROM Sorm

DataContentID

FROM Tasks

Location

FROM Locations

ReportedIdentifier

FROM ReportedIdentifiers

Bunch,

NetworkPeerInfo,

DataNetworkEquipment,

DataVoipNumber,

IPAddress,

IPMask,

VoipProtocol,

IMProtocol,

HttpMethod,

EntranceEventType

FROM NetworkIdentifiers

PhoneAbonentType

TelcoID

FROM Dictionaries

TAGGED,

sorm-report-connection-pager

sorm-report-connection-pstn

sorm-report-connection-mobile

sorm-report-connection-ipdr-header

sorm-report-connection-aaa-login

sorm-report-connection-resource

sorm-report-connection-email

sorm-report-connection-im

sorm-report-connection-voip

sorm-report-connection-file-transfer

sorm-report-connection-term-access

sorm-report-connection-raw-flows

sorm-report-connection-address-translations

sorm-report-connection-entrance

sorm-report-connection-sms

FROM Classification;

ConnectionsReport ::= CallsRecords

CallsRecords ::= SEQUENCE {

id TAGGED.&id ({ReportedCallsVariants}),

data TAGGED.&Data ({ReportedCallsVariants}{@id})

}

ReportedCallsVariants TAGGED ::= {

pagerRecord

| pstnRecord

| mobileRecord

| dataAAARecord

| dataEmailRecord

| dataImRecord

| dataFileTransferRecord

| dataTermAccessRecord

| dataRawFlowsRecord

| dataResourceRecord

| dataVoipRecord

| dataAddressTranslationRecord

| dataEntranceRecord

| smsRecord

}

-- Детализированные записи отправки пэйджинг-сообщений

pagerRecord TAGGED ::= {

OID { sorm-report-connection-pager }

DATA SEQUENCE OF PagerRecordContent

}

PagerRecordContent ::= SEQUENCE {

telco-id TelcoID --- идентификатор оператора связи или структурного подразделения

call-type-id INTEGER (0 .. 4294967295) --- тип соединения

connection-time DateAndTime --- дата и время передачи сообщения

info ReportedIdentifier --- идентификаторы абонента

in-bytes-count INTEGER (0 .. 1024) --- объем переданных данных

term-cause INTEGER (0 .. 16384) --- причина завершения соединения

}

-- Детализированные записи звонков абонентов ТФОП, вулючая неудавшиеся попытки соединений

pstnRecord TAGGED ::= {

OID { sorm-report-connection-pstn }

DATA SEQUENCE OF PstnRecordContent

}

PstnRecordContent ::= SEQUENCE {

telco-id TelcoID --- идентификатор оператора связи или структурного подразделения

begin-connection-time DateAndTime --- дата и время начала соединения

duration INTEGER (0 .. 86399) --- время соединения

call-type-id INTEGER (0 .. 4294967295) --- тип соединения

supplement-service-id INTEGER (0 .. 4294967295) --- ДВО при соединении

in-abonent-type PhoneAbonentType --- тип вызывающего абонента

out-abonent-type PhoneAbonentType --- тип вызываемого абонента

switch-id UTF8String (SIZE (1 .. 128) --- код коммутатора обслужившего соединение

inbound-bunch UTF8String (SIZE (1 .. 32) --- входящий пучок

outbound-bunch UTF8String (SIZE (1 .. 32) --- исходящий пучок

term-cause INTEGER (0 .. 16384) --- причина завершения соединения

phone-card-number [0] NumericString (SIZE (1.. 20) OPTIONAL--- номер телефонной карты

in-info [1] ReportedIdentifier OPTIONAL --- идентификаторы вызывающего абонента

dialed-digits [2] UTF8String (SIZE (1 .. 128) --- набранный номер вызываемого абонента

out-info [3] ReportedIdentifier OPTIONAL --- идентификаторы вызываемого абонента

forwarding-identifier [4] UTF8String (SIZE (2 .. 32) OPTIONAL, --- телефонный номер при переадресации

border-switch-id [5] UTF8String (SIZE (1 .. 128) OPTIONAL --- код пограничного коммутатора

message [10] UTF8String OPTIONAL --- текстовое содержание сообщения абонента

ss7-opc [11] UTF8String (SIZE (1 .. 32) OPTIONAL --- SS7 код точки отправления

ss7-dpc [12] UTF8String (SIZE (1 .. 32) OPTIONAL --- SS7 код точки назначения

data-content-id [13] DataContentID OPTIONAL --- идентификатор потока

}

-- Детализированные записи звонков мобильных абонентов, в т.ч. и неудавшиеся попытки соединений

-- Должны содержать также записи об SMS, в т.ч. и неудавшиеся попытки отправки

mobileRecord TAGGED ::= {

OID { sorm-report-connection-mobile }

DATA SEQUENCE OF MobileRecordContent

}

MobileRecordContent ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

begin-connection-time DateAndTime --- дата и время начала соединения

duration INTEGER (0 .. 86399) --- время соединения

call-type-id INTEGER (0 .. 4294967295) --- тип соединения

supplement-service-id INTEGER (0 .. 4294967295) --- ДВО при соединении

in-abonent-type PhoneAbonentType --- тип вызывающего абонента

out-abonent-type PhoneAbonentType --- тип вызываемого абонента

switch-id UTF8String (SIZE (1 .. 128) --- код коммутатора обслужившего соединении

term-cause INTEGER (0 .. 16384) --- причина завершения соединения

inbound-bunch [0] Bunch OPTIONAL --- входящий пучок

outbound-bunch [1] Bunch OPTIONAL --- исходящий пучок

in-info [2] ReportedIdentifier OPTIONAL --- идентификаторы вызывающего абонента

in-end-location [3] Location OPTIONAL --- местоположение вызывающего абонента на конец вызова

in-begin-location [4] Location OPTIONAL --- местоположение вызывающего абонента на начало вызова

out-info [5] ReportedIdentifier OPTIONAL --- идентификаторы вызываемого абонента

out-begin-location [6] Location OPTIONAL --- местоположение вызываемого абонента на начало вызова

out-end-location [7] Location OPTIONAL --- местоположение вызываемого абонента на конец вызова

forwarding-identifier [8] UTF8String (SIZE (2 .. 32) OPTIONAL --- телефонный номер при переадресации

roaming-partner-id [9] INTEGER (0 .. 4294967295) OPTIONAL --- код роумингового партнера

border-switch-id [10] UTF8String (SIZE (1 .. 128) OPTIONAL --- код пограничного коммутатора

data-content-id [41] DataContentID OPTIONAL --- идентификатор потока

dialed-digits [42] UTF8String (SIZE (1 .. 128) OPTIONAL --- набранный номер вызываемого абонента

}

-- Детализированные записи об SMS, включающие текст сообщений

smsRecord TAGGED ::= {

OID { sorm-report-connection-sms }

DATA SEQUENCE OF SmsRecordContent

}

SmsRecordContent ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

begin-connection-time DateAndTime --- дата и время начала соединения

call-type-id INTEGER (0 .. 4294967295) --- тип соединения

in-abonent-type PhoneAbonentType --- тип вызывающего абонента

out-abonent-type PhoneAbonentType --- тип вызываемого абонента

switch-id UTF8String (SIZE (1 .. 128) --- код коммутатора обслужившего соединении

term-cause INTEGER (0 .. 16384) --- причина завершения соединения

message UTF8String --- текстовое содержание сообщения абонента

inbound-bunch [0] Bunch OPTIONAL --- входящий пучок

outbound-bunch [1] Bunch OPTIONAL --- исходящий пучок

in-info [2] ReportedIdentifier OPTIONAL --- идентификаторы вызывающего абонента

in-end-location [3] Location OPTIONAL --- местоположение вызывающего абонента на конец вызова

in-begin-location [4] Location OPTIONAL --- местоположение вызывающего абонента на начало вызова

out-info [5] ReportedIdentifier OPTIONAL --- идентификаторы вызываемого абонента

out-begin-location [6] Location OPTIONAL --- местоположение вызываемого абонента на начало вызова

out-end-location [7] Location OPTIONAL --- местоположение вызываемого абонента на конец вызова

roaming-partner-id [9] INTEGER (0 .. 4294967295) OPTIONAL --- код роумингового партнера

border-switch-id [10] UTF8String (SIZE (1 .. 128) OPTIONAL --- код пограничного коммутатора

}

--- запись IPDR подключения/отключения абонента к сети связи

dataAAARecord TAGGED ::= {

OID { sorm-report-connection-aaa-login }

DATA SEQUENCE OF DataAAARecordContent

}

DataAAARecordContent ::= SEQUENCE {

telco-id TelcoID --- идентификатор оператора связи или структурного подразделения

point-id INTEGER (0 .. 1000) --- идентификатор точки подключения к сети передачи данных, с которой получена запись о соединении

aaa-connection-time DateAndTime --- дата и время подключения/отключения к сети передачи данных

aaa-login-type ENUMERATED { --- тип соединения

connect (0), --- подключение к сети передачи данных

disconnect (1), --- отключение от сети передачи данных

lac-update (2)

},

aaa-session-id UTF8String (SIZE (1 .. 64) --- идентификатор сессии

aaa-allocated-ip IPAddress, --- выделенный динамический IP-адрес

aaa-user-name UTF8String (SIZE (1 .. 128) --- имя пользователя (login)

aaa-connect-type INTEGER (0 .. 65535) --- код протокола в соответствии с RFC1700 либо номер порта для TCP/UDP

aaa-calling-number UTF8String (SIZE (2 .. 32) --- вызывающий номер

aaa-called-number UTF8String (SIZE (2 .. 32) --- вызываемый номер

aaa-nas NetworkPeerInfo --- IP-адрес/порт NAS-сервера

aaa-in-bytes-count INTEGER (0 .. 18446744073709551615)--- объем принятых данных

aaa-out-bytes-count INTEGER (0 .. 18446744073709551615)--- объем переданных данных

aaa-user-password [0] UTF8String (SIZE (1 .. 128) OPTIONAL--- пользовательский пароль

aaa-user-equipment [1] DataNetworkEquipment OPTIONAL --- идентификатор пользовательского оборудования

aaa-apn [2] UTF8String (SIZE (1 .. 128) OPTIONAL--- наименование точки доступа (Access Point Name)

aaa-sgsn-ip [3] IPAddress OPTIONAL --- IP-адрес GPRS/EDGE SGSN

aaa-ggsn-ip [4] IPAddress OPTIONAL --- IP-адрес GPRS/EDGE GGSN

aaa-service-area-code [5] INTEGER (0 .. 65535) OPTIONAL --- код зоны обслуживания (SAC) GPRS/EDGE

aaa-location-start [6] Location OPTIONAL --- базовая станция, через которую установлено соединение (передача данных посредством подвижной сети связи)

aaa-location-end [7] Location OPTIONAL --- базовая станция, через которую завершено соединение (передача данных посредством подвижной сети связи)

phone-card-number [8] NumericString (SIZE (20) OPTIONAL --- номер телефонной карты

aaa-imsi [9] NumericString (SIZE (2 .. 18) OPTIONAL --- IMSI мобильного абонента

aaa-imei [10] NumericString (SIZE (2 .. 18) OPTIONAL --- идентификатор мобильной станции абонента

aaa-esn [11] NumericString (SIZE (2 .. 18) OPTIONAL --- идентификатор мобильной станции абонента

aaa-pool-number [12] UTF8String(SIZE (1 .. 64) OPTIONAL --- номер модемного пула

aaa-mcc [13] UTF8String OPTIONAL

aaa-mnc [14] UTF8String OPTIONAL

aaa-allocated-ip-mask [15] IPMask OPTIONAL

}

--- запись IPDR передачи почтового сообщения

dataEmailRecord TAGGED ::= {

OID { sorm-report-connection-email }

DATA SEQUENCE OF DataEmailRecordContent

}

DataEmailRecordContent ::= CHOICE {

mail-aaa [0] DataEmailRecordContentAAA,

mail-ipdr [1] DataEmailRecordContentIPDR

}

DataEmailRecordContentIPDR ::= SEQUENCE {

mail-cdr-header DataNetworkCdrHeader --- заголовок IPDR-соединения

mail-event EmailEvent --- тип события

mail-sender UTF8String (SIZE (1 .. 512) --- отправитель почтового сообщения

mail-receiver EmailReceivers --- получатель почтового сообщения

mail-cc EmailReceivers --- получатель-копия почтового сообщения

mail-subject UTF8String (SIZE (0 .. 2048) --- тема почтового сообщения

mail-size INTEGER (0 .. 4294967295) --- размер почтового сообщения, включая прикрепленные файлы, байт

attachements INTEGER (0 ..1) --- наличие прикрепленных файлов в письме (да/нет)

mail-servers EmailServers, --- список текстовых наименований почтовых серверов, через которые отправлено письмо (в том числе сервера веб-почты)

mail-term-cause INTEGER (0 .. 16384) --- причина завершения соединения

mail-reply-to UTF8String (SIZE (1 .. 256) OPTIONAL--- имя и адрес, куда следует адресовать ответы на письмо

mail-protocol ENUMERATED { --- протокол, при помощи которого отправлено сообщение

smtp(0),

pop3(1),

imap(2),

web-mail(3)

} OPTIONAL

mail-abonent-id [0] UTF8String (SIZE (0 .. 64) OPTIONAL --- идентификатор абонента

mail-message [10] UTF8String OPTIONAL --- текстовое содержание сообщения абонента

mail-nat-info [11] SEQUENCE OF NetworkPeerInfo OPTIONAL --- транслированные NAT IP/порт

mail-location [12] Location OPTIONAL --- местоположение абонента

mail-data-content-id [13] DataContentID OPTIONAL --- идентификатор потока

}

DataEmailRecordContentAAA ::= SEQUENCE {

mail-cdr-header DataNetworkCdrHeader --- заголовок IPDR-соединения

mail-event EmailEvent --- тип события

mail-aaa-info IP-AAAInformation --- пользовательские реквизиты входа

mail-message [10] UTF8String OPTIONAL --- текстовое содержание сообщения абонента

mail-nat-info [11] SEQUENCE OF NetworkPeerInfo OPTIONAL --- транслированные NAT IP/порт

mail-location [12] Location OPTIONAL --- местоположение абонента

mail-data-content-id [13] DataContentID OPTIONAL --- идентификатор потока

}

EmailEvent ::= ENUMERATED

{

email-send(1)

email-receive(2)

email-download(3)

email-logon-attempt(4)

email-logon(5)

email-logon-failure(6)

email-logoff(7)

email-partial-download(8)

}

EmailReceivers ::= SEQUENCE {

data SEQUENCE OF UTF8String (SIZE (1 .. 512)

}

EmailServers ::= SEQUENCE {

data SEQUENCE OF UTF8String (SIZE (1 .. 512)

}

--- запись IPDR передачи мгновенных электронных сообщений между пользователями

dataImRecord TAGGED ::= {

OID { sorm-report-connection-im }

DATA SEQUENCE OF DataImRecordContent

}

DataImRecordContent ::= SEQUENCE {

im-cdr-header DataNetworkCdrHeader --- заголовок IPDR-соединения

im-user-login UTF8String (SIZE (1 .. 128) --- учетная запись пользователя при подключении

im-user-password UTF8String (SIZE (1 .. 128) --- пользовательский пароль при подключении

im-sender-screen-name UTF8String (SIZE (1 .. 256) --- общедоступное имя отправителя

im-sender-uin UTF8String (SIZE (1 .. 256) --- пользовательский идентификатор отправителя (в т.ч. для чата сервера, предназначенного для отправки мгновенных сообщений)

im-receivers ImReceivers --- список получателей сообщения

im-size INTEGER (0 .. 4294967295) --- размер данных сессии, байт

im-term-cause INTEGER (0 .. 16384) --- причина завершения соединения

im-protocol [0] IMProtocol OPTIONAL

im-abonent-id [1] UTF8String (SIZE (0 .. 64) OPTIONAL --- идентификатор абонента

im-event [5] ImEvent OPTIONAL

im-message [10] UTF8String OPTIONAL --- текстовое содержание сообщения абонента

im-nat-info [11] SEQUENCE OF NetworkPeerInfo OPTIONAL --- транслированные NAT IP/порт

im-location [12] Location OPTIONAL --- местоположение абонента

im-data-content-id [13] DataContentID OPTIONAL --- идентификатор потока

}

ImReceivers ::= SEQUENCE OF ImReceiver

ImReceiver ::= SEQUENCE {

im-receiver-screen-name UTF8String (SIZE (1 .. 256) --- общедоступное имя получателя

im-receiver-uin UTF8String (SIZE (1 .. 256) --- пользовательский идентификатор получателя (в т.ч. для сервера, предназначенного для отправки мгновенных сообщений)

}

ImEvent ::= ENUMERATED

{

im-undefined(0),

im-send(1),

im-receive(2)

}

--- запись IPDR передачи файловых данных

dataFileTransferRecord TAGGED ::= {

OID { sorm-report-connection-file-transfer }

DATA SEQUENCE OF DataFileTransferRecordContent

}

DataFileTransferRecordContent ::= SEQUENCE {

file-cdr-header DataNetworkCdrHeader --- заголовок IPDR-соединения

file-server-name UTF8String (SIZE (1 .. 256, --- название сервера

file-user-name UTF8String (SIZE (0 .. 128) --- имя пользователя, наименование учетной записи

file-user-password UTF8String (SIZE (0 .. 256, --- пользовательский пароль

file-server-type BOOLEAN OPTIONAL --- режим работы файлового сервера (ACTIVE/PASSIVE)

file-in-bytes-count INTEGER (0 .. 18446744073709551615) --- объем принятых абонентом данных (включает как соединения управления так и передачи данных), байт

file-out-bytes-count INTEGER (0 .. 18446744073709551615) --- объем переданных абонентом данных (включает как соединения управления так и передачи данных), байт

file-term-cause INTEGER (0 .. 16384), --- причина завершения соединения

file-abonent-id [0] UTF8String (SIZE (0 .. 64) OPTIONAL, --- идентификатор абонента

file-nat-info [10] SEQUENCE OF NetworkPeerInfo OPTIONAL --- транслированные NAT IP/порт

file-location [11] Location OPTIONAL --- местоположение абонента

file-data-content-id [12] DataContentID OPTIONAL --- идентификатор потока

}

--- запись IPDR терминального доступа к оборудованию

dataTermAccessRecord TAGGED ::= {

OID { sorm-report-connection-term-access }

DATA SEQUENCE OF DataTermAccessRecordContent

}

DataTermAccessRecordContent ::= SEQUENCE {

term-cdr-header DataNetworkCdrHeader --- заголовок IPDR-соединения

term-in-bytes-count INTEGER (0 .. 18446744073709551615) --- объем принятых абонентом данных (включает как соединения управления так и передачи данных), байт

term-out-bytes-count INTEGER (0 .. 18446744073709551615) --- объем переданных абонентом данных (включает как соединения управления так и передачи данных), байт

term-protocol ENUMERATED { --- протокол удаленного доступа к оборудованию

telnet(0)

ssh(1)

scp(2)

} OPTIONAL,

term-abonent-id [0] UTF8String (SIZE (0 .. 64) OPTIONAL --- идентификатор абонента

term-nat-info [10] SEQUENCE OF NetworkPeerInfo OPTIONAL --- транслированные NAT IP/порт

term-location [11] Location OPTIONAL --- местоположение абонента

term-data-content-id [12]DataContentID OPTIONAL --- идентификатор потока

sni [13] UTF8String (SIZE (0 .. 128) OPTIONAL --- SNI/CN

}

--- запись IPDR прочих данных, принимаемых, получаемых пользователем при помощи закрытых протоколов обмена, а также DNS-запросы

dataRawFlowsRecord TAGGED ::= {

OID { sorm-report-connection-raw-flows }

DATA SEQUENCE OF DataRawFlowsRecordContent

}

DataRawFlowsRecordContent ::= SEQUENCE {

flow-cdr-header DataNetworkCdrHeader --- заголовок IPDR-соединения

flow-in-bytes-count INTEGER (0 .. 18446744073709551615) --- объем принятых абонентом данных (включает как соединения управления так и передачи данных), байт

flow-out-bytes-count INTEGER (0 .. 18446744073709551615) --- объем переданных абонентом данных (включает как соединения управления так и передачи данных), байт

flow-protocol ENUMERATED { --- протокол передачи данных

ip(0),

udp(1),

tcp(2)

} OPTIONAL,

flow-abonent-id [0] UTF8String (SIZE (0 .. 64) OPTIONAL --- идентификатор абонента

flow-nat-info [10] SEQUENCE OF NetworkPeerInfo OPTIONAL --- транслированные NAT IP/порт

flow-location [11] Location OPTIONAL --- местоположение абонента

flow-data-content-id [12] DataContentID OPTIONAL --- идентификатор потока

sni [13] UTF8String (SIZE (0 .. 128) OPTIONAL --- SNI/CN, DNS-query

}

--- запись IPDR HTTP-обращения к информационному ресурсу сети связи (сайт, портал)

dataResourceRecord TAGGED ::= {

OID { sorm-report-connection-resource }

DATA SEQUENCE OF DataResourceRecordContent

}

DataResourceRecordContent ::= SEQUENCE {

res-cdr-header DataNetworkCdrHeader --- заголовок IPDR-соединения

res-url UTF8String (SIZE (1 .. 8192) --- Наименование информационного ресурса

res-bytes-count INTEGER (0 .. 18446744073709551615) --- объем принятых и переданных данных в соединении (включает как соединения управления так и передачи данных), байт

res-term-cause INTEGER (0 .. 16384) --- причина завершения соединения

res-aaa-info [0] IP-AAAInformation OPTIONAL --- пользовательские реквизиты входа в информационный ресурс

res-http-method [1] HttpMethod OPTIONAL --- http метод

res-abonent-id [2] UTF8String (SIZE (0 .. 64) OPTIONAL --- идентификатор абонента

res-nat-info [10] SEQUENCE OF NetworkPeerInfo OPTIONAL --- транслированные NAT IP/порт

res-location [11] Location OPTIONAL --- местоположение абонента

res-data-content-id [12] DataContentID OPTIONAL --- идентификатор потока

}

--- запись IPDR голосовой связи посредством сети передачи данных, в том числе с использованием Интернет-мессенджеров

dataVoipRecord TAGGED ::= {

OID { sorm-report-connection-voip }

DATA SEQUENCE OF DataVoipRecordContent

}

DataVoipRecordContent ::= SEQUENCE {

voip-cdr-header DataNetworkCdrHeader --- заголовок CDR-соединения

voip-session-id UTF8String (SIZE (0..64) --- идентификатор сессии/call-id

voip-conference-id UTF8String (SIZE (1..64) --- идентификатор конференции

voip-duration INTEGER (0 .. 864000) --- длительность разговора, сек.

voip-originator-name UTF8String (SIZE (1 .. 512) --- общедоступное имя инициатора связи

voip-call-type-id INTEGER (0 .. 4294967295) --- способ подключения

voip-calling-number DataVoipNumber, --- номер вызывающего абонента (при вызовах через Интернет-мессенджер с использовании протокола STUN - внешние и внутренние сетевые реквизиты абонента сети)

voip-called-number DataVoipNumber --- номер вызываемого абонента (при вызовах через Интернет-мессенджер с использованием протокола STUN - внешние и внутренние сетевые реквизиты удаленной стороны)

voip-in-bytes-count INTEGER (0 .. 18446744073709551615) --- объем принятых абонентом данных (включает как соединения управления так и передачи данных), байт

voip-out-bytes-count INTEGER (0 .. 18446744073709551615) --- объем переданных абонентом данных (включает как соединения управления так и передачи данных), байт

voip-fax BOOLEAN --- была попытка передачи факсовой информации (Т.38)

voip-term-cause INTEGER (0 .. 16384) --- причина завершения соединения

inbound-bunch [0] Bunch OPTIONAL --- входящий пучок

outbound-bunch [1] Bunch OPTIONAL --- исходящий пучок

voip-gateways [2] SEQUENCE OF IPAddress OPTIONAL --- идентификаторы медиашлюзов, обслуживших соединение

voip-protocol [3] VoipProtocol OPTIONAL

supplement-service-id [4] INTEGER (0 .. 4294967295) OPTIONAL, --- ДВО при соединении

voip-abonent-id [5] UTF8String (SIZE (0 .. 64) OPTIONAL --- идентификатор абонента

voip-nat-info [10] SEQUENCE OF NetworkPeerInfo OPTIONAL --- транслированные NAT IP/порт

voip-location [11] Location OPTIONAL --- местоположение абонента

voip-event [12] VoIPEvent OPTIONAL --- тип события

voip-data-content-id [13] DataContentID OPTIONAL --- идентификатор потока

}

VoIPEvent ::= ENUMERATED {

outgoing (0), --- исходящее

incoming (1), --- входящее

unknown (2) --- направление неизвестно

}

--- запись IPDR трансляции сетевых адресов

dataAddressTranslationRecord TAGGED ::= {

OID { sorm-report-connection-address-translations }

DATA SEQUENCE OF DataAddressTranslationRecordContent

}

DataAddressTranslationRecordContent ::= SEQUENCE {

telco-id TelcoID --- идентификатор оператора связи или структурного подразделения

point-id INTEGER (0 .. 1000) --- идентификатор точки подключения к сети передачи данных, с которой получена запись о соединении

translation-time DateAndTime, --- дата и время трансляции

record-type ENUMERATED { --- тип записи о трансляции сетевого адреса

session-start (0), --- начало сессии трансляции

session-end (1) --- окончание сессии трансляции

},

private-ip NetworkPeerInfo --- внутренний адрес

public-ip NetworkPeerInfo --- внешний адрес

destination-ip NetworkPeerInfo --- адрес назначения

translation-type ENUMERATED { --- тип трансляции сетевых адресов

static-nat (0) --- статическая

dynamic-nat (1) --- динамическая

source-nat (2) --- источника

destination-nat (3) --- получателя

pat (4) --- адрес-порт

}

}

--- Data network header

DataNetworkCdrHeader ::= SEQUENCE {

id TAGGED.&id ({DataNetworkHeaderVariants})

data TAGGED.&Data ({DataNetworkHeaderVariants}{@id})

}

DataNetworkHeaderVariants TAGGED ::= { dataNetworkCdrHeader }

dataNetworkCdrHeader TAGGED ::= {

OID { sorm-report-connection-ipdr-header }

DATA DataNetworkCdrHeaderData

}

DataNetworkCdrHeaderData ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

begin-connection-time DateAndTime --- дата и время начала соединения

end-connection-time DateAndTime --- дата и время завершения соединения

client-info NetworkPeerInfo --- информация о клиенте (IP/порт)

server-info NetworkPeerInfo --- информация о сервере (IP/порт)

protocol-code INTEGER (0 .. 65535) --- код протокола в соответствии с RFC1700 либо номер порта для TCP/UDP

point-id INTEGER (0 .. 1000) OPTIONAL --- идентификатор точки подключения к сети передачи данных, с которой получена запись о соединении

}

--- информация о входе в ресурс

IP-AAAInformation ::= SEQUENCE {

username UTF8String (SIZE (0..64) --- пользоватеьлский login

aaaResult IP-AAAResult OPTIONAL --- результат операции входа

}

--- результат операции входа в ресурс

IP-AAAResult ::= ENUMERATED {

aaaUnknown(1) --- результат неизвестен

aaaFailed(2) --- неудачная попытка входа

aaaSucceeded(3) --- успешный вход

}

--- запись IPDR входа в личный кабинет

dataEntranceRecord TAGGED ::= {

OID { sorm-report-connection-entrance }

DATA SEQUENCE OF DataEntranceRecordContent

}

DataEntranceRecordContent ::= SEQUENCE {

entrance-cdr-header DataNetworkCdrHeader --- заголовок IPDR-соединения

entrance-event-type EntranceEventType --- тип события

user-agent [0] UTF8String (SIZE (1 .. 8192) OPTIONAL --- заголовок User-agent HTTP соединения

entrance-event-status [1] EntranceEventStatus OPTIONAL --- статус события

entrance-service-id [2] INTEGER (0 .. 4294967295) OPTIONAL --- идентификатор заказанной услуги

entrance-abonent-id [3] ReportedIdentifier OPTIONAL --- идентификатор абонента (data-network-identifier)

entrance-owner-id [4] ReportedIdentifier OPTIONAL --- идентификатор владельца аккаунта, если не совпадает с идентификатором абонента (data-network-identifier)

entrance-service-parameter [5] EntranceServiceParameter OPTIONAL

entrance-location [6] Location OPTIONAL --- местоположение абонента (если есть возможность определить)

entrance-data-content-id [7] DataContentID OPTIONAL --- идентификатор потока

}

EntranceServiceParameter ::= SEQUENCE {

ip-address [0] IPAddress OPTIONAL --- IP адрес

domain [1] UTF8String (SIZE (2 .. 256) OPTIONAL --- название подключенного/отключенного/удаленного домена

e-mail [2] UTF8String (SIZE (1 .. 256) OPTIONAL --- адрес электронной почты

parameter [3] UTF8String (SIZE (1 .. 8192) OPTIONAL --- индивидуальные параметры настройки услуги абонента

}

--- Статус заказа/изменения/прекращения услуги в личном кабинете

EntranceEventStatus ::= ENUMERATED {

event-failed (0) --- ошибка выполнения заказа/изменения/прекращения услуги, подключения/покупки/удаления домена, обновления информации в профиле

event-succeeded (1) --- успешное выполнение заказа/изменения/прекращения услуги, подключения/покупки/удаления домена, обновления информации в профиле

}

END

12. ReportsLocations.asn

ReportsLocations DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS LocationReport;

IMPORTS DateAndTime

FROM Sorm

TelcoID

FROM Dictionaries

Location

FROM Locations

ReportedIdentifier

FROM ReportedIdentifiers;

LocationReport ::= SEQUENCE OF ValidateLocationRecord

ValidateLocationRecord ::= SEQUENCE {

telco-id TelcoID --- идентификатор оператора связи или структурного подразделения

connection-time DateAndTime --- время определения местоположения

ident ReportedIdentifier --- идентификатор мобильного абонента

connection-location Location --- местоположение мобильного абонента

}

END

13. ReportsNonFormalized.asn

ReportsNonFormalized DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS NonFormalizedReport;

IMPORTS

EntityId,

NonFormalizedEntityAttributeData

FROM TasksNonFormalized

StandardInterval

FROM ReportsPresense;

--- отчет задачи по обработке неформализованных данных

NonFormalizedReport ::= CHOICE {

nonformalized-report [0] NonFormalizedRecords --- отчет по задаче обработки неформализованных данных

nonformalized-presense [1] NonFormalizedPresenseInfo --- отчет по наличию неформализованных данных заданного вида

}

NonFormalizedRecords ::= SEQUENCE OF NonFormalizedRecord

NonFormalizedPresenseInfo ::= SEQUENCE OF StandardInterval --- диапазоны времени за которые есть неформализованные данные

--- запись неформализованных данных

NonFormalizedRecord ::= SEQUENCE OF NonFormalizedEntityAttributeData

END

14. ReportsPayments.asn

ReportsPayments DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS PaymentsReport;

IMPORTS TAGGED,

sorm-report-payment-bank-transaction

sorm-report-payment-express-pays

sorm-report-payment-terminal-pays

sorm-report-payment-service-center

sorm-report-payment-cross-account

sorm-report-payment-telephone-card

sorm-report-payment-balance-fillups

sorm-report-payment-bank-division-transfer

sorm-report-payment-bank-card-transfer

sorm-report-payment-bank-account-transfer

FROM Classification

DateAndTime

FROM Sorm

TelcoID

FROM Dictionaries

Location

FROM Locations

ReportedIdentifier

FROM ReportedIdentifiers

ReportedAddress

FROM Addresses;

PaymentsReport ::= SEQUENCE {

id TAGGED.&id ({ReportedPaymentsVariants}),

data TAGGED.&Data ({ReportedPaymentsVariants}{@id})

}

--- варианты запрашиваемых параметров связей

ReportedPaymentsVariants TAGGED ::= {

bankTransactionReport

| expressCardReport

| publicTerminalReport

| serviceCenterReport

| crossAccountReport

| telephoneCardReport

| balanceFillupReport

| bankDivisionTransferReport

| bankCardTransferReport

| bankAccountTransferReport

}

--- отчет задачи на поиск пополнения баланса через банковский перевод

bankTransactionReport TAGGED ::= {

OID { sorm-report-payment-bank-transaction }

DATA SEQUENCE OF BankTransactionRecord

}

BankTransactionRecord ::= SEQUENCE {

telco-id TelcoID --- идентификатор оператора связи или структурного подразделения

device-id ReportedIdentifier --- идентификатор абонента

date-time-fillup DateAndTime --- время и дата пополнения баланса

bank-account UTF8String (SIZE (1 .. 64) --- номер банковского счета, с которого совершен платеж

bank-name UTF8String (SIZE (1 .. 512) --- наименование банка, со счета которого совершен перевод

bank-address ReportedAddress --- адрес банка, со счета которого совершен перевод

amount UTF8String (SIZE (1 .. 64) --- сумма перевода

}

--- отчет задачи на поиск пополнения баланса через карты экспресс-оплаты

expressCardReport TAGGED ::= {

OID { sorm-report-payment-express-pays }

DATA SEQUENCE OF ExpressPaysRecord

}

ExpressPaysRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

device-id ReportedIdentifier --- идентификатор абонента

date-time-fillup DateAndTime --- время и дата пополнения баланса

card-number UTF8String (SIZE (1 .. 64) --- номер карты

amount UTF8String (SIZE (1 .. 64) --- сумма перевода

}

--- отчет задачи на поиск пополнения баланса через терминалы моментальных платежей

publicTerminalReport TAGGED ::= {

OID { sorm-report-payment-terminal-pays }

DATA SEQUENCE OF PublicTerminalRecord

}

PublicTerminalRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

device-id ReportedIdentifier --- идентификатор абонента

date-time-fillup DateAndTime --- время и дата пополнения баланса

terminal-id UTF8String (SIZE (1 .. 64) --- идентификатор терминала

terminal-number NumericString (SIZE (2 .. 20) --- номер терминала

terminal-address ReportedAddress --- адрес терминала

amount UTF8String (SIZE (1 .. 64) --- сумма перевода

location Location OPTIONAL --- адрес совершения платежа

}

--- отчет задачи на поиск пополнения баланса через центры обслуживания клиентов

serviceCenterReport TAGGED ::= {

OID { sorm-report-payment-service-center }

DATA SEQUENCE OF ServiceCenterRecord

}

ServiceCenterRecord ::= SEQUENCE {

telco-id TelcoID --- идентификатор оператора связи или структурного подразделения

device-id ReportedIdentifier --- идентификатор абонента

date-time-fillup DateAndTime --- время и дата пополнения баланса

center-id UTF8String (SIZE (1 .. 64) --- идентификатор центра обслуживания клиентов

center-address ReportedAddress --- адрес центра обслуживания клиентов

amount UTF8String (SIZE (1 .. 64) --- сумма перевода

}

--- отчет задачи на поиск пополнения баланса посредством снятия денег со счета другого абонента

crossAccountReport TAGGED ::= {

OID { sorm-report-payment-cross-account }

DATA SEQUENCE OF CrossAccountRecord

}

CrossAccountRecord ::= SEQUENCE {

telco-id TelcoID --- идентификатор оператора связи или структурного подразделения

device-id ReportedIdentifier --- идентификатор абонента-получателя платежа

date-time-fillup DateAndTime --- время и дата пополнения баланса

donanted-id ReportedIdentifier --- идентификатор абонента-отправителя платежа

amount UTF8String (SIZE (1 .. 64) --- сумма перевода

}

--- отчет задачи на поиск пополнения баланса через телефонные карты

telephoneCardReport TAGGED ::= {

OID { sorm-report-payment-telephone-card }

DATA SEQUENCE OF ValidateTelephoneCardRecord

}

ValidateTelephoneCardRecord ::= SEQUENCE {

telco-id TelcoID --- идентификатор оператора связи или структурного подразделения

activator-device-id ReportedIdentifier --- идентификатор абонента, активировавшего карту

date-time-fillup DateAndTime --- время и дата пополнения баланса

card-number NumericString (SIZE (2 .. 20) --- номер телефонной карты

amount UTF8String (SIZE (1 .. 64) --- сумма перевода

}

--- отчет задачи на поиск пополнения баланса личного счета абонента

balanceFillupReport TAGGED ::= {

OID { sorm-report-payment-balance-fillups }

DATA SEQUENCE OF ValidateBalanceFillupRecord

}

ValidateBalanceFillupRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

pay-type-id INTEGER (0 .. 4294967295) --- тип платежа (способ оплаты)

device-id ReportedIdentifier, --- идентификатор абонента

date-time-fillup DateAndTime, --- время и дата пополнения баланса

amount UTF8String (SIZE (1 .. 64) --- сумма перевода

pay-parameters UTF8String (SIZE (1 .. 512) OPTIONAL--- "неструктурированная" информация

}

--- отчет задачи по переводу средств со счета абонента для их снятия в отделении банка

bankDivisionTransferReport TAGGED ::= {

OID { sorm-report-payment-bank-division-transfer }

DATA SEQUENCE OF ValidateBankDivisonTransferRecord

}

ValidateBankDivisonTransferRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

donanted-id ReportedIdentifier --- идентификатор инициатора перевода средств

date-time-fillup DateAndTime --- время и дата перевода средств

person-recieved UTF8String(SIZE (1 .. 512) --- получатель платежа (ФИО и прочая неструктурированная информация)

bank-name UTF8String (SIZE (1 .. 256) --- наименование банка получателя

bank-division-name UTF8String (SIZE (1 .. 512) --- наименование отделения банка получателя

bank-division-address ReportedAddress --- адрес отделения банка получателя

amount UTF8String (SIZE (1 .. 64) --- сумма перевода

}

--- отчет задачи по переводу средств со счета абонента на банковскую карту

bankCardTransferReport TAGGED ::= {

OID { sorm-report-payment-bank-card-transfer }

DATA SEQUENCE OF ValidateBankCardTransferRecord

}

ValidateBankCardTransferRecord ::= SEQUENCE {

telco-id TelcoID --- идентификатор оператора связи или структурного подразделения

donanted-id ReportedIdentifier --- идентификатор инициатора перевода средств

bank-card-id NumericString (SIZE (1 .. 12) --- номер банковской карты получателя перевода

date-time-fillup DateAndTime --- время и дата перевода средств

amount UTF8String (SIZE (1 .. 64) --- сумма перевода

}

--- отчет задачи по переводу средств со счета абонента на счет в банке

bankAccountTransferReport TAGGED ::= {

OID { sorm-report-payment-bank-account-transfer }

DATA SEQUENCE OF ValidateBankAccountTransferRecord

}

ValidateBankAccountTransferRecord ::= SEQUENCE {

telco-id TelcoID --- идентификатор оператора связи или структурного подразделения

donated-id ReportedIdentifier --- идентификатор инициатора перевода средств

bank-name UTF8String (SIZE (1 .. 256) --- наименование банка получателя

bank-account UTF8String (SIZE (1 .. 64) --- номер банковского счета получателя

date-time-fillup DateAndTime --- время и дата перевода средств

amount UTF8String (SIZE (1 .. 64) --- сумма перевода

}

END

15. ReportsPresense.asn

ReportsPresense DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS PresenseReport,

StandardInterval;

IMPORTS FindRange,

DateAndTime

FROM Sorm

TelcoID

FROM Dictionaries

Location

FROM Locations

ReportedIdentifier

FROM ReportedIdentifiers

NetworkType

FROM NetworkIdentifiers

TAGGED

sorm-report-presense-abonents

sorm-report-presense-connections

sorm-report-presense-payments

sorm-report-presense-dictionaries

sorm-report-presense-locations

FROM Classification;

---отчет по запросу наличия информации

PresenseReport ::= SEQUENCE {

id TAGGED.&id ({ReportedPresensesVariants}),

data TAGGED.&Data ({ReportedPresensesVariants}{@id})

}

ReportedPresensesVariants TAGGED ::= {

subsPresence

| connectionsPresence

| paymentsPresense

| dictionariesPresence

| locationPresence

}

--- отчет по наличию информации по абонентам и их идентификаторам.

--- Для каждого стандарта может быть указано более одного, либо ни

--- одногоинтервала (фактические периоды наличия информации);

subsPresence TAGGED ::= {

OID { sorm-report-presense-abonents }

DATA SEQUENCE OF StandardInterval

}

-- отчет по наличию информации по соединениям. Для каждого стандарта может быть указано более одного, либо ни одного, интервала (фактические периоды наличия информации);

connectionsPresence TAGGED ::= {

OID { sorm-report-presense-connections }

DATA SEQUENCE OF ConnectionsPresenseRecord

}

ConnectionsPresenseRecord ::= SEQUENCE {

standard-interval StandardInterval,

data-type ENUMERATED { --- вид соединений передачи данных, информация по которым есть в ИС СОРМ

telephone-pstn (0) --- телефонные ТФоП-соединения

telephone-mobile (1) --- телефонные соединения мобильной связи

pager (2) --- соединения сети персонального радиовызова

data-aaa (3) --- подключения/отключения абонента к сети связи

data-resource (4) --- HTTP-обращения к информационному ресурсу сети связи (сайт, портал)

data-email (5) --- передача почтовых сообщений

data-im (6) --- передача мгновенных электронных сообщений между пользователями

data-voip (7) --- голосовая связь посредством сети передачи данных

data-file (8) --- передача файловых данных

data-term (9) --- терминальный доступ к оборудованию

data-raw (10) --- иные данные, принимаемые, получаемые пользователем при помощи закрытых протоколов обмена

data-address-translations (11) --- трансляции сетевых адресов

data-entrance (12) --- действие в личном кабинете

}

}

paymentsPresense TAGGED ::= {

OID { sorm-report-presense-payments }

DATA SEQUENCE OF StandardInterval --- описание имеющейся информации по пополнениям балансов абонентов

}

--- отчет о наличии информации справочников в ИС. Если какой-либо из справочников не публикуется ИС СОРМ, запись о нем отсутствует

dictionariesPresence TAGGED ::= {

OID { sorm-report-presense-dictionaries }

DATA SEQUENCE OF DictionaryInfo

}

--- запись отчета о наличии информации справочников

DictionaryInfo ::= SEQUENCE {

telco-id TelcoID --- идентификатор оператора связи или структурного подразделения

dict ObjectDescriptor --- тип справочника, по которому есть информация

--- (идентификатор запроса справочника) (Requested...)

count INTEGER (1 .. 4294967295) --- количество записей в справочнике

change-dates FindRange --- минимальное и максимальное дата/время изменения записей в справочнике

}

--- отчет по наличию информации по местоположению абонентов

locationPresence TAGGED ::= {

OID { sorm-report-presense-locations }

DATA SEQUENCE OF StandardInterval

}

--- интервал времени, на котором имеются данные по абонентам, соединениям и платежам, в рамках стандарта связи

StandardInterval ::= SEQUENCE {

telco-id TelcoID, --- идентификатор оператора связи или структурного подразделения

standard NetworkType --- стандарт связи, информация по которому имеется в ИС

range FindRange --- интервал времени, на который имеются данные в ИС

count INTEGER OPTIONAL --- количество записей

}

END

16. RequestedAbonents.asn

RequestedAbonents DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS RequestedAbonent;

IMPORTS TAGGED,

sorm-request-abonent-person

sorm-request-abonent-organization

FROM Classification

RequestedAddress FROM Addresses;

RequestedAbonent ::= SEQUENCE {

id TAGGED.&id ({RequestedAbonentVariants})

data TAGGED.&Data ({RequestedAbonentVariants}{@id})

}

--- варианты запрашиваемых идентификаторов

RequestedAbonentVariants TAGGED ::= {

requestedPerson | --- физическое лицо

requestedOrganization --- юридическое лицо - организация

}

--- поля параметра запроса на физическое лицо

requestedPerson TAGGED ::= {

OID { sorm-request-abonent-person }

DATA RequestedPerson

}

RequestedPerson ::= SEQUENCE {

given-name [0] UTF8String (SIZE (1 .. 256) OPTIONAL --- имя

initial [1] UTF8String (SIZE (1 .. 256) OPTIONAL --- отчество

family-name [2] UTF8String (SIZE (1 .. 256) OPTIONAL --- фамилия

passport-info [3] RequestedPassport OPTIONAL --- паспортные ланные

address [4] RequestedAddress OPTIONAL --- адресные данные

contract [6] UTF8String (SIZE (1 .. 64) OPTIONAL --- номер договора

birth-date [7] GeneralizedTime OPTIONAL --- дата рождения

e-mail [8] UTF8String (SIZE (1 .. 256) OPTIONAL --- адрес электронной почты

phone-contact [9] UTF8String (SIZE (1 .. 128) OPTIONAL --- контактные телефоны

ssid [10] UTF8String (SIZE (1 .. 256) OPTIONAL, --- SSID абонентской WiFI-точки доступа

mac [11] OCTET STRING (SIZE (6) OPTIONAL --- MAC-адрес абонентской WiFI-точки доступа

}

--- поля паспортных данных

RequestedPassport ::= SEQUENCE {

passport-serial [1] UTF8String (SIZE (1..16) OPTIONAL --- серия паспорта

passport-number [2] UTF8String (SIZE (1..16) OPTIONAL --- номер паспорта

}

-- поля параметра запроса на юридическое лицо

requestedOrganization TAGGED ::= {

OID { sorm-request-abonent-organization }

DATA RequestedOrganization

}

RequestedOrganization ::= SEQUENCE {

full-name [0] UTF8String (SIZE (1 .. 256) OPTIONAL --- полное наименование организации

address [1] RequestedAddress OPTIONAL --- юридический адрес организации

inn [2] NumericString (SIZE (1 .. 64) OPTIONAL --- ИНН

internal-user [3] UTF8String (SIZE (1 .. 64) OPTIONAL --- внутренний пользователь

contract [4] UTF8String (SIZE (1 .. 64) OPTIONAL --- номер договора

e-mail [5] UTF8String (SIZE (1 .. 256) OPTIONAL --- адрес электронной почты

phone-fax [6] UTF8String (SIZE (1 .. 128) OPTIONAL --- контактные телефоны, факс

ssid [7] UTF8String (SIZE (1 .. 256) OPTIONAL --- SSID абонентской WiFI-точки доступа

mac [8] OCTET STRING (SIZE (6) OPTIONAL --- MAC-адрес абонентской WiFI-точки доступа

}

END

17. RequestedConnections.asn

RequestedConnections DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS RequestedConnection;

IMPORTS TAGGED,

sorm-request-connection-pstn

sorm-request-connection-mobile

sorm-request-connection-entrance

sorm-request-connection-aaa-login

sorm-request-connection-resource

sorm-request-connection-email

sorm-request-connection-im

sorm-request-connection-voip

sorm-request-connection-file-transfer

sorm-request-connection-term-access

sorm-request-connection-raw-flows

sorm-request-connection-address-translations

sorm-request-connection-sms

FROM Classification

requestedPagerIdentifier

requestedPstnIdentifier

requestedGsmIdentifier

requestedCdmaIdentifier

requestedDataNetworkIdentifier

FROM RequestedIdentifiers

PhoneAbonentType

FROM Dictionaries

Bunch

DataNetworkEquipment

IPAddress

NetworkPeerInfo

DataVoipNumber

VoipProtocol

IMProtocol

HttpMethod

EntranceEventType

FROM NetworkIdentifiers

Location

FROM Locations;

RequestedConnection ::= SEQUENCE {

id TAGGED.&id ({RequestedConnectionVariants}),

data TAGGED.&Data ({RequestedConnectionVariants}{@id})

}

--- варианты запрашиваемых параметров связей

RequestedConnectionVariants TAGGED ::= {

requestedPagerIdentifier

| requestedConnectionPstn --- параметры соединений абонента ТФОП

| requestedConnectionMobile --- параметры соединений абонента сети мобильной связи

| requestedConnectionEntrance --- параметры соединений, связанных с действиями в личном кабинете

| requestedAAALogin

| requestedResource

| requestedEmail

| requestedIm

| requestedVoip

| requestedFileTransfer

| requestedTermAccess

| requestedRawFlows

| requestedAddressTranslations

| requestedConnectionSms

}

--- параметры соединений, связанных с действиями в личном кабинете

requestedConnectionEntrance TAGGED ::= {

OID { sorm-request-connection-entrance }

DATA CHOICE {

protocol-code [0] INTEGER (0 .. 65535), --- код протокола в соответствии с RFC1700

client-info [1] NetworkPeerInfo, --- идентификатор абонента сети передачи данных

server-info [2] NetworkPeerInfo, --- идентификатор сервера сети передачи данных

abonent-id [3] RequestedConnectionEntranceIdentifier, --- идентификаторы вызывающего абонента

owner-id [4] RequestedConnectionEntranceIdentifier, --- идентификаторы вызываемого абонента

event-type [5] EntranceEventType, --- тип события

user-agent [6] UTF8String (SIZE (1 .. 8192), --- заголовок User-agent HTTP соединения

service-id [7] INTEGER (0 .. 4294967295), --- идентификатор заказанной услуги

service-ip-address [8] IPAddress, --- внешний IP адрес для подключенной услуги

service-domain [9] UTF8String (SIZE (2 .. 256), --- название подключенного/отключенного/удаленного домена

service-e-mail [10] UTF8String (SIZE (1 .. 256), --- адрес подключенной электронной почты

service-parameter [11] UTF8String (SIZE (1 .. 8192), --- индивидуальные параметры настройки услуги абонента

location [12] Location --- местоположение абонента

}

}

-- Идентификаторы Entrance

RequestedConnectionEntranceIdentifier ::= SEQUENCE {

id TAGGED.&id ({RequestedConnectionEntranceIdentifierVariants})

data TAGGED.&Data ({RequestedConnectionEntranceIdentifierVariants}{@id})

}

RequestedConnectionEntranceIdentifierVariants TAGGED ::= {

requestedDataNetworkIdentifier

}

--- параметры соединений абонента ТФОП

requestedConnectionPstn TAGGED ::= {

OID { sorm-request-connection-pstn }

DATA CHOICE {

duration [0] INTEGER (0 .. 86399) --- время соединения

call-type-id [1] INTEGER (0 .. 4294967295) --- тип соединения

in-abonent-type [2] PhoneAbonentType --- тип вызывающего абонента

out-abonent-type [3] PhoneAbonentType --- тип вызываемого абонента

switch-id [4] UTF8String (SIZE (1 .. 128) --- код коммутатора обслужившего вызов

inbound-bunch [5] UTF8String (SIZE (1 .. 32) --- входящий пучок

outbound-bunch [6] UTF8String (SIZE (1 .. 32) --- исходящий пучок

border-switch-id [7] UTF8String (SIZE (1 .. 128) --- код пограничного коммутатора

term-cause [8] INTEGER (0 .. 16384) --- причина завершения соединения

supplement-service-id [9] INTEGER (0 .. 4294967295) --- ДВО при соединении

phone-card-number [10] NumericString (SIZE (1.. 20) --- номер телефонной карты

in-info [11] RequestedConnectionPstnIdentifier --- идентификаторы вызывающего абонента

out-info [12] RequestedConnectionPstnIdentifier --- идентификаторы вызываемого абонента

forwarding-identifier [13] UTF8String (SIZE (2 .. 32) --- телефонный номер при переадресации

dialed-digits [21] UTF8String (SIZE (1 .. 128) --- набранный номер вызываемого абонента

message [20] UTF8String --- текстовое содержание сообщения абонента

}

}

-- Идентификаторы PSTN

RequestedConnectionPstnIdentifier ::= SEQUENCE {

id TAGGED.&id ({RequestedConnectionPstnIdentifierVariants}),

data TAGGED.&Data ({RequestedConnectionPstnIdentifierVariants}{@id})

}

RequestedConnectionPstnIdentifierVariants TAGGED ::= {

requestedPstnIdentifier

}

requestedConnectionMobile TAGGED ::= {

OID { sorm-request-connection-mobile }

DATA CHOICE {

duration [0] INTEGER (0 .. 86399) --- время соединения

call-type-id [1] INTEGER (0 .. 4294967295) --- тип соединения

supplement-service-id [2] INTEGER (0 .. 4294967295) --- ДВО при соединении

in-abonent-type [3] PhoneAbonentType --- тип вызывающего абонента

out-abonent-type [4] PhoneAbonentType --- тип вызываемого абонента

switch-id [5] UTF8String (SIZE (1 .. 128) - -- код коммутатора обслужившего соединении

- -- или номер SMS центра если SMS

inbound-bunch [6] Bunch --- входящий пучок

outbound-bunch [7] Bunch --- исходящий пучок

border-switch-id [8] UTF8String (SIZE (1 .. 128) --- код пограничного коммутатора

roaming-partner-id [9] INTEGER (0 .. 4294967295) --- код роумингового партнера

term-cause [10] INTEGER (0 .. 16384) --- причина завершения соединения

in-info [11] RequestedConnectionMobileIdentifier --- идентификаторы вызывающего абонента

in-end-location [12] Location --- местоположение вызывающего абонента на конец вызова

in-begin-location [13] Location --- местоположение вызывающего абонента на начало вызова

dialed-digits [14] UTF8String (SIZE (1 .. 128) --- набранный номер вызываемого абонента

out-info [15] RequestedConnectionMobileIdentifier --- идентификаторы вызываемого абонента

out-begin-location [16] Location --- местоположение вызываемого абонента на начало вызова

out-end-location [17] Location --- местоположение вызываемого абонента на конец вызова

forwarding-identifier [18] UTF8String (SIZE (2 .. 32) --- телефонный номер при переадресации

}

}

requestedConnectionSms TAGGED ::= {

OID { sorm-request-connection-sms }

DATA CHOICE {

call-type-id [1] INTEGER (0 .. 4294967295) --- тип соединения

in-abonent-type [3] PhoneAbonentType --- тип вызывающего абонента

out-abonent-type [4] PhoneAbonentType --- тип вызываемого абонента

switch-id [5] UTF8String (SIZE (1 .. 128) --- код коммутатора обслужившего соединении

--- или номер SMS центра если SMS

inbound-bunch [6] Bunch --- входящий пучок

outbound-bunch [7] Bunch --- исходящий пучок

border-switch-id [8] UTF8String (SIZE (1 .. 128) --- код пограничного коммутатора

roaming-partner-id [9] INTEGER (0 .. 4294967295) --- код роумингового партнера

term-cause [10] INTEGER (0 .. 16384) --- причина завершения соединения

in-info [11] RequestedConnectionMobileIdentifier --- идентификаторы вызывающего абонента

in-end-location [12] Location --- местоположение вызывающего абонента на конец вызова

in-begin-location [13] Location --- местоположение вызывающего абонента на начало вызова

out-info [15] RequestedConnectionMobileIdentifier, --- идентификаторы вызываемого абонента

out-begin-location [16] Location --- местоположение вызываемого абонента на начало вызова

out-end-location [17] Location --- местоположение вызываемого абонента на конец вызова

message [40] UTF8String --- текстовое содержание сообщения абонента

}

}

-- Идентификаторы мобильных абонентов

RequestedConnectionMobileIdentifier ::= SEQUENCE {

id TAGGED.&id ({RequestedConnectionMobileIdentifierVariants}),

data TAGGED.&Data ({RequestedConnectionMobileIdentifierVariants}{@id})

}

RequestedConnectionMobileIdentifierVariants TAGGED ::= {

requestedGsmIdentifier |

requestedCdmaIdentifier

}

requestedAAALogin TAGGED ::= {

OID { sorm-request-connection-aaa-login }

DATA CHOICE {

point-id [0] INTEGER (0 .. 1000), --- идентификатор точки подключения к сети передачи данных, с которой получены записи

login-type [1] ENUMERATED { --- тип соединения

connect (0), --- подключение к сети передачи данных

disconnect (1), --- отключение от сети передачи данных

update (2)

},

user-equipment [2] DataNetworkEquipment, --- идентификатор пользовательского оборудования

allocated-ip [3] IPAddress, --- выделенный динамический IP-адрес

user-name [4] UTF8String (SIZE (1 .. 128) --- имя пользователя (login)

user-password [5] UTF8String (SIZE (1 .. 128) --- пользовательский пароль

connect-type [6] INTEGER (1 .. 65535) --- код протокола в соответствии с RFC1700 либо номер порта для TCP/UDP

calling-number [7] UTF8String (SIZE (2 .. 32) --- вызывающий номер

called-number [8] UTF8String (SIZE (2 .. 32) --- вызываемый номер

nas [9] NetworkPeerInfo --- IP-адрес/порт NAS-сервера

apn [10] UTF8String (SIZE (1 .. 128) --- наименование точки доступа (Access Point Name)

sgsn-ip [11] IPAddress --- IP-адрес GPRS/EDGE SGSN

ggsn-ip [12] IPAddress --- IP-адрес GPRS/EDGE GGSN

service-area-code [13] INTEGER (0 .. 65535) --- код зоны обслуживания (SAC) GPRS/EDGE

location-start [14] Location --- базовая станция, через которую установлено соединение (передача данных посредством подвижной сети связи)

location-end [15] Location --- базовая станция, через которую завершено соединение (передача данных посредством подвижной сети связи)

phone-card-number [16] NumericString (SIZE (20) --- номер телефонной карты

imsi [17] NumericString (SIZE (2 .. 18) --- IMSI мобильного абонента

imei [18] NumericString (SIZE (2 .. 18) --- идентификатор мобильной станции абонента

esn [19] NumericString (SIZE (2 .. 18) --- идентификатор мобильной станции абонента

pool-number [20] UTF8String(SIZE (1 .. 64) --- номер модемного пула

mcc [21] UTF8String,

mnc [22] UTF8String

}

}

requestedResource TAGGED ::= {

OID { sorm-request-connection-resource }

DATA CHOICE {

point-id [0] INTEGER (0 .. 1000) --- идентификатор точки подключения к сети передачи данных, с которой получены записи

client-info [1] NetworkPeerInfo --- идентификатор абонента сети передачи данных

server-info [2] NetworkPeerInfo --- идентификатор сервера сети передачи данных

url [3] UTF8String (SIZE (1 .. 8192) --- Наименование информационного ресурса

term-cause [4] INTEGER (0 .. 16384) --- причина завершения соединения

http-method [5] HttpMethod

abonent-id [6] UTF8String (SIZE (0 .. 64)

nat-info [10] NetworkPeerInfo --- транслированные NAT IP/порт

location [11] Location --- местоположение абонента

}

}

requestedEmail TAGGED ::= {

OID { sorm-request-connection-email }

DATA CHOICE {

point-id [0] INTEGER (0 .. 1000), --- идентификатор точки подключения к сети передачи данных, с которой получены записи

client-info [1] NetworkPeerInfo, --- идентификатор абонента сети передачи данных

server-info [2] NetworkPeerInfo --- идентификатор сервера сети передачи данных

sender [3] UTF8String (SIZE (1 .. 512) --- отправитель почтового сообщения

receiver [4] UTF8String (SIZE (1 .. 512) --- получатель почтового сообщения

cc [5] UTF8String (SIZE (1 .. 512) --- получатель-копия почтового сообщения

subject [6] UTF8String (SIZE (1 .. 2048) --- тема почтового сообщения

attachements [7] BOOLEAN --- наличие прикрепленных файлов в письме (да/нет)

mail-server [8] UTF8String (SIZE (1 .. 512) --- текстовое наименование сервера, через который отправлено письмо (в т.ч. сервер веб-почты)

term-cause [9] INTEGER (0 .. 16384) --- причина завершения соединения

abonent-id [10] UTF8String (SIZE (0 .. 64)

message [20] UTF8String --- текстовое содержание сообщения абонента

nat-info [21] NetworkPeerInfo --- транслированные NAT IP/порт

location [22] Location --- местоположение абонента

}

}

requestedIm TAGGED ::= {

OID { sorm-request-connection-im }

DATA CHOICE {

point-id [0] INTEGER (0 .. 1000), --- идентификатор точки подключения к сети передачи данных, с которой получены записи

client-info [1] NetworkPeerInfo, --- идентификатор абонента сети передачи данных

server-info [2] NetworkPeerInfo --- идентификатор сервера сети передачи данных

user-login [3] UTF8String (SIZE (1 .. 128) --- учетная запись пользователя при подключении

user-password [4] UTF8String (SIZE (1 .. 128) --- пользовательский пароль при подключении

sender-screen-name [5] UTF8String (SIZE (1 .. 256) --- общедоступное имя отправителя

sender-uin [6] UTF8String (SIZE (1 .. 256) --- пользовательский идентификатор отправителя (в т.ч. для сервера, предназначенного для отправки мгновенных сообщений)

receiver-screen-name [7] UTF8String (SIZE (1 .. 256) --- общедоступное имя получателя

receiver-uin [8] UTF8String (SIZE (1 .. 256) --- пользовательский идентификатор получателя (в т.ч. для сервера, предназначенного для отправки мгновенных сообщений)

protocol [9] IMProtocol

term-cause [10] INTEGER (0 .. 16384) --- причина завершения соединения

abonent-id [11] UTF8String (SIZE (0 .. 64)

message [20] UTF8String --- текстовое содержание сообщения абонента

nat-info [21] NetworkPeerInfo --- транслированные NAT IP/порт

location [22] Location --- местоположение абонента

}

}

requestedVoip TAGGED ::= {

OID { sorm-request-connection-voip }

DATA CHOICE {

point-id [0] INTEGER (0 .. 1000), --- идентификатор точки подключения к сети передачи данных, с которой получены записи

client-info [1] NetworkPeerInfo --- идентификатор абонента сети передачи данных

server-info [2] NetworkPeerInfo --- идентификатор сервера сети передачи данных

duration [3] INTEGER (0 .. 864000) --- длительность разговора, сек.

originator-name [4] UTF8String (SIZE (1 .. 512), --- общедоступное имя инициатора связи

call-type-id [5] INTEGER (0 .. 4294967295) --- способ подключения

voip-calling-number [6] DataVoipNumber --- номер вызывающего абонента

voip-called-number [7] DataVoipNumber --- номер вызываемого абонента

inbound-bunch [8] Bunch --- входящий пучок

outbound-bunch [9] Bunch --- исходящий пучок

conference-id [10] UTF8String (SIZE (1..64) --- идентификатор конференции

protocol [11] VoipProtocol

term-cause [12] INTEGER (0 .. 16384), --- причина завершения соединения

abonent-id [13] UTF8String (SIZE (0 .. 64),

nat-info [20] NetworkPeerInfo --- транслированные NAT IP/порт

location [21] Location --- местоположение абонента

}

}

requestedFileTransfer TAGGED ::= {

OID { sorm-request-connection-file-transfer }

DATA CHOICE {

point-id [0] INTEGER (0 .. 1000) --- идентификатор точки подключения к сети передачи данных, с которой получены записи

client-info [1] NetworkPeerInfo --- идентификатор абонента сети передачи данных

server-info [2] NetworkPeerInfo --- идентификатор сервера сети передачи данных

server-name [3] UTF8String (SIZE (1 .. 256) --- название сервера

user-name [4] UTF8String (SIZE (1 .. 128) --- имя пользователя, наименование учетной записи

user-password [5] UTF8String (SIZE (1 .. 256) --- пользовательский пароль

term-cause [6] INTEGER (1 .. 16384) --- причина завершения соединения

abonent-id [7] UTF8String (SIZE (0 .. 64)

nat-info [20] NetworkPeerInfo --- транслированные NAT IP/порт

location [21] Location --- местоположение абонента

}

}

requestedTermAccess TAGGED ::= {

OID { sorm-request-connection-term-access }

DATA CHOICE {

point-id [0] INTEGER (0 .. 1000), --- идентификатор точки подключения к сети передачи данных, с которой получены записи

client-info [1] NetworkPeerInfo, --- идентификатор абонента сети передачи данных

server-info [2] NetworkPeerInfo --- идентификатор сервера сети передачи данных

abonent-id [3] UTF8String (SIZE (0 .. 64)

nat-info [10] NetworkPeerInfo --- транслированные NAT IP/порт

location [11] Location --- местоположение абонента

sni [13] UTF8String (SIZE (1 .. 128) --- Поле Server Name Indication/Common Name

}

}

--- идентификаторы для соединений передачи данных (закрытые протоколы обмена)

requestedRawFlows TAGGED::= {

OID { sorm-request-connection-raw-flows }

DATA CHOICE {

point-id [0] INTEGER (0 .. 1000) --- идентификатор точки подключения к сети передачи данных, с которой получены записи

protocol-code [1] INTEGER (0 .. 65535) --- код протокола в соответствии с RFC1700

client-info [2] NetworkPeerInfo --- идентификатор абонента сети передачи данных

server-info [3] NetworkPeerInfo --- идентификатор сервера сети передачи данных

abonent-id [4] UTF8String (SIZE (0 .. 64)

nat-info [10] NetworkPeerInfo, --- транслированные NAT IP/порт

location [11] Location, --- местоположение абонента

sni [13] UTF8String (SIZE (1 .. 128) --- SNI/CN

}

}

--- идентификаторы для соединений передачи данных (закрытые протоколы обмена)

requestedAddressTranslations TAGGED::= {

OID { sorm-request-connection-address-translations }

DATA CHOICE {

point-id [0] INTEGER (0 .. 1000) --- идентификатор точки подключения к сети передачи данных, с которой получена запись о соединении

record-type [2] ENUMERATED { --- тип записи о трансляции сетевого адреса

session-start (0), --- начало сессии трансляции

session-end (1) --- окончание сессии трансляции

},

private-ip [3] NetworkPeerInfo --- внутренний адрес

public-ip [4] NetworkPeerInfo --- внешний адрес

destination-ip [5] NetworkPeerInfo --- адрес назначения

translation-type [6] ENUMERATED { --- тип трансляции сетевых адресов

static-nat (0), --- статическая

dynamic-nat (1), --- динамическая

source-nat (2), --- источника

destination-nat (3), --- получателя

pat (4) --- адрес-порт

}

}

}

END

18. RequestedIdentifiers.asn

RequestedIdentifiers DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS

RequestedIdentifier

requestedPagerIdentifier

requestedPstnIdentifier

requestedGsmIdentifier

requestedCdmaIdentifier

requestedDataNetworkIdentifier

IMPORTS TAGGED,

sorm-request-identifier-pager

sorm-request-identifier-pstn

sorm-request-identifier-gsm

sorm-request-identifier-cdma

sorm-request-identifier-data-network

sorm-request-identifier-voip

FROM Classification

DataNetworkEquipment

IPAddress

NetworkPeerInfo

FROM NetworkIdentifiers

RequestedIdentifier ::= SEQUENCE {

id TAGGED.&id ({RequestedIdentifierVariants})

data TAGGED.&Data ({RequestedIdentifierVariants}{@id})

}

--- варианты запрашиваемых идентификаторов

RequestedIdentifierVariants TAGGED ::= {

requestedPagerIdentifier | --- идентификатор сети персонального радиовызова

requestedPstnIdentifier | --- идентификатор ТФОП

requestedGsmIdentifier | --- идентификатор GSM

requestedCdmaIdentifier | --- идентификатор CDMA

requestedDataNetworkIdentifier | --- идентификатор сети передачи данных

requestedVoipIdentifier --- идентификатор voip

}

--- идентификатор сети персонального радиовызова

requestedPagerIdentifier TAGGED ::= {

OID { sorm-request-identifier-pager }

DATA RequestedPagerIdentifier

}

RequestedPagerIdentifier ::= NumericString (SIZE (2 .. 18)

--- идентификатор телефонной сети общего пользования

requestedPstnIdentifier TAGGED ::= {

OID { sorm-request-identifier-pstn }

DATA RequestedPstnIdentifier

}

RequestedPstnIdentifier ::= SEQUENCE {

directory-number UTF8String (SIZE (1 .. 32) --- телефонный номер в международном формате

internal-number NumericString (SIZE (1 .. 32) OPTIONAL --- дополнительный внутренний номер, если есть

}

-- идентификатор абонента GSM

requestedGsmIdentifier TAGGED ::= {

OID { sorm-request-identifier-gsm }

DATA RequestedGsmIdentifier

}

RequestedGsmIdentifier ::= CHOICE {

directory-number [0] UTF8String (SIZE (1 .. 32) --- телефонный номер в международном формате

imsi [1] NumericString (SIZE (2 .. 18) --- идентификатор мобильного абонента

imei [2] NumericString (SIZE (2 .. 18) --- идентификатор мобильной станции

icc [3] NumericString (SIZE (10 .. 20) --- идентификатор SIM-карты абонента

}

-- идентификатор абонента CDMA

requestedCdmaIdentifier TAGGED ::= {

OID { sorm-request-identifier-cdma }

DATA RequestedCdmaIdentifier

}

RequestedCdmaIdentifier ::= CHOICE {

directory-number [0] UTF8String (SIZE (1 .. 32) --- телефонный номер в международном формате

imsi [1] NumericString (SIZE (2 .. 18) --- идентификатор мобильного абонента

esn [2] NumericString (SIZE (2 .. 18) --- идентификатор мобильной станции

min [3] NumericString (SIZE (2 .. 18) --- идентификатор мобильного абонента (CDMA)

icc [4] NumericString (SIZE (10 .. 20) --- идентификатор SIM-карты абонента

}

-- Идентификатор сети передачи данных

requestedDataNetworkIdentifier TAGGED ::= {

OID { sorm-request-identifier-data-network }

DATA RequestedDataNetworkIdentifier

}

RequestedDataNetworkIdentifier ::= CHOICE {

user-equipment [0] DataNetworkEquipment, --- идентификатор пользовательского оборудования

login [1] UTF8String (SIZE (1 .. 128) --- имя пользователя - login

ip-address [2] IPAddress, --- IP адрес

e-mail [3] UTF8String (SIZE (1 .. 128) --- адрес электронной почты

phone-number [5] UTF8String (SIZE (2 .. 32) --- номер телефона

user-domain [6] UTF8String (SIZE (2 .. 256) --- пользовательский домен

ip-port [7] NetworkPeerInfo --- IP адрес и порт

}

-- Идентификатор voip

requestedVoipIdentifier TAGGED ::= {

OID { sorm-request-identifier-voip }

DATA RequestedVoipIdentifier

}

RequestedVoipIdentifier ::= CHOICE {

ip-address [0] IPAddress --- IP-адрес абонента

originator-name [1] UTF8String (SIZE (1 .. 512) --- общедоступное имя инициатора связи

calling-number [2] UTF8String (SIZE (1 .. 32) --- номер вызывающего абонента

}

END

19. Sessions.asn

Sessions DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS sessionMessage;

IMPORTS TAGGED

,sorm-message-session

FROM Classification;

sessionMessage TAGGED ::= {

OID { sorm-message-session }

DATA CHOICE {

connect [0] ConnectRequest --- запрос на открытие сессии

connect-response [1] ConnectResponse --- ответ на запрос открытия сессии

adjustment [2] AdjustmentRequest --- согласование поддерживаемых типов со стороны ПУ

adjustment-response [3] AdjustmentResponse --- ответ на запрос согласования данных

disconnect [4] DisconnectRequest --- запрос на закрытие сессии

disconnect-response [5] DisconnectResponse --- ответ на запрос закрытия сессии

}

}

--- запрос создания сессии

ConnectRequest ::= SEQUENCE {

session-timeout INTEGER (60 .. 2592000) --- максимальное время неактивности

max-data-length INTEGER (10 .. 100000) --- максимальная длина блока отчета (в строках)

data-packet-window-size INTEGER (4 .. 256) --- окно канала передачи данных

--- максимальное число блоков данных, которое может быть

--- отправлено без подтверждения приема

data-load-timeout INTEGER (1 .. 60) --- таймаут начала передачи блоков отчетов

request-response-timeout INTEGER (1 .. 60) --- таймаут ответа на запрос

data-packet-response-timeout INTEGER (1 .. 60) --- таймаут подтверждения приема блока данных отчета

}

-- ответ на запрос создания сессии

ConnectResponse ::= SEQUENCE {

confirmed-data-packet-window-size INTEGER (4 .. 256) --- подтвержденное окно передачи данных

--- то окно, которое может обеспечить ИС СОРМ

--- должно быть меньше или равно окну, переданному

--- в ConnectRequest

confirmed-session-timeout INTEGER (60 .. 2592000) --- подтвержденное максимальное время неактивности

--- должно быть больше или равно значению, переданному

--- в ConnectRequest

confirmed-data-load-timeout INTEGER (1 .. 60) --- подтвержденный таймаут начала передачи блоков отчетов

--- должен быть больше или равен значению, переданному

--- в ConnectRequest

confirmed-request-response-timeout INTEGER (1 .. 60) --- подтвержденный таймаут ответа на запрос

--- должен быть больше или равен значению, переданному

--- в ConnectRequest

supports SEQUENCE OF ObjectDescriptor --- весь список поддерживаемых СОРМ типов запросов, типов отчётов

}

--- согласование поддерживаемых типов со стороны ПУ

AdjustmentRequest ::= SEQUENCE {

supports SEQUENCE OF ObjectDescriptor --- список поддерживаемых ПУ типов запросов, типов отчётов

--- данный список должен быть меньшим либо равным списку в сообщении ConnectRequest

}

-- ответ на согласование списка поддерживаемых типов

AdjustmentResponse ::= NULL --- ответ на запрос согласования данных

--- запрос завершения сессии

DisconnectRequest ::= NULL

--- ответ на запрос завершения сессии

DisconnectResponse ::= NULL

END

20. Sorm.asn

Sorm DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS DateAndTime,

FindRange,

MessageID,

Message;

IMPORTS TAGGED FROM Classification

sessionMessage FROM Sessions

trapMessage FROM Traps

taskMessage FROM Tasks

reportMessage FROM Reports

managementMessage FROM Management

unformattedMessage FROM Unformatted

filterMessage FROM Filters;

Version ::= PrintableString

vers Version ::= "3.3.0" --- текущая версия протокола

-- Оболочка сообщения СОРМ --

Message ::= SEQUENCE {

version Version OPTIONAL --- версия протокола

message-id MessageID --- номер запроса

message-time DateAndTime --- время и дата запроса

operator-name PrintableString (SIZE (1 .. 128) OPTIONAL --- наименование оператора связи

id TAGGED.&id ({SormPDUs}) --- идентификтор блока данных

data TAGGED.&Data({SormPDUs}{@id}) --- данные блока данных

}

-- Блок данных сообщения

SormPDUs TAGGED ::= {

sessionMessage --- сообщения организации сессии

| trapMessage --- сообщения сигналов

| taskMessage --- сообщения работы с задачами

| reportMessage --- сообщения работы с отчётами

| managementMessage --- сообщения канала передачи мониторинга (КПМ)

| unformattedMessage --- сообщения канала передачи неформатированных данных (КПНФ)

| filterMessage --- сообщения установки/снятия фильтров записываемого содержимого соединений сети передачи данных

}

--- Общие данные

-- Номер сообщения

MessageID ::= INTEGER (0 .. 4294967295)

-- Дата и время

DateAndTime ::= UTCTime

-- Диапазон поиска

FindRange ::= SEQUENCE {

begin-find [0] DateAndTime OPTIONAL, --- время и дата начала поиска информации

end-find [1] DateAndTime OPTIONAL --- время и дата окончания поиска информации

}

END

21. TasksAbonents.asn

TasksAbonents DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS AbonentsTask;

IMPORTS

LogicalOperation FROM Tasks

RequestedIdentifier FROM RequestedIdentifiers

RequestedAbonent FROM RequestedAbonents;

AbonentsTask ::= CHOICE {

validate-abonents-task [0] ValidateAbonentsTask, --- задача на поиск информации о принадлежности

--- идентификаторов абонентов сети оператора связи

validate-identifiers [1] ValidateIdentifiersTask, --- задача на поиск информации об идентификаторах

--- абонентов сети оператора связи зарегистрированных

--- на физическое или юридическое лицо

validate-services [2] ValidateServicesTask --- задача на поиск информации о доступных абоненту видам услуг связи

}

--- задача на поиск информации о принадлежности идентификаторов абонентов сети оператора связи

ValidateAbonentsTask ::= RequestedIdentifiers --- запрашиваемые идентификаторы

RequestedIdentifiers ::= SEQUENCE OF RequestedIdentifierParameters -- последовательность из идентификаторов и логических операций

RequestedIdentifierParameters ::= CHOICE {

separator [0] LogicalOperation, --- логическая операция или скобка

find-mask [1] RequestedIdentifier --- параметр - идентификатор

}

--- задача на поиск информации об идентификаторах абонентов сети оператора связи зарегистрированных на физическое или юридическое лицо

ValidateIdentifiersTask ::= RequestedAbonents --- запрашиваемые абоненты

RequestedAbonents ::= SEQUENCE OF RequestedAbonentsParameters --- последовательность логических операций и параметров

RequestedAbonentsParameters ::= CHOICE {

separator [0] LogicalOperation, --- логический оператор связки

find-mask [1] RequestedAbonent --- информация запроса об абоненте

}

--- задача на поиск истории услуг связи абонента

--- запрос по маске запрещён, идентификатор должен быть указан полностью

ValidateServicesTask ::= SEQUENCE OF ValidateServicesParameters

ValidateServicesParameters ::= CHOICE {

separator [0] LogicalOperation, --- логическая операция или скобка

find-mask [1] ValidateServicesParameter --- параметр - идентификатор

}

ValidateServicesParameter ::= CHOICE {

contract [0] UTF8String (SIZE (1 .. 64), --- номер договора

identifier [1] RequestedIdentifier

}

END

22. Tasks.asn

Tasks DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS taskMessage,

TaskID,

LogicalOperation,

CreateTaskResponse,

DataContentID;

IMPORTS TAGGED,

sorm-message-task

FROM Classification

FindRange,

MessageID

FROM Sorm

TelcoList,

DictionaryTask

FROM Dictionaries

AbonentsTask

FROM TasksAbonents

ConnectionsTask

FROM TasksConnections

LocationTask

FROM TasksLocation

PaymentsTask

FROM TasksPayments

PresenseTask

FROM TasksPresense

DataContentTask

FROM TasksContentTask

NonFormalizedTaskRequest,

NonFormalizedTaskResponse

FROM

TasksNonFormalized;

taskMessage TAGGED ::= {

OID {sorm-message-task}

DATA CHOICE {

data-ready-request [0] DataReadyRequest, --- запрос готовности данных

data-ready-response [1] DataReadyResponse, --- ответ на запрос готовности данных

data-load-request [2] DataLoadRequest, --- запрос загрузки данных

data-load-response [3] DataLoadResponse, --- ответ на запрос загрузки данных

data-drop-request [4] DataDropRequest, --- запрос удаления данных

data-drop-response [5] DataDropResponse, --- ответ на запрос удаления данных

data-interrupt-request [6] DataInterruptRequest, --- запрос прерывания загрузки данных

data-interrupt-response [7] DataInterruptResponse, --- ответ на запрос прерывания загрузки данных

create-task-request [8] CreateTaskRequest, --- запрос на создание задачи по обработке информации

create-task-response [9] CreateTaskResponse, --- ответ на запрос создания задачи

non-formalized-task-request [10] NonFormalizedTaskRequest, --- запрос на создание задачи по обработке неформализованных данных

non-formalized-task-response [11] NonFormalizedTaskResponse --- ответ на запрос создания задачи по обработке неформализованных данных

}

}

--- в этом запросе не параметров

DataReadyRequest ::= NULL

--- запрос загрузки данных конкретной задачи

DataLoadRequest ::= TaskID

--- запрос удаления данных конкретной задачи

DataDropRequest ::= TaskID

--- запрос прерывания загрузки данных

DataInterruptRequest ::= TaskID

--- запрос на создание задачи поиска

CreateTaskRequest ::= SEQUENCE {

telcos [0] TelcoList OPTIONAL, --- cписок операторов связи

range [1] FindRange OPTIONAL, --- временной диапазон поиска

report-limit [2] INTEGER (1 .. 10000000) OPTIONAL, --- ограничение на максимальное количество возвращаемых записей

task [3] CHOICE {

dictionary [0] DictionaryTask, --- задачи пополнения справочников (нормативно-справочная информация)

abonents [1] AbonentsTask, --- задачи поисков по принадлежности абонентов

connections [2] ConnectionsTask, --- задачи поисков по соединениям абонентов

location [3] LocationTask, --- задача получения данных местоположения абонентов

payments [4] PaymentsTask, --- задачи поисков по совершенным платежам

presense [6] PresenseTask, --- задачи предоставления сведений о наличии данных

data-content [9] DataContentTask --- задачи получения содержимого потоков

}

}

--------------------------------------------------------------------------

-- последовательность записей о готовности данных задач

DataReadyResponse ::= SEQUENCE OF DataReadyTaskRecord

DataReadyTaskRecord ::= SEQUENCE {

task-id TaskID, --- идентификатор задачи

result TaskResult --- результат выполнения задачи

}

TaskResult ::= SEQUENCE {

result ENUMERATED {

data-not-ready (0), --- данные не готовы, задача еще выполняется

data-ready (1), --- данные есть, задача выполнена

data-not-found (2), --- данных нет, задача выполнена

error (3) --- в процессе выполнения задачи произошла ошибка

},

report-records-number [0] INTEGER (0 .. 999999999999) OPTIONAL, --- для выполненной задачи - количество

--- записей в отчете

report-limit-exeeded [1] BOOLEAN OPTIONAL, --- количество записей превысило лимит,заданный при создании задачи

error-description [2] UTF8String (SIZE (1 .. 256) OPTIONAL --- краткое описание произошедшей ошибки,

--- если обнаружена

}

DataLoadResponse ::= SEQUENCE {

task-id TaskID, --- идентификатор задачи, сгенерировавшей данный отчет

data-exists BOOLEAN, --- признак существования результатов исполнения задачи

--- (есть данные или нет)

data-blocks-number INTEGER (0 .. 999999999999) OPTIONAL, --- количество блоков в отчете

error-description UTF8String (SIZE (1 .. 256) OPTIONAL --- краткое описание ошибки, если обнаружена

}

DataDropResponse ::= SEQUENCE {

task-id TaskID, --- идентификатор задачи, данные которой будут удалены

successful BOOLEAN, --- признак успешного выполнения запроса

error-description UTF8String (SIZE (1 .. 256) OPTIONAL --- краткое описание ошибки, если обнаружена

}

DataInterruptResponse ::= SEQUENCE {

request-id MessageID, --- идентификатор прерванного запроса загрузки данных

successful BOOLEAN, --- признак успешного выполнения запроса

data-blocks-available INTEGER (0 .. 999999999999) OPTIONAL, --- количество оставшихся непереданными блоков

error-description UTF8String (SIZE (1 .. 256) OPTIONAL --- краткое описание ошибки, если обнаружена

}

CreateTaskResponse ::= SEQUENCE {

task-id TaskID OPTIONAL, --- идентификатор задачи

successful BOOLEAN, --- признак успешного выполнения запроса

error-description UTF8String (SIZE (1 .. 256) OPTIONAL --- краткое описание ошибки, если обнаружена

}

----------------------------------------------------------------------------------

-- идентификатор задачи

TaskID ::= INTEGER (0 .. 4294967295)

-- идентификатор потока

DataContentID ::= UTF8String (SIZE (1 .. 512)

LogicalOperation ::= ENUMERATED {

operation-open-bracket (0), -- открывающая скобка - "("

operation-close-bracket (1), -- закрывающая скобка - ")"

operation-or (2), -- логическое "или"

operation-and (3), -- логическое "и"

operation-not (4) -- логическое "не"

}

END

23. TasksConnections.asn

TasksConnections DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS ConnectionsTask;

IMPORTS

LogicalOperation FROM Tasks

RequestedConnection FROM RequestedConnections

ConnectionsTask ::= CHOICE {

validate-connections [0] ValidateConnectionsTask, --- задача на поиск телефонных соединений между абонентами

validate-data [1] ValidateDataTask, --- задача на поиск соединений между абонентами сети передачи данных

validate-entrance [2] ValidateEntranceTask --- задача на поиск информации о действиях абонента в личном кабинете

}

-- Зачем разделение ValidateConnectionsTask ValidateDataTask

--- задача на поиск по соединениям абонентов

ValidateConnectionsTask ::= RequestedConnectionIdentifiers --- запрашиваемые идентификаторы, указываются все, кроме

--- RequestedDataNetworkIdentifier

ValidateDataTask ::= RequestedConnectionIdentifiers --- запрашиваемые идентификаторы, указываются

--- RequestedDataNetworkIdentifier

ValidateEntranceTask ::= RequestedConnectionIdentifiers --- задача на поиск информации о действиях абонента в личном кабинете

RequestedConnectionIdentifiers ::= SEQUENCE OF RequestedConnectionParameter

RequestedConnectionParameter ::= CHOICE {

separator [0] LogicalOperation, --- логический оператор связки

find-mask [1] RequestedConnection --- параметр запроса

}

END

24. TasksLocation.asn

TasksLocation DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS LocationTask;

IMPORTS

IPAddress

FROM NetworkIdentifiers;

--- задача получения данных местоположения абонентов

LocationTask ::= RequestedLocationIdentifier --- запрашиваемые единтификаторы для определения местоположения

RequestedLocationIdentifier ::=

CHOICE {

directory-number [0] UTF8String (SIZE (1 .. 32), --- телефонный номер в международном формате

imsi [1] NumericString (SIZE (2 .. 18), --- идентификатор мобильного абонента

ip-address [2] IPAddress, --- IP-адрес абонента

imei [3] NumericString (SIZE (2 .. 18) --- идентификатор мобильной станции

}

END

25. TasksNonFormalized.asn

TasksNonFormalized DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS

EntityId,

NonFormalizedTaskRequest,

NonFormalizedTaskResponse,

NonFormalizedEntityAttributeData;

IMPORTS TelcoList

FROM Dictionaries

FindRange,

MessageID,

DateAndTime

FROM Sorm

Location

FROM Locations

LogicalOperation,

CreateTaskResponse

FROM Tasks

-- TaskID,

-- LogicalOperation;

NonFormalizedTaskRequest ::= CHOICE {

get-entities [0] GetEntities, --- тип сообщения "запрос получения списка типов сущностей"

get-attributes [1] GetEntityAtttibutes, --- тип сообщения "запрос получения списка атрибутов сущности"

validate-task [2] ValidateNonFormalizedTask, --- тип сообщения "задача поиска неформализованных данных"

validate-presense [3] NonFormalizedPresenseTask --- тип сообщения "задача предоставления сведений о наличии неформализованных данных"

}

NonFormalizedTaskResponse ::= CHOICE {

entities [0] GetEntitiesResponse, --- ответ на запрос получения списка типов сущностей

entity-attributes [1] GetEntityAtttibutesResponse, --- ответ на запрос получения списка атрибутов сущности

validate-task [2] ValidateNonFormalizedTaskResponse, --- ответ на запрос задачи поиска неформализованных данных

validate-presense [3] NonFormalizedPresenseTaskResponse --- ответ на запрос задач предоставления сведений о наличии неформализованных данных

}

--- тип сообщения "запрос получения списка типов сущностей"

GetEntities ::= NULL

--- тип сообщения "запрос получения списка атрибутов сущности"

GetEntityAtttibutes ::= EntityId

--- тип сообщения "задача поиск неформализованных данных"

ValidateNonFormalizedTask ::= SEQUENCE {

entity-id EntityId, --- сущность для поиска по неформализованным данным

parameters NonFormalizedParameters, --- критерии поиска по неформализованным данным

range FindRange OPTIONAL, --- временной диапазон поиска

report-limit INTEGER (1 .. 10000000) OPTIONAL --- ограничение на максимальное количество возвращаемых записей

}

--- тип сообщения "задача предоставления сведений о наличии неформализованных данных"

NonFormalizedPresenseTask ::= EntityId

NonFormalizedParameters ::= SEQUENCE OF NonFormalizedParameter

NonFormalizedParameter ::= CHOICE {

separator [0] LogicalOperation, --- логическая операция

find-mask [1] NonFormalizedEntityCondition --- условие

}

NonFormalizedEntityCondition ::= SEQUENCE {

attribute NonFormalizedEntityAttribute, --- атрибут сущности

operation MathOperation, --- операция

attribute-value NonFormalizedEntityAttributeData --- значение атрибута

}

NonFormalizedEntityAttribute ::= SEQUENCE {

attribute-name UTF8String (SIZE (1 .. 256), --- текстовое наименование атрибута сущности

attribute-type AttributeType --- тип данных атрибута

}

NonFormalizedEntityAttributeData ::= CHOICE {

datetime [0] DateAndTime, --- дата и время c точностью до секунд

integer [1] INTEGER, --- целочисленный

string [2] UTF8String, --- строковый

boolean [3] BOOLEAN, --- булевый

float [4] REAL, --- с плавающей запятой

location [5] Location, --- местоположение

empty [6] NULL --- пустое значение (null)

}

--- математические операции сравнения

MathOperation ::= ENUMERATED {

equal (0), --- равно

less (1), --- меньше

greater (2), --- больше

not-equal (3), --- не равно

less-or-equal (4), --- меньше или равно

greater-or-equal (5) --- больше или равно

}

--------------------------------------------------------------------------------------------

GetEntitiesResponse ::= SEQUENCE OF NonFormalizedEntity

NonFormalizedEntity ::= SEQUENCE {

entity-id EntityId, --- уникальный идентификатор сущности

entity-name UTF8String (SIZE (1 .. 256) --- текстовое наименование сущности

}

GetEntityAtttibutesResponse ::= SEQUENCE {

entity-id EntityId, --- уникальный идентификатор сущности

entity-attributes SEQUENCE OF NonFormalizedEntityAttribute --- атрибуты сущности

}

ValidateNonFormalizedTaskResponse ::= CreateTaskResponse

NonFormalizedPresenseTaskResponse ::= CreateTaskResponse

----------------------------------------------------------------------------------------------

--- типы данных атрибутов

AttributeType ::= ENUMERATED {

date-time (0), --- дата и время c точностью до секунд

integer (1), --- целочисленный

string (2), --- строковый

boolean (3), --- булевый

float (4), --- с плавающей запятой

location (5), --- местоположение

empty (6) --- пустое значение

}

--- Идентификатор сущности

EntityId ::= INTEGER (0 .. 4294967296)

END

26. TasksPayments.asn

TasksPayments DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS PaymentsTask;

IMPORTS LogicalOperation

FROM Tasks

RequestedConnection

FROM RequestedConnections

RequestedIdentifier

FROM RequestedIdentifiers

RequestedAddress

FROM Addresses

TAGGED,

sorm-request-payment-bank-transaction,

sorm-request-payment-express-pays,

sorm-request-payment-terminal-pays,

sorm-request-payment-service-center,

sorm-request-payment-cross-account,

sorm-request-payment-telephone-card,

sorm-request-payment-balance-fillups,

sorm-request-payment-bank-division-transfer,

sorm-request-payment-bank-card-transfer,

sorm-request-payment-bank-account-transfer

FROM Classification;

PaymentsTask ::= SEQUENCE {

id TAGGED.&id ({RequestedPaymentsVariants}),

data TAGGED.&Data ({RequestedPaymentsVariants}{@id})

}

--- варианты запрашиваемых параметров связей

RequestedPaymentsVariants TAGGED ::= {

bankTransactionTask

| expressCardTask

| publicTerminalTask

| serviceCenterTask

| crossAccountTask

| telephoneCardTask

| balanceFillupTask

| bankDivisionTransferTask

| bankCardTransferTask

| bankAccountTransferTask

}

--- задача на поиск пополнения баланса через банковский перевод

bankTransactionTask TAGGED ::= {

OID { sorm-request-payment-bank-transaction }

DATA RequestedBankTransactionPays

}

RequestedBankTransactionPays ::= SEQUENCE OF RequestedBankTransactionPaysParameters

--- последовательность логических операций и параметров

RequestedBankTransactionPaysParameters ::= CHOICE {

separator [0] LogicalOperation, --- логический оператор связки

bank-account [1] UTF8String (SIZE (1 .. 64), --- номер банковского счета, с которого совершен платеж

bank-name [2] UTF8String (SIZE (1 .. 512), --- наименование банка, со счета которого совершен перевод

identifier [3] RequestedIdentifier --- идентификатор абонента

}

--- задача на поиск пополнения баланса через карты экспресс-оплаты

expressCardTask TAGGED ::= {

OID { sorm-request-payment-express-pays }

DATA RequestedExpressPays

}

RequestedExpressPays ::= SEQUENCE OF RequestedExpressPaysParameters --- последовательность логических операций и параметров

RequestedExpressPaysParameters ::= CHOICE {

separator [0] LogicalOperation, --- логический оператор связки

express-card [1] NumericString (SIZE (2 .. 20), --- номер карты экcпресс-оплаты

identifier [2] RequestedIdentifier --- идентификатор абонента

}

--- задача на поиск пополнения баланса через терминалы моментальных платежей

publicTerminalTask TAGGED ::= {

OID { sorm-request-payment-terminal-pays }

DATA RequestedTerminalPays

}

RequestedTerminalPays ::= SEQUENCE OF RequestedTerminalPaysParameters --- последовательность логических операций и параметров

RequestedTerminalPaysParameters ::= CHOICE {

separator [0] LogicalOperation, --- логический оператор связки

terminal-id [1] UTF8String (SIZE (1 .. 64), --- идентификатор терминала

terminal-number [2] NumericString (SIZE (2 .. 20), --- номер терминала

terminal-address [3] RequestedAddress, --- адрес терминала

identifier [4] RequestedIdentifier --- идентификатор абонента

}

--- задача на поиск пополнения баланса через центры обслуживания клиентов (ЦОК)

serviceCenterTask TAGGED ::= {

OID { sorm-request-payment-service-center }

DATA RequestedServiceCenterPays

}

RequestedServiceCenterPays ::= SEQUENCE OF RequestedServiceCenterPaysParameters --- последовательность логических операций и параметров

RequestedServiceCenterPaysParameters ::= CHOICE {

separator [0] LogicalOperation, --- логический оператор связки

center-id [1] UTF8String (SIZE (1 .. 64), --- идентификатор центра обслуживания клиентов

center-address [2] RequestedAddress, --- адрес центра обслуживания клиентов

identifier [3] RequestedIdentifier --- идентификатор абонента

}

--- задача на поиск пополнения баланса посредством снятия денег со счета другого абонента

crossAccountTask TAGGED ::= {

OID { sorm-request-payment-cross-account }

DATA RequestedCrossAccountPays

}

RequestedCrossAccountPays ::= SEQUENCE OF RequestedCrossAccountPaysParameters --- последовательность логических операций и параметров

RequestedCrossAccountPaysParameters ::= CHOICE {

separator [0] LogicalOperation, --- логический оператор связки

source-identifier [1] RequestedIdentifier, --- идентификатор абонента, со счета которого переводятся средства

dest-identifier [2] RequestedIdentifier --- идентификатор абонента, на счет которого переводятся средства

}

--- задача на поиск пополнения баланса через телефонные карты

telephoneCardTask TAGGED ::= {

OID { sorm-request-payment-telephone-card }

DATA RequestedTelephoneCardPays

}

RequestedTelephoneCardPays ::= SEQUENCE OF RequestedTelephoneCardPaysParameters --- последовательность логических операций и параметров

RequestedTelephoneCardPaysParameters ::= CHOICE {

separator [0] LogicalOperation, --- логический оператор связки

card-number [1] NumericString (SIZE (2 .. 20), --- номер телефонной карты

identifier [2] RequestedIdentifier --- идентификатор абонента

}

--- общая задача на поиск пополнения баланса личного счета абонента

balanceFillupTask TAGGED ::= {

OID { sorm-request-payment-balance-fillups }

DATA RequestedBalanceFillups --- параметры запроса

}

RequestedBalanceFillups ::= SEQUENCE OF RequestedBalanceFillupsParameters --- последовательность логических операций и параметров

RequestedBalanceFillupsParameters ::= CHOICE {

separator [0] LogicalOperation, --- логический оператор связки

identifier [1] RequestedIdentifier --- идентификатор абонента

}

--- задача на поиск перевода средств со счета абонента для их снятия в отделении банка

bankDivisionTransferTask TAGGED ::= {

OID { sorm-request-payment-bank-division-transfer }

DATA RequestedBankDivisionTranferPays --- параметры запроса

}

RequestedBankDivisionTranferPays ::= SEQUENCE OF RequestedTranferParameters --- последовательность логических операций и параметров

--- задача на поиск перевода средств со счета абонента на банковскую карту

bankCardTransferTask TAGGED ::= {

OID { sorm-request-payment-bank-card-transfer }

DATA RequestedBankCardTranferPays --- параметры запроса

}

RequestedBankCardTranferPays ::= SEQUENCE OF RequestedTranferParameters --- последовательность логических операций и параметров

--- задача на поиск перевода средств со счета абонента на счет в банке

bankAccountTransferTask TAGGED ::= {

OID { sorm-request-payment-bank-account-transfer }

DATA RequestedBankAccountTranferPays --- параметры запроса

}

RequestedBankAccountTranferPays ::= SEQUENCE OF RequestedTranferParameters --- последовательность логических операций и параметров

RequestedTranferParameters ::= CHOICE {

separator [0] LogicalOperation, --- логический оператор связки

source-identifier [1] RequestedIdentifier --- идентификатор абонента инициатора перевода средств

}

END

27. TasksPresense.asn

TasksPresense DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS PresenseTask;

IMPORTS

TAGGED,

sorm-request-presense

FROM Classification;

PresenseTask ::= SEQUENCE {

id TAGGED.&id ({PresenseListVariants}),

data TAGGED.&Data ({PresenseListVariants}{@id})

}

PresenseListVariants TAGGED ::= { presenseInfo }

presenseInfo TAGGED ::= {

OID { sorm-request-presense }

DATA ENUMERATED {

subscribers (0), --- запрос наличия информации по абонентам и их идентификаторам

connections (1), --- запрос наличия информации по соединениям

payments (2), --- запрос наличия имеющейся информации по платежам

dictionaries (3), --- запрос наличия справочников

locations (4) --- запрос наличия информации по местоположениям абонентов

}

}

END

28. Traps.asn

Traps DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS trapMessage;

IMPORTS

TAGGED,

sorm-message-trap

FROM Classification

MessageID

FROM Sorm

trapMessage TAGGED ::= {

OID { sorm-message-trap }

DATA CHOICE {

trap [0] Trap, --- тип сообщения "сигнал"

trap-ack [1] TrapAck --- тип сообщения "подтверждение сигнала"

}

}

-- Блок данных сообщения типа "сигнал"

Trap ::= SEQUENCE {

trap-type TrapType, -- тип сообщения

trap-message UTF8String (SIZE (1 .. 256) OPTIONAL, -- описание сообщения

reference-message MessageID OPTIONAL -- номер сообщение к которому относится данный сигнал

-- (например, номер сообщения запросившего отчет при прерывании передачи)

}

TrapType ::= ENUMERATED {

heartbeat (0), -- тестовый пакет

restart-software (1), -- перезапуск ПО

unauthorized-access (2), -- попытка несанкционированного доступа

critical-error (3), -- критическая ошибка ПО, потеря данных, дальнейшая работа невозможна

major-error (4), -- серьезная ошибка ПО, потеря данных, но дальнейшая работа возможна

minor-error (5) -- незначительная ошибка ПО, данные не потеряны, дальнейшая работа возможна

}

-- Блок данных сообщения типа "подтверждение сигнала"

-- Номер сообщения TrapAck должен соответствовать номеру сообщения Trap

TrapAck ::= NULL

END

29. Unformatted.asn

Unformatted DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS unformattedMessage;

IMPORTS TAGGED,

sorm-message-unformatted

FROM Classification

TelcoList

FROM Dictionaries

Acknowledgement

FROM Reports

CallsRecords

FROM ReportsConnections

DateAndTime,

MessageID

FROM Sorm;

unformattedMessage TAGGED ::= {

OID { sorm-message-unformatted }

DATA CHOICE {

request [0] RawRequest,

response [1] RawResponse,

report [2] RawReport,

report-ack [3] RawAcknowledgement

}

}

RawRequest ::= SEQUENCE {

telcos TelcoList, --- cписок операторов связи

raw-task RawRequestTask --- запрос получения неформатированных данных

}

RawRequestTask ::= CHOICE {

data-types-request [0] DataTypesRequest, --- запрос проверки наличия вида неформатированных данных в ИС СОРМ

data-start-request [1] DataStartRequest, --- запрос на начало передачи неформатированных данных

data-stop-request [2] DataStopRequest, --- запрос на остановку передачи всех неформатированных данных

data-stop-typed-request [3] DataStopTypedRequest --- запрос на остановку передачи неформатированных данных по типу данных

}

DataStopTypedRequest ::= RawDataType

--- типы данных, передаваемых ИС СОРМ

RawDataType ::= ENUMERATED {

raw-cdr (1), --- "сырые" CDR-файлы, полученные с коммутационного оборудования

raw-ipdr (2), --- "сырые" IPDR-файлы

raw-location (10), --- файлы с местоположением для СПРТС

raw-passive (11) --- файлы со статистической информацией, полученной от ТС ОРМ 86

}

DataTypesRequest ::= RawDataType

---Команда на начало передачи данных какого-либо типа может посылаться с ПУ независимо от процесса передачи данных других типов из ИСБД

DataStartRequest ::= SEQUENCE {

time-from DateAndTime, --- начало временного периода в буфере, с которого необходимо получить данные

time-to DateAndTime, --- конец временного периода в буфере, с которого необходимо получить данные

raw-type RawDataType --- тип неформатированных данных передачи

}

DataStopRequest ::= NULL

RawResponse ::= CHOICE {

data-types-response [0] DataTypesResponse, --- ответ на запрос проверки наличия неформатированных вида данных в ИС СОРМ

data-start-response [1] DataStartResponse, --- ответ на запрос начала передачи неформатированных данных

data-stop-response [2] DataStopResponse, --- ответ на запрос остановки передачи неформатированных данных

data-stop-typed-response [3] DataStopTypedResponse --- ответ на запрос остановки передачи неформатированных данных по типу данных

}

DataStopTypedResponse ::= BOOLEAN --- признак успешноcти выполнения команды

DataTypesResponse ::= SEQUENCE {

successful BOOLEAN, --- признак наличия в ИС СОРМ запрошенного вида неформатированных данных

selected-type RawDataType, --- выбранный вид данных для передачи

time-from DateAndTime, --- начало временного периода в буфере, начиная с которого накоплены данные

time-to DateAndTime --- конец временного периода в буфере, по которому накоплены данные

}

DataStartResponse ::= BOOLEAN --- признак успешноcти выполнения команды

DataStopResponse ::= BOOLEAN --- признак успешноcти выполнения команды

---в поле stream-id предлагается передавать имя файла

RawReport ::= SEQUENCE {

request-id MessageID, --- идентификатор запроса

stream-id UTF8String (SIZE (1 .. 256), --- имя передаваемого файла

total-blocks-number INTEGER (0 .. 999999999999), --- общее количество блоков в отчете

block-number INTEGER (1 .. 1000000000000), --- порядковый номер текущего блока

report-block RawDataBlock --- блок данных отчета (соответствует одному передаваемому файлу)

}

---блоки отчетов разных типов данных могут передаваться независимо друг от друга.

RawDataBlock ::= CHOICE {

raw-cdr [1] RawBytesBlock, --- файлы с биллингом телефонной сети, полученным с коммутационного оборудования

raw-ipdr [2] RawBytesBlock, --- файлы с биллингом сети передачи данных

raw-location [10] RawBytesBlock,--- Файлы с информацией о местоположении абонентов СПРТС

raw-passive [11] RawBytesBlock --- файл с информацией, полученной от ТС ОРМ 86

}

RawBytesBlock::= SEQUENCE OF RawBytes

RawBytes ::= OCTET STRING (SIZE (1 .. 4096)

RawAcknowledgement ::= Acknowledgement

END

30. ReportsDataContent.asn

ReportsDataContent DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS DataContentReport;

IMPORTS TAGGED,

sorm-report-data-content-raw

FROM Classification;

DataContentReport ::= SEQUENCE {

id TAGGED.&id ({ReportedDataContentVariants}),

data TAGGED.&Data ({ReportedDataContentVariants}{@id})

}

ReportedDataContentVariants TAGGED ::= {

reportDataContentRaw

}

reportDataContentRaw TAGGED ::= {

OID { sorm-report-data-content-raw }

DATA SEQUENCE OF RawRecordContent

}

RawRecordContent ::= SEQUENCE {

successful BOOLEAN, --- признак успешного формирования блока данных

data [0] OCTET STRING (SIZE (1 .. 1048576) OPTIONAL, --- содержимое блока (в случае если блок успешно сформирован)

error [1] UTF8String (SIZE (1 .. 4096) OPTIONAL, --- описание ошибки (в случае если не удалось сформировать блок)

codec-info [2] UTF8String (SIZE (1 .. 4096) OPTIONAL, --- описание типа содержимого в поле data (например - pcap, содержимое из ТСОРМ86)

direction [3] DataContentRawDirection OPTIONAL, --- направление передачи

channel [4] INTEGER OPTIONAL --- канал

}

DataContentRawDirection ::= ENUMERATED {

client-server (0),

server-client (1)

}

END

31. TasksContentTask.asn

TasksContentTask DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS

DataContentTask

IMPORTS

DataContentID

FROM Tasks;

DataContentTask ::= DataContentID

END ".

13. В приложении N 13:

а) пункт 2 дополнить абзацем следующего содержания:

"Голосовая информация, получаемая ИС ОРМ от ТС ОРМ 86 в соответствии с Протоколом взаимодействия с ТС ОРМ 86, должна передаваться на ПУ в том виде и последовательности, в которых она была получена от ТС ОРМ 86 без переупаковки и/или перекодирования. ИС ОРМ.

При подключении к ТС ОРМ 86 в качестве дополнительного ПУ, должен выставлять биты поля Transcode в команде получения результатов запроса статистических данных (подпункт 2.2.12 приложения N 3 Правил, утвержденных Приказом-86) равными 0 (получение декодированных данных). В поле data структуры RawRecordContent раздела ReportsDataContent.asn приложения N 9 к Требованиям укладываются байты звуковой информации в формате "a-law", определяемом рекомендацией ITU-T G.711 или с использованием 16 бит в коде ИКМ (PCM) в формате стерео с частотой дискретизации 16 кГц, видео - в соответствии с протоколом 3G-324M с использованием: H.223 для мультиплексирования, H.245 - для управления, G.723.1 (AMR) - для голоса, H.264 (AVC) - для видеоконтента.";

б) пункт 3 изложить в следующей редакции:

"3. Для изображений, звуков и иных сообщений пользователей услугами связи, передаваемых по сетям передачи данных, информация должна содержать последовательность кадров канального уровня или датаграмм сетевого уровня в последовательности, в которой они прошли через точку съема, и записыватья в формате pcap.";

в) дополнить пунктом 4 следующего содержания:

"4. При передаче содержимого соединений по кпд5 должны соблюдаться следующие правила:

1) Поле "channel" структуры "RawRecordContent" раздела "ReportsDataContent.asn" приложения N 9 к Требованиям должно использоваться в следующих случаях:

для передачи содержимого соединений из сети передачи данных, которые имеют несколько логических каналов (например - FTP, VoIP). Каждый логический канал разделяется по номеру и содержит данные в формате "pcap". В случае, если размер Pcap-файла больше одного блока данных, то Pcap-файл разбивается на несколько блоков. Заголовок pcap-файла является частью данных и приходит только в первом блоке для определенного канала данных;

для передачи содержимого соединений, полученных из ТС ОРМ 86, в случаях, когда ТС ОРМ 86 по одному идентификатору соединения возвращает несколько файлов (например, полученных по одному вызову из разных точек съема).

2) Поле "codec-info" структуры "RawRecordContent" раздела "ReportsDataContent.asn" приложения N 9 к Требованиям используется (при необходимости) для передачи типа данных. Пример значений поля "codec-info" приведен в таблице:

Таблица. Описание значений поля "codec-info"

NN пп Значение Описание
application/vnd.tcpdump.pcap Данные в формате pcap для передачи содержимого интернет соединений абонентов
application/vnd.tsngi.data Формат для передачи данных для Приказа N 86. Правила заполнения полей приведены ниже.
image/tiff Данные в формате многостраничного TIFF документа. Используется для передачи факсов.
image/t38 Передача данных в формате факс.

Значения "tcpdump.pcap" и "tsngi.data" являются основными типами для передачи содержимого соединений. Иные типы значений применяются для расширения возможности передачи содержимого соединений. Отсутствие поля "codec-info" эквивалентно заполнению поля "codec-info" значением "application/vnd.tcpdump.pcap".".

Обзор документа


На сетях операторов связи, действующих в рамках лицензий, устанавливают программные средства информсистемы для предосталвения сведений в рамках оперативно-разыскных мероприятий. Уполномоченные органы могут получать информацию об абонентах связи и предоставленных им услугах, о передаче и содержании голосовых и текстовых сообщений, а также изображений. Минцифры уточнит требования к таким программным средствам.

Для просмотра актуального текста документа и получения полной информации о вступлении в силу, изменениях и порядке применения документа, воспользуйтесь поиском в Интернет-версии системы ГАРАНТ: