Jump to content
xrt

archive.get_channels_list всегда возвращает пустой ответ

Recommended Posts

Привет!

Одна камера, запись по движению. Пишется все хорошо, "Просмотр архива" показывает.  Пытаюсь получить информацию через rpc. Собственно данный запрос всегда возвращает пустой ответ.  Пробую запись за 9 апреля 2018 года. Соответственно и archive.get_motions_timeline тоже не работает.

 

cat list.json
{
  "method" : "archive.get_channels_list",
  "params" :
  {
   "start_time" : [2018, 4, 9],
    "end_time" : [2018, 4, 9]
  }
}

Ответ

 

curl --user rpc:rpc -vX POST http://10.52.255.84:9786/rpc -d @list.json --header "Content-Type: application/json"

> POST /rpc HTTP/1.1
> Authorization: Basic cnBjOnJwYw==
> User-Agent: curl/7.38.0
> Host: 10.52.255.84:9786
> Accept: */*
> Content-Type: application/json
> Content-Length: 121
>
< HTTP/1.1 200 OK
< Access-Control-Allow-Origin: *
< Connection: Keep-Alive
< Content-Length: 54
< Content-Type: application/json
< Date: Mon, 09 Apr 2018 10:02:41 GMT
< Server: Devline Linia Server
<
{
        "id" : 0,
        "result" : {
                "channels" : []
        }
}

 

Edited by xrt

Share this post


Link to post
Share on other sites

Здравствуйте!
Описание с примерами запросов и ответов можно посмотреть в спецификации https://devline.ru/aboutweb/#RPC
Если Вы хотите получить просто список камер , это можно сделать и так http://admin:@demo.devline.ru:1818/cameras/

Share this post


Link to post
Share on other sites

Именно оттуда я из взял пример запроса. Но он не работает.

Share this post


Link to post
Share on other sites

Нужно в запросе помимо даты указать время:

{
  "method" : "archive.get_channels_list",
  "params" :
  {
   "start_time" : [2018, 4, 9, 0, 0, 0, 0 ],
    "end_time" : [2018, 4, 9, 23, 59, 59, 999]
  }
}

 

Share this post


Link to post
Share on other sites

В примере на сайте время не указано.

А так работает,  спасибо!

Share this post


Link to post
Share on other sites

В том примере даты разные. По умолчанию не указанные элементы даты/времени принимаются равными 0.

Share this post


Link to post
Share on other sites

Кстати в методе archive.get_motions_timeline тоже непонятно, в спецификации написано.

  • channel - необязательный идентификатор канала, если не указан, используются все доступные;

Если сделать без указания канала, возвращает ошибку

 cat re.json
{
  "method" : "archive.get_motions_timeline",
  "params" :
  {
    "start_time" : [2018, 4, 9, 11, 00, 0],
    "end_time"   : [2018, 4, 9, 11, 05, 0],
    "unit_len"   : 60
  }
}

root@Cloud:~/line# curl --user rpc:rpc -X POST http://10.52.255.84:9786/rpc -d @re.json --header "Content-Type: application/json"
{
        "error" : {
                "data" : null,
                "message" : "channel",
                "type" : "invalid_param"
        },
        "id" : 0
}

А если указать канал, то возвращает нулевой timeline, хотя запись в это время (11.00-11.05) имеется в архиве.

 

 cat req.json
{
  "method" : "archive.get_motions_timeline",
  "params" :
  {
    "channel" : 0,
    "start_time" : [2018, 4, 9, 11, 00, 0],
    "end_time"   : [2018, 4, 9, 11, 05, 0],
    "unit_len"   : 60
  }
}

root@Cloud:~/line# curl --user rpc:rpc -X POST http://10.52.255.84:9786/rpc -d @req.json --header "Content-Type: application/json"
{
        "id" : 0,
        "result" : {
                "timeline" : [0,0,0,0,0]
        }
}

 

Share this post


Link to post
Share on other sites

Здравствуйте!
archive.get_motions_timeline - это таймлайн детекции движения (аналитика), работает только с включенной галкой "Аналитика" в настройках детектора.
Опишите реализуемую задачу.

Share this post


Link to post
Share on other sites

Задача, посчитать, сколько машин через ворота за день проехало.

Share this post


Link to post
Share on other sites

Здравствуйте!
В самой "Линии" это можно пробовать сделать только по детекции движения - верно.  Но сейчас "Линия"  не умеет считать ни детекции в заданной зоне ни метки в архиве
Возможно проще будет передавать данные о детекции в заданной зоне для подсчёта сразу в другую программу,  для примера:

Можно так-же рассмотреть возможность реализации задачи за счёт интеграции с другими системами https://devline.ru/skud/ 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×