Обновление медиасервера
Обновление медиасервера
У медиасерверов есть поля, которые нужны только для определённого типа медиасервера.
Для media_server_v2 это: storages и token
Для flussonic это: proxy
Поле has_cache только для flussonic (для других медиасерверов оно будет null). Оно не устанавливается с API, а получает данные от медиасервера. Токен будет менять только в том случае, если его прислать в запросе.
Если на сервере есть потоки, то поменять можно только следующие поля:
is_enabled,
streams_limit,
bitrate_limit,
schema,
is_stream_condition_management_enabled,
is_need_to_enable_disabled_streams
Если будут присылаться другие поля, они будут игнорироваться.
PUT /api/admin/v1/servers/{server} |
Параметры метода
int
server, уникальный идентификатор Медиасервера
string
type, тип сервера
array
storages, массив хранилищ
string
internal_domain, адрес, по которому будут обращаться к API медиасервера
string
external_domain, адрес, по которому клиенты будут получать стримы, скриншоты и архивы
int
internal, внутренний порт
int
external, внешний порт
int
rtsp, rtsp порт
bool
is_enabled, включить распределение
string
proxy, адрес прокси, только для flussonic, это нужно чтобы скачать preview и архив могли только пользователи платформы
string
group_type, группа
int
streams_limit, лимит количества потоков
int
bitrate_limit, лимит входящего трафика, Кбит/с
string
token, токен для доступа к медиасерверу. Обрабатывается только для серверов с типом media_server_v2
string
schema, URL схема
bool
is_stream_condition_management_enabled, нужно ли включать функционал
bool
is_need_to_enable_disabled_streams, нужно ли включить отключенные стримы , которые находятся на этом медиасервере.
Будет обрабатываться в случае, если изменяется is_stream_condition_management_enabled с true на false и к медиасерверу относятся стримы
200 |
Успешный ответ
JSON
|
401 |
Токен авторизации не передан или не валидный Получение токена |
curl -k --request POST \
--url 'https://your-domain/api/admin/v1/servers/{server}' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--data '{
"server": 0,
"type": "string",
"storages": [],
"internal_domain": "string",
"external_domain": "string",
"internal": 0,
"external": 0,
"rtsp": 0,
"is_enabled": true,
"proxy": "string",
"group_type": "string",
"streams_limit": 0,
"bitrate_limit": 0,
"token": "string",
"schema": "string",
"is_stream_condition_management_enabled": true,
"is_need_to_enable_disabled_streams": true
}'
$data = array (
'server' => 0,
'type' => 'string',
'storages' =>
array (
),
'internal_domain' => 'string',
'external_domain' => 'string',
'internal' => 0,
'external' => 0,
'rtsp' => 0,
'is_enabled' => true,
'proxy' => 'string',
'group_type' => 'string',
'streams_limit' => 0,
'bitrate_limit' => 0,
'token' => 'string',
'schema' => 'string',
'is_stream_condition_management_enabled' => true,
'is_need_to_enable_disabled_streams' => true,
);
$context = stream_context_create([
'ssl'=>['verify_peer' => false],
'http' => [
'method' => 'PUT',
'header' => "Content-Type: application/json\r
Accept: application/json",
'content'=>json_encode($data)
]
]);
$result = file_get_contents('https://your-domain/api/admin/v1/servers/{server}', false, $context);