API de usuários
Os usuários são usados para controlar o acesso à interface web do Astra e também o acesso às saídas HTTP MPEG-TS e HLS
Configuração do usuário
Seção intitulada “Configuração do usuário”{ "enable": true, "type": 0, "comment": "...",
"token": "...", "ip": "...", "expire": 0, "conlimit": 0}enable– conta ativada ou nãotype– tipo de usuário1- admin. Acesso total à interface web do Astra2- observador. Acesso somente leitura à interface web do Astra3- usuário comum. Sem acesso à interface web do Astra
comment- campo opcional, para a descrição do usuário
Campos opcionais para a autorização integrada de acesso aos canais HLS ou HTTP MPEG-TS:
token- token usado nas requisições HTTP. Por exemplo:http://server:8000/play/a001/index.m3u8?token=secretip- permite o acesso aos canais pelo endereço IP do clienteexpire- data no formato unix timestamp em que o acesso aos canais será bloqueadoconnlimit- limita as conexões aos canais
Obter um usuário
Seção intitulada “Obter um usuário”Requisição: POST /control/
{ "cmd": "get-user", "id": "..."}id- login do usuário
A resposta é um JSON com a configuração do usuário
Criar ou atualizar um usuário
Seção intitulada “Criar ou atualizar um usuário”Requisição: POST /control/
{ "cmd": "set-user", "id": "...", "user": { "enable": true, "type": 0, "password": "..." }}id– login do usuáriouser- configuração do usuáriopassword- senha em texto puro; na configuração é salvo o hash da senha
Exemplo
Você pode criar um novo usuário executando o seguinte comando:
curl -X POST --user login -d @- http://server:8000/control/ <<END{ "cmd": "set-user", "id": "new-admin", "user": { "enable": true, "type": 1, "password": "secret" }}ENDem caso de sucesso, o Astra retorna:
{ "set-user": "ok" }Remover um usuário
Seção intitulada “Remover um usuário”Requisição: POST /control/
{ "cmd": "set-user", "id": "...", "user": { "remove": true }}Ativar ou desativar um usuário
Seção intitulada “Ativar ou desativar um usuário”Requisição: POST /control/
Liga ou desliga o usuário:
{ "cmd": "toggle-user", "id": "..."}id- login do usuário
Exemplo
Você pode ativar ou desativar um usuário executando o seguinte comando:
curl \ -X POST \ --user login \ -d '{"cmd":"toggle-user", "id":"login"}' \ http://server:8000/control/em caso de sucesso, o Astra retorna:
{ "toggle-user": "ok" }