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 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 контентом, размещенном на Платформе24
Данная инструкция описывает основные и необходимые действия, которые необходимо произвести оператору партнёру для организации доступа своим пользователям для целей просмотра VoD контента.
Получить у владельцев платформы технический доступ к панели администратора. В дальнейшем он будет использоваться и для доступа к описанию методов API. Также необходимо запросить ID библиотеки
Получить у владельцев платформы доступ к файлу с выгрузкой мета-данных контента для последующего импорта. ВНИМАНИЕ: Если JSON файл с мета-данными будет открываться в браузере, то из-за особенностей реализации java-script, ID используемые в файле могут отображаться не корректно.
В панели администратора получить TOKEN оператора. Полученный TOKEN будет использоваться для подписания всех запросов к API при работе интеграции, кроме запроса стрима. При запросе стрима используется пользовательский токен полученный по device_id. ВАЖНО: При повторной генерации токена, ранее выданный токен будет инвалидирован (отключён)
Реализовать логику регистрации пользователя в Платформа24
Реализовать управление подписками пользователя в Платформа24 (Назначение/Отключение подписки)
Реализовать получение потока запрашиваемого контента для пользователя оператора
Исходник:
Методы вызываемые с BackEnd
Регистрация пользователя
Для полноценного управления услугой/подпиской необходимо создать пользователя в платформе. Позже созданному пользователю будут назначаться соответствующие подписки.
Для создания пользователя необходимо использовать метод
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 описанному выше.
Добавление устройства пользователя
Для того что бы пользователь смог получить ссылку на поток, необходимо зарегистрировать устройство пользователя. Необходимо, чтобы у пользователя был минимум одно зарегистрированное устройство. Для регистрации необязательно указывать реальные данные.
Для регистрации устройства необходимо использовать метод
Добавление устройства можно осуществлять как с BackEnd, так и с устройства пользователя и подписывать пользовательским токеном, полученным при вызове метода /v2/auth/provider. Это позволит получить дополнительные данные по устройству и более полно заполнить свойства устройства. Создание устройства с пользовательского устройства позволяет снизить RPS нагрузку на BackEnd и не выработать лимиты по запросам.
В случае успешного выполнения запроса будет JSON из которого нужно будет сохранить для этого пользователя ID созданного устройства. Он содержится в теге ID (e67044b9-70a2-482d-b857-f80369c14187).
Из полученного ответа нужно только значение поля “access_token“. Это значение далее надо будет использовать для получения ссылки на контент запрашиваемый пользователем.
Запрос ссылки на стрим
Теперь когда все зарегистрировано, подключено, создано и т.п. можно запросить поток.
Запрос стрима нужно делать из клиентского приложения.
Для запроса потока надо знать library_id, content_id запрашиваемого контента и токен пользователя, для которого получаем поток.
library_id - неизменный в рамках всей библиотеки и сообщается партнёром content_id - содержится в файле с выгрузкой метаданных. Доступ к файлу также предоставляется партнёром.
Для получение непосредственно ссылки на контент используется метод
GET /v2/libraries/{library_id}/contents/{id}/stream