VIGI NVR에서 알람 서버를 설정하는 방법
목차
서론
알람 서버는 알람 이벤트가 발생했을 때 VIGI NVR이 보고하는 이벤트 메시지를 수신하는 기능입니다.
보고서에 들어가는 정보는 장치 측 소프트웨어 버전을 업데이트하면서 이벤트 유형, 이벤트 타임스탬프, 장치 세부 정보, 이벤트 스냅샷 이미지(선택 사항) 등을 추가하여 점차 보강할 예정입니다.
이 기능을 통해 VIGI NVR과 타사 시스템 간의 원활한 알람 연동 및 업무 처리가 가능합니다.
이 문서에서는 VIGI NVR에서 알람 서버 기능을 설정하는 방법과 서버 연결 실패, 비정상적인 이벤트 보고, 서버 측 파싱 오류와 같은 잠재적 문제에 대한 문제 해결 가이드도 제공합니다.
요구 사항
- VIGI NVR (알람 서버 지원 모델)
- 알람 서버
- 노트북
설정
1단계. 아래 토폴로지 다이어그램에 따라 토폴로지를 구축합니다.

참고: 이 문서에 표시된 토폴로지는 참고용일 뿐입니다. 실제 네트워크 구축 시나리오는 더 다양할 수 있습니다.
2단계. VIGI NVR의 IP 주소를 사용하여 웹 인터페이스에 로그인합니다 . 사용자 이름과 비밀번호를 입력한 후 ‘로그인’을 클릭합니다.

3단계. ‘설정 > 이벤트 > 알람 서버’로 이동한 후 “+추가” 버튼을 클릭합니다.

4단계. 팝업 창에서 타사 서버와 관련된 정보를 입력합니다. 이 문서에서는 https://webhook.site/#!/이 참조 서버로 사용됩니다.

5단계. 타사 서버의 호스트 IP 또는 도메인과 URL을 입력하고, 적절한 프로토콜(HTTP/HTTPS)을 선택한 다음 1에서 65535 사이의 포트 번호를 지정합니다. 이 문서에서는 설정 예시를 위해 HTTP 프로토콜과 포트 80을 사용합니다. 또한 보고된 이벤트 메시지에 이미지를 첨부할지 선택할 수도 있습니다. 마지막으로 ‘저장’을 클릭하여 설정을 적용하고 저장합니다.

참고:
1. 설정 매개변수에서 ‘호스트 IP/도메인’은 서버의 IP 주소 또는 도메인 이름을 의미하며, 이 webhook.site를 의미합니다.
2. URL은 장치와 서버 간에 교환되는 HTTP 메시지에 사용되는 URL 경로를 의미합니다. 이 문서에서는 서버의 기본 URL /0126c2b0-f1cb-4b17-92f8-f64bff5a050f)이 사용됩니다.
3. 향상된 알람 메시지 서비스는 NVR의 펌웨어 업데이트 후 지원됩니다. 이 기능을 활성화하면 알람 서버는 보고된 알람 메시지에 향상된 이벤트 관련 필드나 추가 이벤트 속성과 같은 보다 상세한 알람 정보를 포함할 수 있습니다. 이를 통해 타사 플랫폼이 후속 처리를 위해 더 풍부한 알람 정보를 확보할 수 있습니다.
이 기능을 활성화한 후에는 알람 메시지 형식이 이전 형식과 다를 수 있으므로 유의하시기 바랍니다. 따라서 타사 서버에 이미 알람 메시지 파싱 로직이 구현되어 있는 경우, 해당 파싱 규칙을 적절히 조정해야 할 수도 있습니다.
이 스위치를 활성화하기 전후의 알람 메시지 형식 차이에 대해서는 질문과 답변 섹션의 두 번째 항목을 참조하시기 바랍니다.

6단계.“테스트” 버튼을 클릭하여 장치와 서버 간의 연결 상태를 확인할 수 있습니다.

7단계. “서비스를 사용할 수 있습니다”라는 팝업 메시지가 표시되면 연결 상태가 정상이며 기능이 제대로 작동하고 있음을 의미합니다. ‘확인’을 클릭하여 진행하세요.

8단계. 설정 > 이벤트 > 스마트 이벤트 > 사람 감지로 이동하여 원하는 채널을 선택하고, 사람 감지 기능을 활성화합니다.

참고: 이 문서에서는 에서는 설명을 위해 사람 감지 기능을 예시로 사용했습니다. 다른 이벤트 감지 기능도 동일한 방식으로 적용됩니다.
9단계. 비활성화 설정을 확인합니다.
'설정 > 이벤트 > 비활성화'로 이동하여 다음 설정을 확인하십시오.
- 모드가 ‘활성화’로 설정되어 있다면 추가 변경 사항이 필요하지 않습니다.
- 모드가 '비활성화'로 설정된 경우, '알람 연계 작업 비활성화'에서 '알람 서버로 전송'이 선택되어 있지 않아야 합니다. NVR이 비활성화된 상태인 동안 이 섹션에서 선택한 모든 작업은 비활성화됩니다.
'적용'을 클릭하여 설정을 저장하세요.
참고: ‘비활성화’ 페이지의 ‘알람 서버로 전송’ 옵션은 지원되는 버전의 펌웨어가 설치된 특정 모델에서만 사용할 수 있습니다. 기본적으로 ‘모드’는 ‘활성화’로 설정되어 있습니다. ‘알람 서버로 전송’ 옵션을 사용할 수 없으면 NVR이 모든 이벤트를 알람 서버로 전송하는 것이 기본값입니다.

확인
1단계. 스위치에서 포트 미러링을 설정하여 VIGI NVR에 연결된 포트를 노트북에 연결된 포트로 미러링합니다. Wireshark를 사용하여 노트북의 네트워크 인터페이스에서 패킷 캡처를 시작한 다음, 사람 감지 이벤트를 활성화합니다.
2단계. VIGI NVR이 보고한 정보를 확인합니다.
시나리오 1. 이미지 첨부 시
1단계. Wireshark의 표시 필터 표시줄에 “http”를 입력하여 캡처된 HTTP 패킷을 표시합니다. 그런 다음 HTTP POST 요청과 HTTP 응답을 확인합니다.

2단계. HTTP POST 요청 헤더를 확인합니다.

참고: 첫 번째 줄에는 POST 메서드, 요청 대상 URI 및 HTTP 버전 1.1이 포함되어 있습니다. 이 URI는 이전에 알람 서버 설정에서 구성한 URL 문자열과 일치합니다.
두 번째 줄부터 빈 줄까지 각 줄은 요청 메타데이터를 설명하는 키-값 쌍을 나타냅니다. 여기에는 Host, Content-Type, Content-Length 및 Cache-Control이 포함됩니다.
Content-Type이 application/json으로 설정되어 있으면 이벤트 메시지만 푸시됨을 나타내며(첨부된 이미지 없이) 전송되며, 요청 본문은 JSON 형식의 문자열임을 나타냅니다.
각 줄은 \r\n으로 끝납니다. \r\n으로만 구성된 빈 줄은 요청 헤더의 끝과 요청 본문의 시작을 나타냅니다.
3단계. HTTP POST 요청 본문 확인

참고: JSON 페이로드에서 device_id는 이벤트를 보고하는 NVR의 고유 ID를 나타내며, device_name은 보고하는 NVR의 이름을 지정합니다. messages 필드는 보고된 이벤트를 포함하는 배열입니다. messages 내에서 Event Type은 트리거된 이벤트 유형을, Event Sub Type은 트리거된 이벤트 하위 유형을, EVENT TIME은 이벤트 발생 시점을, Camera는 이벤트를 트리거한 채널을, Camera Name은 트리거된 채널의 이름을 나타내며, Extra Text는 추가 정보를 위한 예약된 필드입니다.
4단계. HTTP 응답을 확인합니다. 200 OK 상태 코드가 반환되면 webhook.site 서버가 요청을 성공적으로 수신하고 처리했음을 의미합니다.

5단계. HTTP POST 요청 본문에 보고된 데이터와 webhook.site 서버에서 수신 및 파싱한 데이터를 비교하여 일관성이 있는지 확인합니다.

시나리오 2. 이미지 첨부 시
1단계. 패킷 캡처를 시작하기 전에 webhook.site 서버 페이지의 오른쪽 상단에 있는 ‘Edit’ 버튼을 클릭하고, 이미지가 첨부된 메시지의 Content-Type을 multipart/form-data; boundary=ReportEventBoundary로 수정합니다.

참고: multipart/form-data를 사용하면 JSON 이벤트 정보나 JPEG 스냅샷과 같은 여러 데이터 부분을 동일한 HTTP 요청에 포함할 수 있습니다 body.boundary = ReportEventBoundary는 데이터 페이로드의 서로 다른 부분을 구분하는 데 사용되는 경계를 지정합니다.
2단계. “http” 명령을 사용하여 캡처된 패킷을 필터링합니다. 그런 다음 HTTP POST 요청 헤더와 본문을 확인합니다.

아니요참고: 요청 본문은 빈 줄(\r\n) 뒤에 시작됩니다. Content-Type이 multipart/form-data이므로 본문은 --ReportEventBoundary 경계로 구분된 여러 부분으로 나뉩니다. 요청 본문은 --ReportEventBoundary--로 끝납니다.
첫 번째 파트는 name="event"를 가지며 JSON 이벤트 데이터를 포함합니다. 두 번째 파트는 name="snapshot"을 사용하며 JPEG 스냅샷 데이터를 포함합니다. 각 파트에 대해 Content-Type은 데이터 형식을 지정하고, Content-Length는 해당 콘텐츠의 크기를 바이트 단위로 지정합니다.
Wireshark에 표시된 JPEG 데이터는 스냅샷 이미지의 바이너리 콘텐츠를 나타냅니다.
3단계. HTTP 응답을 확인합니다. 200 OK 상태 코드가 반환되면 webhook.site 서버가 요청을 성공적으로 수신하고 수락했음을 의미합니다.

4단계. HTTP POST 요청 본문에 보고된 데이터와 webhook.site 서버가 수신 및 파싱한 데이터를 비교하여 일관성이 있는지 확인합니다.

참고: webhook.site 서버 자체는 업로드된 이미지 콘텐츠를 파싱하거나 디코딩하지 않습니다. HTTP 요청 데이터를 수신하고 표시할 뿐입니다. 따라서 이벤트 정보와 해당 이미지의 타임스탬프만 확인할 수 있습니다.
이벤트 유형 및 이벤트 하위 유형 값
'이벤트 유형' 및 '이벤트 하위 유형 ' 필드는 숫자 값을 사용하여 보고된 각 이벤트의 범주와 구체적인 유형을 식별합니다. 지원되는 값은 다음 표를 참조하십시오.
|
이벤트 유형 값 |
이벤트 하위 유형 값 |
설명 |
|
1 |
2 |
동작 감지 |
|
2, 101 |
동작 감지/사람 |
|
|
2, 102 |
동작 감지/차량 |
|
|
3 |
변조 감지 |
|
|
4 |
라인 크로싱 감지 |
|
|
4, 101 |
라인 크로싱 감지/사람 |
|
|
4, 102 |
라인 크로싱 감지/차량 |
|
|
5 |
침입 감지 |
|
|
5, 101 |
침입 감지/사람 |
|
|
5, 102 |
침입 감지/차량 |
|
|
6 |
영역 진입 감지 |
|
|
6, 101 |
영역 진입 감지/사람 |
|
|
6, 102 |
영역 진입 감지/차량 |
|
|
7 |
영역 이탈 감지 |
|
|
7, 101 |
영역 이탈 감지/사람 |
|
|
7, 102 |
영역 이탈 감지/차량 |
|
|
8 |
배회 감지 |
|
|
8, 101 |
배회 감지/사람 |
|
|
8, 102 |
배회 감지/차량 |
|
|
14 |
이상음 감지 |
|
|
16 |
장면 변경 감지 |
|
|
19 |
영상 손실 |
|
|
21 |
사람 감지 |
|
|
22 |
차량 감지 |
|
|
23 |
물체 방치/제거 감지 |
|
|
38 |
IP 카메라 알람 감지 |
|
|
39, 103 |
대기열 감지 - 인원 수 임계값 도달 |
|
|
39, 104 |
대기열 감지 - 인원 수 및 대기 시간 임계값 도달 |
|
|
2 |
3 |
하드 드라이브 미장착 |
|
4 |
하드 드라이브 용량 부족 |
|
|
7 |
하드 드라이브 예외 발생 |
|
|
8 |
로그인 오류 |
|
|
9 |
POE 단일 포트 바로 가기 |
|
|
10 |
POE 단일 포트 과부하 |
|
|
11 |
POE 칩 온도 오류 |
|
|
12 |
POE 전체 과부하 |
|
|
13 |
NVR 알람 입력 감지 |
|
|
14 |
팬 작동 이상 |
|
|
15 |
NVR IP 충돌 |
|
|
17 |
IP 카메라 IP 충돌 |
|
|
18 |
손상으로 인해 하드 드라이브 사용 불가 |
|
|
7 |
1 |
RAID 어레이 오류 |
|
2 |
RAID 어레이 성능 저하 |
|
|
3 |
핫 스페어를 사용하여 RAID 어레이 복구됨 |
|
|
4 |
핫 스페어 고장 |
|
|
5 |
사용 가능한 RAID 어레이 없음 |
|
|
6 |
RAID 어레이 용량 초과 |
|
|
7 |
디스크 없음 |
|
|
8 |
하드 드라이브 암호 오류 |
|
|
9 |
RAID 비밀번호 오류 |
|
|
10 |
외장 하드 드라이브 비밀번호 오류 |
참고:
- 알람 서버 메시지에 포함되는 필드는 보고된 이벤트에 따라 다릅니다. 모든 메시지에는 이벤트 유형, 이벤트 하위 유형 및 이벤트 시간이 포함됩니다. 이벤트 유형 1의 알림에만 트리거된 채널 번호와 채널 이름이 포함됩니다. 향상된 알람 메시지 서비스가 활성화되면 기존의 필드 이름인 type, sub_type, localtime, channel 대신 이벤트 유형, 이벤트 하위 유형, 이벤트 시간, 카메라 및 카메라 이름이 필드 이름으로 표시됩니다.
- 특정 장치 예외 이벤트에는 이벤트를 유발한 구성 요소를 식별하는 추가 값이 포함됩니다. 이 값의 의미는 아래에 표시된 대로 보고된 이벤트 유형 및 이벤트 하위 유형에 따라 다릅니다.
|
이벤트 유형 |
이벤트 하위 유형 |
추가 정보 |
설명 |
|
2 |
3, 4 또는 7 |
디스크 ID |
이벤트를 유발한 하드 드라이브 |
|
7 |
8 |
디스크 ID |
이벤트를 유발한 하드 드라이브 |
|
2 |
9 또는 10 |
PoE 포트 번호 |
이벤트를 유발한 PoE 포트 |
|
2 |
13 |
알람 입력 ID |
이벤트를 유발한 알람 입력 |
|
7 |
1, 2, 3, 4, 6 또는 9 |
RAID 어레이 ID |
이벤트를 유발한 RAID 어레이 |
|
7 |
10 |
외장 하드 드라이브 ID |
이벤트를 유발한 외장 하드 드라이브 |
- RAID 어레이 오류, RAID 어레이 성능 저하, 핫 스페어를 사용한 RAID 어레이 복구, 핫 스페어 오류, 사용 가능한 RAID 어레이 없음, RAID 어레이 용량 초과, RAID 암호 오류 등의 RAID 관련 이벤트는 RAID를 지원하는 NVR 모델에서만 사용할 수 있습니다.
- PoE 단일 포트 단락, PoE 단일 포트 과부하, PoE 칩 온도 오류 및 PoE 전체 과부하 등의 PoE 관련 이벤트는 PoE를 지원하는 NVR 모델에서만 사용할 수 있습니다.
결론
이제 알람 서버 기능이 설정됐습니다. 사전에 설정한 이벤트가 발생하면 VIGI NVR이 이벤트 정보와 스냅샷(기능 활성화 시)을 알람 서버에 전달합니다.
질문과 답변
Q1: 알람 서버가 성공적으로 설정되었으나 이벤트가 발생했을 때 서버로 알람 데이터가 수신되지 않는 경우, 어떻게 해야 합니까?
A1: 다음 사항을 확인해 주십시오.
1단계. 초기 설정 점검을 수행하세요 . NVR 로그를 검토하여 이벤트가 감지되고 트리거되었는지 확인하세요. VIGI NVR은 개별 채널에 대해 별도의 알람 서버 보고 설정이 필요하지 않습니다. NVR이 비활성화됨으로써 이벤트 보고가 방해받을 수 있는 설정에 대해서는 9단계. 비활성화 설정 확인을 참고하세요. 또한 모든 알람 서버 구성 매개변수를 확인하세요. 서버가 설정된 포트에서 수신 대기 중인지, 설정된 URL이 서버 엔드포인트와 정확히 일치하는지 확인하세요.
2단계. 포트 미러링을 설정하고 장치 측에서 패킷을 캡처한 다음, 다음 항목을 순서대로 확인하세요.
- TCP 연결: 장치와 서버 간의 TCP 3웨이 핸드셰이크가 성공적으로 설정되었는지 확인하세요.
- HTTP POST 요청: POST 요청이 성공적으로 시작되었는지, 요청 헤더 형식이 올바른지 확인하세요. 특히 Content-Type 필드에 주의하세요. 이벤트 정보만 보고될 때는 Content-Type이 application/json이어야 합니다. 스냅샷 이미지가 첨부되는 경우에는 Content-Type이 multipart/form-data여야 하며, 혼합 데이터(JSON 문자열 및 이미지 데이터)는 boundary=ReportEventBoundary를 사용하여 분리되어야 합니다.
- HTTP 응답: 패킷에 반환된 HTTP 응답 상태 코드를 확인하여 서버가 HTTP 요청에 올바르게 응답하는지 확인하세요.
Q2: 향상된 알람 메시지 서비스를 활성화하기 전과 후의 알람 메시지 형식에는 어떤 차이가 있습니까?
A2: 향상된 알람 메시지 서비스를 활성화하면 알람 서버 메시지에 ‘추가 텍스트(Extra Text)’ 필드가 포함됩니다. 타사 서버가 이전 형식을 기반으로 한 파싱 로직을 사용하는 경우, 이를 검토하고 필요한 경우 업데이트하십시오. 자세한 내용은 아래 비교표를 참조하십시오.
'향상된 알람 메시지 서비스' 활성화 전:
|
속성 |
설명 |
값 |
|
type |
트리거된 이벤트 유형 |
event_type: {이벤트 유형} |
|
sub_type |
트리거된 이벤트 하위 유형 |
event_sub_type: {이벤트 하위 유형} |
|
localtime |
이벤트 타임스탬프 |
datetime: {YYYY-MM-DD HH:MM:SS} |
|
channel |
트리거된 채널 |
camera_number: {카메라 번호} |
|
channel_name |
트리거된 채널 이름 |
camera_name: {카메라 이름} |
'향상된 알람 메시지 서비스' 활성화 후:
|
속성 |
설명 |
값 |
|
이벤트 유형 |
트리거된 이벤트 유형 |
event_type: {이벤트 유형} |
|
이벤트 하위 유형 |
트리거된 이벤트 하위 유형 |
event_sub_type: {이벤트 하위 유형} |
|
이벤트 시간 |
이벤트 타임스탬프 |
datetime: {YYYY-MM-DD HH:MM:SS} |
|
카메라 |
트리거된 채널 |
camera_number: {카메라 번호} |
|
카메라 이름 |
트리거된 채널 이름 |
camera_name: {카메라 이름} |
|
추가 텍스트 |
추가 정보 |
기본값은 None입니다. 확장 기능을 위해 예약되어 있습니다. |
각 기능 및 설정에 대한 자세한 내용은 지원 홈페이지를 방문하여 해당 제품의 설명서를 다운로드하거나 확인해 주십시오.
이 문서에는 기계 번역이 적용되었으며, 정확한 내용을 확인하려면 원본 영문 문서를 참고하시기 바랍니다.
더 알아보기
해당 FAQ가 유용했나요?
여러분의 의견은 사이트 개선을 위해 소중하게 사용됩니다.
TP-Link Community
Still need help? Search for answers, ask questions, and get help from TP-Link experts and other users around the world.