카메라 관리

카메라를 관리하기 위한 API 입니다.

사용하는 HTTP 메소드(Method) 종류와 용도는 다음과 같습니다.

네트워크 카메라 소스

네트워크 카메라 소스 속성

이름 형식 설명
id 정수 네트워크 카메라 소스 ID
name 문자열 이름
address 문자열 주소
mac 문자열 MAC 주소
channels 채널 목록 채널 목록

네트워크 카메라 목록

GET /api/sources

다음은 네트워크 카메라 목록을 얻어오는 예제입니다.

요청

GET /api/sources HTTP/1.1
Host: demo.nvrsw.com
Authorization: [Basic Authentication]
Content-Type: application/json

응답

HTTP/1.1 200 OK
Content-Type: application/json

{
  "sources": [
    {
      "id": 1,
      "name": "netcam1",
      "address": "192.168.0.101",
      "mac": "12:34:56:78:90:ab",
      "channels": [ { "id": 1, "name": "Channel 1" } ]
    },
    {
      "id": 2,
      "name": "netcam2",
      "address": "192.168.0.102",
      "mac": "12:34:56:78:90:ac",
      "channels": [ { "id": 1, "name": "Channel 1" } ]
    },
    {
      "id": 3,
      "name": "netcam3",
      "address": "192.168.0.103",
      "mac": "12:34:56:78:90:ad",
      "channels": [
        { "id": 1, "name": "Channel 1" },
        { "id": 2, "name": "Channel 2" },
        { "id": 3, "name": "Channel 3" },
        { "id": 4, "name": "Channel 4" }
      ]
    },
    {
      "id": 4,
      "name": "netcam4",
      "address": "192.168.0.104",
      "mac": "12:34:56:78:90:ae",
      "channels": [ { "id": 1, "name": "Channel 1" } ]
    }
  ]
}

카메라

이름 형식 설명
id integer 카메라 ID
name string 이름
source integer 네트워크 카메라 소스 ID
channel integer 네트워크 카메라 소스 채널 ID
connected boolean 카메라에 연결되었는지 여부
has_signal boolean 카메라 신호 여부

sourcechannel 값은 1부터 시작합니다. source 값이 0 이면 네트워크 카메라 소스 를 사용하지 않습니다.

카메라 목록

GET /api/cameras

다음은 카메라 목록을 얻어오는 예제입니다.

요청

GET /api/cameras HTTP/1.1
Host: demo.nvrsw.com
Authorization: [Basic Authentication]
Content-Type: application/json

응답

HTTP/1.1 200 OK
Content-Type: application/json

{
  "cameras":[
    {
      "id":1,
      "name":"Camera 1",
      "source":1,
      "channel":1,
      "connected":true,
      "has_signal":true
    },
    {
      "id":2,
      "name":"Camera 2",
      "source":2,
      "channel":1,
      "connected":false,
      "has_signal":false
    },
    {
      "id":3,
      "name":"Camera 3",
      "source":2,
      "channel":2,
      "connected":false,
      "has_signal":false
    },
    {
      "id":4,
      "name":"Camera 4",
      "source":1,
      "channel":4,
      "connected":true,
      "has_signal":true
    }
  ]
}

특정 카메라 정보

GET /api/cameras/1

다음은 id1 인 카메라 정보를 얻어오는 예제입니다.

요청

GET /api/cameras/1 HTTP/1.1
Host: demo.nvrsw.com
Authorization: [Basic Authentication]
Content-Type: application/json

응답

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id":1,
  "name":"Camera 1",
  "source":1,
  "channel":1,
  "connected":true,
  "has_signal":true
}

카메라 수정

sourcechannel 은 같이 사용해야 합니다.

PUT /api/cameras/1

다음은 id1 인 카메라에서 사용하는 네트워크 카메라 소스채널 을 수정하는 예제입니다.

요청

PUT /api/cameras/1 HTTP/1.1
Host: demo.nvrsw.com
Authorization: [Basic Authentication]
Content-Type: application/json

{ "source": 2, "channel": 3 }

응답

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id":1,
  "name":"Camera 1",
  "source":2,
  "channel":3,
  "connected":true,
  "has_signal":true
}

여러 카메라를 동시에 수정

PUT /api/cameras

다음은 여러 카메라의 네트워크 카메라 소스채널 을 수정하는 예제입니다.

요청

PUT /api/cameras HTTP/1.1
Host: demo.nvrsw.com
Authorization: [Basic Authentication]
Content-Type: application/json

{
  "cameras": [
    { "id": 1, "source": 3, "channel": 3 },
    { "id": 2, "source": 4, "channel": 4 }
  ]
}

응답

HTTP/1.1 200 OK
Content-Type: application/json

{
  "cameras":[
    {
      "id":1,
      "name":"Camera 1",
      "source":3,
      "channel":3,
      "connected":true,
      "has_signal":true
    },
    {
      "id":2,
      "name":"Camera 2",
      "source":4,
      "channel":4,
      "connected":false,
      "has_signal":false
    },
    {
      "id":3,
      "name":"Camera 3",
      "source":2,
      "channel":2,
      "connected":false,
      "has_signal":false
    },
    {
      "id":4,
      "name":"Camera 4",
      "source":1,
      "channel":4,
      "connected":true,
      "has_signal":true
    }
  ]
}

© NVRSW.com 2016-2018 Thu Sep 06 2018 15:39:38 GMT+0900 (대한민국 표준시)