본 문서에서는 제품의 음성 자가 진단 기능을 주로 설명합니다.
음성 자가 진단은 기기의 스피커와 마이크를 테스트하는 기능으로, 에코 자가 진단이라고도 합니다. 작동 원리는 기기가 스피커로 소리를 재생하고 마이크로 소리를 수집하여 스피커와 마이크의 정상 작동 여부를 판단하는 방식입니다. 주로 기기의 음성 장치 정상 동작 여부를 원격으로 점검할 때 사용됩니다. 이하 섹션에서는 산업용 기기에서 음성 자가 진단을 실행하는 방법을 상세히 설명합니다.
i12, i11, i16V, i18S, i20S, i30, i32V, i33V, i16SV, i10SV, PA3, PA2S.
기기는 스피커로 짧은 오디오 클립을 재생하고, 마이크가 소리를 감지하여 수신된 음성 비율을 확인합니다. 결과값이 설정된 임계값을 초과하면 테스트 성공으로 판단되며, 임계값 미만일 경우 테스트 실패로 처리됩니다. 작동 원리는 아래 그림 1과 같습니다:
그림 1 음성 자가 진단 원리도
음성 자가 진단은 기기 원격 점검에 주로 활용됩니다. 시간을 절약하고 점검 효율을 높이기 위해 방송 음성이 재생되지 않거나 방송 소리가 갑자기 중단될 경우, 관리자는 관제실에서 기기에 대한 원격 자가 진단을 실행할 수 있습니다.
그림 2 음성 자가 진단 적용 시나리오
① 인터콤 시리즈 기기(i12 모델 예시), PoE 스위치(또는 DC 전원 공급장치), 윤이(Yunyi) 서버 각 1대씩 준비하고 기기를 스위치에 연결합니다.
② 설정용 PC와 서버를 준비한 뒤 PC를 동일 스위치에 연결하여 기기와 PC 간 네트워크 통신이 원활하도록 설정합니다.
① i12 기기, 서버를 스위치에 연결하고 PC도 동일 스위치에 연결하여 상호 네트워크 연결을 확보합니다. 연결 구성은 아래 그림 3을 참고하십시오.
그림 3 기기 및 PC 연결도
액티브 URI란 원격 콘솔에서 HTTP GET 요청을 전송하면 기기 내장 HTTP 서버가 명령을 분석하고 응답하여 기기 원격 제어를 구현하는 방식입니다.
(1) 자가 진단 형식: http://device_ip/cgi-bin/ConfigManApp.com?key=ECHO_TEST;
① device_ip: 테스트 대상 기기의 IP 주소(예: 172.18.8.15);
② 반환 결과: 스피커와 마이크가 정상 연결 시 success, 미연결 또는 파손 시 Failure로 표시됩니다;
(2) 사용 예: 브라우저에 해당 주소를 입력합니다. 스피커 및 마이크 연결이 정상일 경우 success 결과가 반환됩니다(그림 4 참고).
그림 4 액티브 URI 기반 음성 자가 진단 다이어그램
HTTP API는 타사 애플리케이션 및 관리 시스템 연동을 위한 인터페이스입니다. 기기는 HTTP 서버로 작동하며 http://ip/xmlservice 주소에서 HTTP API 서비스를 제공합니다. 외부 시스템은 HTTP 클라이언트로서 XML 형식 데이터를 포함한 HTTP POST 요청을 전송합니다.
HTTP API 요청 형식:
(1) 클라이언트 → 서버 요청:
(?xml version="1.0" encoding="UTF-8" ?)
(FanvilPhoneExecute beep=”yes” )
(ExecuteItem>URI="cmd:echo_test"(/FanvilPhoneExecute)
cmd:audio_play: 에코 자가 진단 실행 명령어;
(2) 서버 → 클라이언트 응답:
(?xml version="1.0" encoding="UTF-8"?)
(FanvilPhoneExecute)
(ExecuteItem>URI="cmd:echo_test")
(RetCode>0)
(info)
(![CDATA[success]])
(/info)
(/FanvilPhoneExecute)
(3) 반환 결과: 음성 기기 정상 연결 시 success, 비연결/파손 시 Failure;
(4) 사용 예: Postman 또는 ApiPost를 활용해 http://device_ip/xmlservice로 POST 요청을 전송합니다. 요청 내용을 정상 입력 후 “전송”을 클릭하면 테스트 결과가 반환됩니다(그림 5 참고).
그림 5 HTTP API 음성 자가 진단 다이어그램
시간 설정 메뉴에 음성 자가 진단 작업을 추가할 수 있습니다. 지정된 기간 또는 시각에 기기가 자동으로 자가 진단을 실행하고 동작 URL을 통해 결과를 보고합니다.
(1) 기기 웹 인터페이스에 로그인한 후 “인터콤 설정” --- “시간 예약” --- “예약 규칙”에서 진단 작업을 추가합니다(그림 6):
① 실행 유형: “음성 자가 진단” 선택;
② 실행 시간: 자동 진단을 실행할 기간을 지정합니다.
그림 6 시간 예약 음성 자가 진단 다이어그램
(2) 예약 추가가 완료되면 시간 예약 목록에 새 항목이 표시됩니다. 예약된 시간이 되면 기기가 자동으로 음성 자가 진단을 실행합니다.
SIP 메시지 방식은 공공 네트워크 환경에서 사용됩니다. 서버가 메시지 액티브 URI 명령을 전송하면 기기는 MESSAGE 요청에 200 OK로 응답합니다. 이후 기기가 진단 결과를 알리는 응답 메시지를 플랫폼에 전송하고, 플랫폼 역시 200 OK로 응답합니다.
(1) 서버에 기기 계정을 등록합니다.
(2) 윤이 서버를 예시로, 서버 웹에 로그인 후 “자가 진단 작업” --- “추가”를 클릭해 작업을 생성합니다.
(3) 작업 추가 후 선택하여 실행하면 스피커와 마이크가 정상일 경우 정상 완료되고, 기기 손상 또는 미연결 시 작업이 실패하며 서버 화면에 비정상 상태가 표시됩니다. 서버 웹의 “자가 진단 결과” 메뉴에서 상세 내역을 확인할 수 있습니다.
그림 7 SIP 메시지 음성 자가 진단 다이어그램
(4) 기기의 패킷 캡처 기능으로 진단 결과를 확인할 수도 있습니다. 자가 진단 시작 전 기기 웹 인터페이스에서 “시스템” --- “보조 도구” --- “네트워크 패킷 캡처”에 접속 후 “시작”을 클릭합니다.
그림 8 기기 패킷 캡처 다이어그램
진단이 끝난 후 웹 화면에서 “정지”을 클릭합니다. Wireshark로 캡처 파일을 열고 sip 필터를 적용합니다. 메시지 내 “Success”가 표시되면 진단 성공, “Fail” 또는 “Failure”가 나타나면 진단 실패입니다.
그림 9 패킷 캡처 결과 다이어그램
실제 사용 환경에서 음성 자가 진단이 실패하는 경우가 발생할 수 있으며 원인은 다양합니다. 아래 항목을 확인하여 문제를 해결하십시오:
(1) 연결 상태 확인
음성 자가 진단이 실패할 경우 스피커와 마이크 연결 상태를 확인하십시오. 스피커가 연결되지 않으면 기본적으로 실패 처리되지만, 주변 소음이 심할 경우 성공으로 잘못 판단될 수 있습니다. 마이크가 미연결된 경우 항상 진단이 실패합니다.
(2) 액세서리 확인
연결은 정상이어도 진단이 계속 실패할 경우 스피커 및 마이크 부품의 파손 여부를 확인하십시오. 모든 부품이 정상일 경우 기술 지원팀에 문의하십시오.
(3) 주변 환경의 정숙 여부 확인
본 자가 진단은 기기가 1kHz 오디오 신호를 재생하고 수신하는 원리로 작동합니다. 주변 환경에 동일한 1kHz 신호가 존재할 경우 검출 정확도가 저하됩니다. 예를 들어 스피커가 고장난 상태여도 주변 1kHz 소음으로 인해 테스트가 정상으로 오판단될 수 있습니다.