start()
start()는 로그인된 MonitorDog SDK session에서 detector runtime을 실행하는 함수입니다.
login()이 인증/session과 계정/정책 준비를 끝낸 뒤, start()가 모델 로드, 카메라 권한 요청, 웹캠 stream, detection loop를 담당합니다.
역할
start()가 호출되면 SDK는 내부적으로 다음 작업을 순서대로 수행합니다.
로그인 상태 확인
-> 탐지 모델 load
-> 카메라 권한 요청
-> 웹캠 stream 시작
-> detection loop 실행
사용 예시
await detector.login({
email: currentUser.email,
});
await detector.start();
이미 detector가 실행 중인 상태에서 start()를 다시 호출하면 성공 no-op으로 처리됩니다.
실패 처리
start()는 다음 상황에서 실패할 수 있습니다.
login()전에 호출한 경우:NOT_LOGGED_IN- 탐지 모델 load에 실패한 경우:
MODEL_LOAD_FAILED - 브라우저 카메라 권한이 거부된 경우:
CAMERA_PERMISSION_DENIED - 카메라 stream을 읽을 수 없는 경우:
CAMERA_READ_FAILED - 그 외 runtime 시작 실패:
RUNTIME_START_FAILED
주의사항
- 카메라 권한 prompt는
login()이 아니라start()시점에 표시됩니다. - 화면이나 컴포넌트가 사라질 때는 먼저
stop()으로 local detection을 중지하세요. - token/session은
start()가 아니라login()과logout()이 관리합니다.