lib32100
1.0.0
많은 P2P 카메라에서 사용되는 포트 32100 UDP 클라우드 프로토콜을 구현하는 라이브러리입니다. 위키에서 프로토콜에 대한 설명을 찾을 수 있습니다.
npm install --save lib32100
라이브러리 필요
const lib32100 = require ( 'lib32100' )
클라이언트 인스턴스화
const client = lib32100 . client ( )
각 클라이언트는 하나의 장치 (카메라)와 여러 클라우드 서버를 처리할 수 있습니다.
서버 추가
client . addServer ( { host : "myserver.example.com" , port : 32100 } )
장치 UID 설정
client . setUid ( 'PROD123456ABCDE' )
청취자 추가
client . on ( 'stun' , ( e ) => console . log ( JSON . stringify ( e ) ) )
client . on ( 'lookup' , ( e ) => console . log ( JSON . stringify ( e ) ) )
클라우드 서버에 명령 보내기
client . sendSTUNRequest ( )
client . lookupUid ( )
카메라 주소 추가
client . addCamAddress ( { host : "192.168.0.100" , port : 10088 } )
카메라 자격 증명 설정
client . setCamCredentials ( { user : 'admin' , pass : 'password' } )
직접 카메라 세션 열기
client . openDirectCamSession ( { host : "192.168.0.100" , port : 10088 } )
자격 증명 확인
client . checkCredentials ( )
스냅샷 받기
client . getSnapshot ( )
사용자 정의 GET 요청 보내기
client . sendGet ( '/custom_url.cgi?myparam=hello' )
여러 GET 요청 보내기
client . sendMultipleGet ( [ '/custom_url1.cgi' , '/custom_url2.cgi' , '/custom_url3.cgi' ] )
라이브 비디오 스트림 받기
client . getVideoStream ( )
라이브 오디오 스트림 받기
client . getAudioStream ( )
비디오 스트림 중지
client . stopVideoStream ( )
오디오 스트림 중지
client . stopAudioStream ( )
다양한 정보를 얻으세요
client . getParams ( )
client . getCameraParams ( )
client . getFactoryParam ( )
client . getStatus ( )
client . cameraControl ( )
client . getMisc ( )
client . login ( )
client . getRtsp ( )
client . getOnvif ( )
client . getRecord ( )
client . wifiScan ( )
client . getWifiScanResult ( )
단계별 방향으로 이동
client . stepDown ( )
client . stepLeft ( )
client . stepRight ( )
client . stepUp ( )
방향으로 이동
client . moveDown ( )
client . moveLeft ( )
client . moveRight ( )
client . moveUp ( )
client . stopMove ( )
세션 닫기
client . closeCamSession ( )
다음 이벤트를 들을 수 있습니다.
stun (server response)
lookup (server response)
lookupACK (server response)
unknownMsg (any message not yet parsable by the library)
pingpong (camera ping or pong)
close (camera closed session)
confirmed (camera comfirmed ID i.e. session opened)
ack (camera acked a message)
http (an http response)
audio (live audio data)
video (live video data)
complete (a complete http response)
lostConnection (the connection was lost)
이 구현은 공식 사양을 기반으로 하지 않고 순전히 프로토콜의 리버스 엔지니어링을 기반으로 합니다. 모든 장치에서 작동한다고 보장할 수는 없습니다.
MIT. 저작권 (c) Fabrizio Bertone