본문으로 건너뛰기

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()이 관리합니다.