Версия формата миграции: 2.0.
Миграция из других АСР делается через промежуточный набор таблиц в формате DBF или CSV (кодировка UTF-8, разделитель полей — точка с запятой, в первой строке указываются названия полей таблицы). Таблицы выгружаются из старой АСР с помощью специального скрипта на Python или Perl . Далее с помощью специального инструмента DBF/CSV-файлы загружаются в АСР «Гидра», где происходит сопоставление справочников и выполняется собственно миграция данных.
Упрощения и допущения
- Юрлица и физлица находятся в одной таблице и отличаются только специальным признаком.
- Из реквизитов юрлица выгружается только его название, остальное требует ручного ввода (таблицу при необходимости можно дополнить полями с реквизитами).
- Текущий объём потреблённых услуг (трафик, минуты) никак не мигрирует, но дата окончания текущего периода мигрирует.
- Подробности тарифов (периодичность, пороги, единицы измерения, стоимость и т.д.) не мигрируют, а перебиваются вручную и затем сопоставляются.
Выгрузка из старой АСР
Звёздочкой помечены идентификаторы, являющиеся внешними ключами. Первичный ключ в каждой таблице всегда называется ID. Выделены исключительно для наглядности. Если необходимо, то к каждой таблице можно добавить поле для комментария (с названием REM), в которое будут выгружаться полезные текстовые данные.
Справочник состояний абонента
Таблица STATUS
Поле |
Описание |
---|---|
ID |
ID состояния |
NAME |
Наименование состояния |
Если используется всего два состояния (включен, отключен), то смысла в справочнике нет. В таблицах, которые на него ссылаются, можно использовать просто отдельный столбец с признаком активности.
Справочник сетевых служб
Таблица NS_LIST
ID |
ID сетевой службы |
NAME |
Название сетевой службы |
Примечание: Этот справочник формируется вручную и состоит из перечня сетевых служб, для доступа к которым абоненту нужен логин и пароль: RADIUS, личный кабинет, телефония.
Справочник групп абонентов
Таблица GROUPS
ID |
ID группы |
NAME |
Название группы |
Справочник услуг и тарифных планов
Таблица SERVICES
ID |
ID услуги (тарифного плана) |
NAME |
Наименование услуги (ТП) |
TYPE |
Признак тарифного плана (если Y, то ТП; если N, то услуга) |
Примечание: В этот справочник выгружаются все ТП, а из услуг только те, которые не входят в ТП, например, услуга "Реальный IP-адрес"
Справочник лицевых счетов
Таблица ACCOUNTS
ID |
ID лицевого счёта |
USER_ID |
ID абонента* |
ACCT_NUM |
Номер лицевого счёта |
CUR_ID |
ID валюты* (если в системе только российский рубль, можно не указывать) |
BALANCE |
Баланс счёта |
CREDIT |
Кредитный лимит |
CREDIT_END_DATE |
Дата окончания кредитного лимита |
Привязки абонента к сетевым службам
Таблица NETSERV
ID |
ID привязки |
USER_ID |
ID абонента* |
NS_ID |
ID сетевой службы* |
LOGIN |
Логин |
PASSWORD |
Пароль |
Примечание: В эту таблицу выгружаются логины и пароли на VPN, на личный кабинет, SIP-аккаунт и на другие ресурсы, которые контролирует биллинг. При этом в целях безопасности пароли при тестовых выгрузках нужно заменять на звёздочки или случайные строки. Настоящие пароли будут выгружаться всего один раз, при окончательной миграции.
Участие абонентов в группах
Таблица GROUPLINK
ID |
ID записи об участии |
USER_ID |
ID абонента* |
GROUP_ID |
ID группы* |
Подписка абонентов на услуги
Таблица SUBSCR
ID |
ID подписки |
ACCT_ID |
ID лицевого счёта* |
CONTRACT_ID |
ID договора* |
TARIFF_ID |
ID услуги (тарифного плана)* |
D_END |
Дата окончания текущего учётного периода |
D_START |
Дата начала текущего учётного периода |
Оконечное оборудование абонентов
Таблица EQUIP
ID |
ID оборудования |
ACCT_ID |
ID лицевого счёта* |
MAC |
Физический адрес (MAC) |
IP |
IP-адрес |
MASK |
Маска IP-адреса |
PHONE |
Абонентский телефонный номер в формате E.164 |
Справочник абонентских договоров
Таблица CONTRACTS
ID |
ID абонента |
NUM |
Номер договора |
D_DOC |
Дата заключения договора |
D_BEGIN |
Дата начала действия договора |
D_END |
Дата окончания действия договора |
Справочник абонентов
Таблица USERS
ID |
ID абонента |
STATUS_ID |
ID состояния абонента* |
JUR |
Физическое или юридическое лицо (0 — физлицо, 1 — юрлицо) |
NAME |
ФИО (физлица) / Наименование (юрлица) |
ADDR |
Домашний адрес |
PASSPORT |
Номер паспорта |
W_PHONE |
Рабочий телефон |
H_PHONE |
Контактный домашний телефон |
M_PHONE |
Контактный мобильный телефон |
Контактный email |
Примечание: Список атрибутов для личных данных абонента может быть расширен по необходимости.
Платежи
Таблица PAYMENTS
ID |
ID операции |
ACCT_ID |
ID лицевого счёта* |
D_OPER |
Дата и время операции (формат: 26.04.2009 13:04:55) |
PAYMENT_SUM |
Сумма платежа, умноженная на 100 (целое число) |
Списания
Таблица WRITEOFFS
ID |
ID операции |
ACCT_ID |
ID лицевого счёта* |
D_OPER |
Дата и время операции |
TARIFF_ID |
ID услуги (тарифного плана)* |
SUM |
Сумма списания, умноженная на 100 |
D_BEGIN |
Дата и время начала периода списания |
D_END |
Дата и время окончания периода списания |