...
Получить у владельцев платформы технический доступ к панели администратора. В дальнейшем он будет использоваться и для доступа к описанию методов API. Также необходимо запросить ID библиотеки
Получить у владельцев платформы доступ к файлу с выгрузкой мета-данных контента для последующего импорта.
В панели администратора получить TOKEN оператора. Полученный TOKEN будет использоваться для подписания всех запросов к API при работе интеграции.
ВАЖНО: При повторном получении повторной генерации токена, ранее выданный токен будет инвалидирован (отключён)
Реализовать логику регистрации пользователя в Платформа24
Реализовать управление подписками пользователя в Платформа24 (Назначение/Отключение подписки)
Реализовать получение потока запрашиваемого контента для пользователя оператора
...
Общая документация по методу создания пользователя здесь: https://signaltv$platform_name$.platform24.tv/v2/redoc#tag/users/operation/users_create
Для создания пользователя необходимо использовать метод
...
Обязательными полями являются username и password
Code Block |
---|
{
"username": "string", // Не может содержать точки в имени пользователя
"first_name": "string",
"last_name": "string",
"provider_uid": "string",
"phone": "string",
"email": "user@example.com",
"password": "string",
"device_limit": 0,
"is_active": true
} |
...
Expand |
---|
title | curl запрос для создания пользователя |
---|
|
Code Block |
---|
curl -X 'POST' \
'https://signaltv$platform_name$.platform24.tv/v2/users?token=21de6432fdc13f2d78f28eebdb46960e' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'X-CSRFTOKEN: 9ewDrRwnm4gDhH7rrEl4Q1o5yd4GnouM9weVEnwXlCwb8QcAeJoHWkqDY7qx21eB' \
-d '{
"username": "tele_720",
"provider_uid": "720",
"password": "2472024"
}' |
|
...
Expand |
---|
|
Code Block |
---|
{
"id": 10364,
"username": "tele_720",
"first_name": "",
"last_name": "",
"provider_uid": "720",
"parental_code": "0000",
"parental_status": "notset",
"phone": null,
"email": null,
"timezone": null,
"device_limit": 5,
"provider": {
"id": 4,
"name": "Telatel-PlanB",
"proxy": null,
"landing": {
"logo": null,
"url": "",
"shortname": "Telatel",
"login": {
"title": "Поздравляем!",
"description": "Услуги современного интерактивного телевидения доступны в сети Вашего провайдера! Уточните, пожалуйста, у своего провайдера логин и пароль для доступа к услуге от компании \"signaltv$platform_name$\""
},
"support": {
"email": "",
"phone": "",
"url": ""
}
},
"auto_auth": null,
"is_allow_additional_packets_without_base": false,
"free_channels_count": 100,
"store_sources": [],
"language": null,
"currency": {
"ISO_CODE": "RUB",
"UTF_NAME": "₽",
"ASCII_NAME": "руб.",
"FORMAT": "{amount} {symbol}"
},
"phone_mask": null
},
"is_provider_free": true,
"is_active": true,
"is_testuser": false,
"is_self_deletion_allowed": false,
"is_validated": false,
"is_guest": false,
"last_login": null,
"date_joined": "2023-04-04T10:03:06.257865Z",
"subscriptions": [],
"parental_dialogue": {}
} |
|
...
Expand |
---|
|
Code Block |
---|
curl -X 'GET' \
'https://signaltv$platform_name$.platform24.tv/v2/packets?token=bd21de6432fdc13f2d783ecf28eebdb46960e052' \
-H 'accept: application/json' |
|
...
Expand |
---|
title | Подключение подписки пользователю |
---|
|
Code Block |
---|
curl -X 'POST' \
'https://signaltv$platform_name$.platform24.tv/v2/users/10364/subscriptions?token=bd21de6432fdc13f2d783ecf28eebdb46960e052' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'X-CSRFTOKEN: NYFDQ99YklE3PSI0niBM3DbjXrOJe5dxNgnV3F9yjTUBG1N9anEp9WdRnlaATIXm' \
-d '[{
"packet_id": 9,
"start_at": "2023-04-04T13:49:12.903Z",
"renew": true,
"is_paused": true
}
]' |
|
...
Expand |
---|
title | Получение текущих пользовательских подписок |
---|
|
Code Block |
---|
curl -X 'GET' \
'https://signaltv$platform_name$.platform24.tv/v2/users/10364/subscriptions?token=bd21de6432fdc13f2d783ecf28eebdb46960e052' \
-H 'accept: application/json' |
|
...
Expand |
---|
title | curl запрос для удаления подписки |
---|
|
Code Block |
---|
curl -X 'DELETE' \
'https://signaltv$platform_name$.platform24.tv/v2/users/10364/subscriptions/849505762352128683?token=bd21de6432fdc13f2d783ecf28eebdb46960e052' \
-H 'accept: */*' \
-H 'X-CSRFTOKEN: tUhy3Z7t5LMOVtVsOoIGvadOorFcht5RPZ3vjjntproxIJrW2wFs63fqc7zADuAL' |
|
...
Работа с этим методом аналогична методу DELETE описанному выше.
ДОБАВЛЕНИЕ УСТРОЙСТВА ПОЛЬЗОВАТЕЛЯ
...
Для того что бы пользователь смог получить ссылку на поток, необходимо зарегистрировать устройство пользователя. Необходимо что бы у пользователя был минимум одно зарегистрированное устройство. Для регистрации необязательно указывать реальные данные.
...
Expand |
---|
Code Block |
---|
curl -X 'POST' \
'https://signaltv$platform_name$.platform24.tv/v2/auth/device' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'X-CSRFTOKEN: B8FOLywf3J5DEqOhXijJfO1oTnDrZjzaXdrL1SMfnpHmrGkLbqgvQH30H3xPlk44' \
-d '{
"device_id": "e67044b9-70a2-482d-b857-f80369c14187"
}' |
|
...
Для запроса потока надо знать library_id, content_id запрашиваемого контента и токен пользователя, для которого получаем поток.
library_id - неизменный в рамках всей библиотеки и сообщается партнёром
content_id - содержится в файле с выгрузкой метаданных. Доступ к файлу также предоставляется партнёром.
ВНИМАНИЕ: Если JSON файл с мета-данными будет открываться в браузере, то из-за особенностей реализации java-script, ID используемые в файле могут отображаться не корректно.
Для получение непосредственно ссылки на контент надо использовать метод
GET/v2/libraries/{library_id}/contents/{id}/stream
Expand |
---|
Code Block |
---|
curl -X 'GET' \
'https://signaltv$platform_name$.platform24.tv/v2/libraries/23/contents/832404576750893135/stream?access_token=37efadb21cf871cfee4d47fe2d0521552dc4be5f' \
-H 'accept: application/json' |
|
...