Миграция из биллинга UTM 5 делается через промежуточный набор таблиц в формате DBF . Таблицы выгружаются из UTM с помощью специального скрипта на Python или Perl . Далее с помощью специального инструмента DBF-файлы загружаются в АСР «Гидра», где происходит сопоставление справочников и выполняется собственно миграция данных.
Упрощения и допущения
- Юрлица и физлица находятся в одной таблице и отличаются только специальным признаком.
- Из реквизитов юрлица выгружается только его название, остальное требует ручного ввода.
- Текущий объём потреблённых услуг (трафик, минуты) никак не мигрирует, поэтому трафика включенным абонентам в момент миграции придётся накинуть как будто начался новый учётный период, соответственно нужно будет переместить и дату начала периода.
- Подробности тарифов (периодичность, пороги, единицы измерения, стоимость и т.д.) не мигрируют, а перебиваются вручную и затем сопоставляются. Системы тарификации в UTM и АСР «Гидра» отличаются слишком сильно, и автоматическая миграция при небольшом числе тарифных планов приведёт к бОльшим трудозатратам, нежели полуавтоматическая. То же касается и других небольших справочников, таких как классы трафика, валюты и т.д.
Проблемы
- В UTM абонент может одновременно находиться в нескольких группах, тогда как в АСР «Гидра» — только в одной. Кроме того, в UTM с помощью групп сделаны многие настройки (разделение на физических и юридических лиц, привязка к файрволам и другому оборудованию). У нас это реализовано по-другому, нужно найти правильный подход.
- Нужно разобраться, откуда лучше брать данные для привязки абонента к DHCP-серверу и файрволам. Можно, например, смотреть прямо по группе, к которой принадлежит абонент, а можно включить в привязки.
Таблицы, выгружаемые из UTM
Звёздочкой помечены идентификаторы, по которым связываются таблицы. Выделены исключительно для наглядности. Если необходимо, то к каждой таблице можно добавить поле для комментария, в которое будут выгружаться полезные текстовые данные.
Справочник состояний абонента
- ID состояния*
- Наименование состояния
Справочник сетевых служб
- ID сетевой службы
- Название сетевой службы
Примечание: Этот справочник формируется вручную и состоит из перечня сетевых служб, для доступа к которым абоненту нужен логин и пароль: RADIUS, личный кабинет, телефония.
Справочник групп абонентов
- ID группы*
- Название группы
Справочник услуг
- ID услуги*
- Название услуги
Справочник услуг и тарифных планов
- ID услуги (тарифного плана)*
- Наименование услуги (ТП)
- Признак тарифного плана (если Y, то ТП; если N, то услуга)
Примечание: В этот справочник выгружаются все ТП, а из услуг только те, которые не входят в ТП, например, услуга "Реальный IP-адрес"
Справочник лицевых счетов
- ID лицевого счёта*
- Номер лицевого счёта
- ID валюты*
- Баланс счёта
- Кредитный лимит
Привязки абонента к сетевым службам
- ID привязки*
- ID абонента*
- ID сетевой службы*
- Логин
- Пароль
Примечание: В эту таблицу выгружаются логины и пароли на VPN, на личный кабинет, SIP-аккаунт и на другие ресурсы, которые контролирует биллинг. При этом в целях безопасности пароли при тестовых выгрузках нужно заменять на звёздочки или случайные строки. Настоящие пароли будут выгружаться всего один раз, при окончательной миграции.
Участие абонентов в группах
- ID записи об участии*
- ID абонента*
- ID группы*
Подписка абонентов на услуги
- ID подписки*
- ID лицевого счёта*
- ID услуги (тарифного плана)*
- Дата окончания текушего учётного периода
Оконечное оборудование абонентов
- ID оборудования*
- ID лицевого счёта*
- Физический адрес (MAC)
- IP-адрес
- Абонентский телефонный номер
Справочник абонентов
- ID абонента*
- ID состояния абонента*
- Физическое или юридическое лицо
- Номер договора
- ФИО (физлица) / Наименование (юрлица)
- Домашний адрес
- Номер паспорта
- Контактный телефон
- Контактный email
Список атрибутов для личных данных абонента может быть расширен по необходимости.