Page tree
Skip to end of metadata
Go to start of metadata

Интеграция с TVIP Media (https://tvip.media) (а так же с базовой платформой TVIP TMS (http://tms.tviplabs.com)) представлена в виде отрытого кода (динамические классы).

При интеграции с системой TVIP продукты модуля являются подключаемыми тарифами MW.

Создайте конфигурацию модуля и сделайте ее активной:

# Активные и приостановленные статусы договора
contract.status.active.codes=0
contract.status.suspend.codes=3,4

# Id сущностей (Справочники - Атрибуты) для продукта, сервиса и канала,
# для привязки атрибутов к продуктам, сервисам и каналам
#productSpec.entitySpecId=
#serviceSpec.entitySpecId=
#tvChannelSpec.entitySpecId=

#Пункты Web-меню (старый ЛК)
web.menuItem1=TV подписки

# Параметры автоматической генерации логина для аккаунта. Можно указать в конфигурации модуля, конфигурации устройства, конфигурации типа сервиса
# (в последнем случае значения будут главнее):
# минимальное значение логина при генерации логина
account.login.min=10000001
# максимальное значение логина при генерации логина (т.е. если в базе присутствуют логины 1,2,3 и 10000000,
# то при генерации создастся логин 4, а не 10000001)
account.login.max=99999999
# форматирование генерируемого логина
#account.login.format=0000000
 
# Формат логина. Если указано и логин является числом, то применяется форматирование логина по данному шаблону перед отправкой его в MW.
# В случае, если поле Логин в типе аккаунта не используется - вместо него подставляется ID аккаунта (биллинга)
account.login.format=

# Параметры пароля для аккаунта. Можно указать в конфигурации модуля, конфигурации устройства, конфигурации типа сервиса
# (в последнем случае значения будут главнее):
# минимальная длина пароля
account.password.length.min=4
# Максимальная длина пароля
account.password.length.max=8
# Разрешенные символы (используются также при генерации пароля)
account.password.chars=1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
# Описание разрешенных символов, если пользователь ввел другие
account.password.chars.description=В пароле допустимы только цифры и латинские буквы.
# Длина для автоматически генерируемого пароля
account.password.length.auto=6
# Используемые символы для автоматически генерируемого пароля (по умолчанию значение берется из параметра account.password.chars)
#account.password.chars.auto=

Необходимо создать новый тип устройства, назвать его, например, Access+Accounting - данный тип устройства будет отражать приложения TvAccess и TvAccounting.

Далее создайте новый тип устройства, назовите его, например, TVIPmedia и добавьте конфигурацию:

Конфигурация
# Коды параметров договора для заполнения полей в Middleware
# если не указаны параметры ФИО, то используется комментарий договора
# ФИО/Название
customer.name.pid=
# Фамилия
customer.lastName.pid=
# Имя
customer.firstName.pid=
# Отчество
customer.middleName.pid=

Выберите в поле OrderManager динамический класс ru.bitel.bgbilling.modules.tv.dyn.tvip.TVIPOrderManager (чтобы его можно было выбрать, данный дин. класс должен быть скомпилирован через вкладку Управление динамическим кодом).

Создайте устройство типа Access+Accounting и укажите конфигурацию:

Конфигурация
# Обработка/обсчет
# кол-во потоков в обработчике
accounting.worker.1.thread.count=1
# пауза перед следующим выполнением
accounting.worker.1.tracking.account.1.delay=60
# максимальное кол-во обработанных аккаунтов в одном выполнении
accounting.worker.1.tracking.account.1.batchSize=500
# пауза перед следующим выполнением
accounting.worker.1.tracking.event.1.delay=10
# максимальное кол-во обработанных аккаунтов в одном выполнении
accounting.worker.1.tracking.event.1.batchSize=100


# Синхронизация
# кол-во выполняемых задач в одном блоке
om.batch.size=20
# время ожидания завершения future задач
om.batch.pause=0
# время ожидания завершения future задач
om.batch.wait=5
# время ожидания следующей задачи перед закрытием соединения
om.batch.waitNext=5

# пауза после ошибки
om.error.pause=60
# кол-во попыток с ошибкой перед тем как отложить задачу
om.error.redelivery.count=5
# кол-во попыток с ошибкой после которого отправить оповещение
om.error.alarm.count=20
# таймаут задания, выполняющегося с ошибкой
om.error.redelivery.timeout=86400

Данное устройство будет отражать приложения TVAccess и TVAccounting.

Создайте дочернее к предыдущему устройству устройство типа TVIPmedia, укажите логин и пароль. Также логин/пароль подключения можно указать в конфигурации устройства, в этом случае поля Логин/Пароль не будут использоваться:

Конфигурация
# Параметры доступа к API
#om.url=https://my.tvip.media/api/provider/
om.login=
om.password=

Добавьте тип аккаунта Аккаунт, укажите в его конфигурации ID только что добавленного устройства TVIPmedia:

Конфигурация
# автоматически привязываем к устройству TVIP
const.device.id=
# шаблон названия
title.pattern=Аккаунт (${login})

Установите галочки на полях логин и пароль.

Теперь необходимо создать Продукты - они будут отражать тарифы системы TVIPmedia. Поле Название - это название, с которым данный продукт будет отображаться в биллинге. Поле Идентификатор - идентификатор тарифа системы TVIPmedia (поле "ID" ).

Чтобы абонент мог активировать Продукт (тем самым активируя подписку в TVIP) необходимо, чтобы в продукте был задан хотя бы один режим активации. Далее от выбранного режима активации может зависеть режим тарификации.

В продуктах-тарифах на вкладке Зависимость укажите, что они не совместимы с другими продуктами-тарифами, если есть необходимость, чтобы нельзя было активировать два продукта-тарифа одновременно.

Установите серверные приложения модуля согласно инструкции.

Далее на договоре нужно добавить модуль TV, настроенный тариф биллинга и создать аккаунт, который будет связан с аккаунтом из системы TVIP.

  • No labels