Atlassian uses cookies to improve your browsing experience, perform analytics and research, and conduct advertising. Accept all cookies to indicate that you agree to our use of cookies on your device. Atlassian cookies and tracking notice, (opens new window)
Интеграция оператора с VoD библиотекой
By Nikolay Krasovskiy
6 min
Инструкция по работе с VoD контентом размещенном на Платформа24
Данная инструкция описывает основные и необходимые действия, которые необходимо произвести оператору партнёру для организации доступа своим пользователям для целей просмотра VoD контента.
Основные этапы
Получить у владельцев платформы технический доступ к панели администратора. В дальнейшем он будет использоваться и для доступа к описанию методов API. Также необходимо запросить ID библиотеки
Получить у владельцев платформы доступ к файлу с выгрузкой мета-данных контента для последующего импорта.
В панели администратора получить TOKEN оператора. Полученный TOKEN будет использоваться для подписания всех запросов к API при работе интеграции. ВАЖНО: При повторной генерации токена, ранее выданный токен будет инвалидирован (отключён)
Реализовать логику регистрации пользователя в Платформа24
Реализовать управление подписками пользователя в Платформа24 (Назначение/Отключение подписки)
Реализовать получение потока запрашиваемого контента для пользователя оператора
РЕГИСТРАЦИЯ ПОЛЬЗОВАТЕЛЯ
Для полноценного управления услугой/подпиской необходимо создать пользователя в платформе. Позже созданному пользователю будут назначаться соответствующие подписки.
Для создания пользователя необходимо использовать метод
POST /v2/users
Обязательными полями являются username и password
{
"username": "string", // Не может содержать точки в имени пользователя
"first_name": "string",
"last_name": "string",
"provider_uid": "string",
"email": "user@example.com",
"password": "string",
"device_limit": 0,
"is_active": true
}
Нижеприведенный запрос создаёт пользователя с логином tele_720 и паролем 2472024. При этом устанавливается provider_uid равный 720. 720 это идентификатор пользователя у вас как у оператора (Например номер договора)
В результате запроса будут возвращены данные в json формате. В ответе будет содержаться идентификатор пользователя в платформе (ID), его необходимо сохранить и использовать для дальнейшей работы с пользователем. В данном примере ответа это “10364“
Пользователь успешно создан, теперь можно подключить ему подписку.
В случае возникновения ошибки, в ответе будет содержаться описание ошибки
{
"detail": {
"username": [
"Пользователь с таким именем уже существует."
]
},
"error": {
"message": "{'username': [ErrorDetail(string='Пользователь с таким именем уже существует.', code='invalid')]}"
},
"status_code": 400,
"error_code": "invalid"
}
ПОЛУЧЕНИЕ СПИСКА ДОСТУПНЫХ ПАКЕТОВ
Список доступных пакетов и их ID можно посмотреть в панели администратора или выполнив запрос к API
В результате этого запроса подписка закончится временем выполнения запроса.
В случае когда надо изменить срок действия подписки, например когда идёт отключение в запланированный день и время, то надо использовать метод
PATCH/v2/users/{user_id}/subscriptions/{id}
Работа с этим методом аналогична методу DELETE описанному выше.
ДОБАВЛЕНИЕ УСТРОЙСТВА ПОЛЬЗОВАТЕЛЯ
Для того что бы пользователь смог получить ссылку на поток, необходимо зарегистрировать устройство пользователя. Необходимо что бы у пользователя был минимум одно зарегистрированное устройство. Для регистрации необязательно указывать реальные данные.
Для регистрации устройства необходимо использовать метод
Поле device_type должно содержать одно из следующих значений: tv, stb, tablet, phone, pc
В случае успешного выполнения запроса будет JSON из которого нужно будет сохранить для этого пользователя ID созданного устройства. Он содержится в теге ID (e67044b9-70a2-482d-b857-f80369c14187).
Из полученного ответа нужено только значение поля “access_token“. Это значение далее надо будет использовать для получения ссылки на контент запрашиваемый пользователем.
ЗАПРОС ССЫЛКИ НА СТРИМ
Теперь когда все зарегистрировано, подключено, создано и т.п. можно запросить поток.
Для запроса потока надо знать library_id, content_id запрашиваемого контента и токен пользователя, для которого получаем поток.
library_id - неизменный в рамках всей библиотеки и сообщается партнёром content_id - содержится в файле с выгрузкой метаданных. Доступ к файлу также предоставляется партнёром.
ВНИМАНИЕ: Если JSON файл с мета-данными будет открываться в браузере, то из-за особенностей реализации java-script, ID используемые в файле могут отображаться не корректно.
Для получение непосредственно ссылки на контент надо использовать метод