Repository navigation
study-helper v26.05.01
study-helper v26.05.01
숭실대학교 LMS 강의 영상 재생 · 다운로드 · AI 요약 도구.
패치노트
수정
- learningx API 401 세션 만료 시 자동 재로그인 후 재시도 (
src/player/background_player.py)- 원인: 자동 모드에서 장시간 재생 후 learningx API 토큰이 만료되면 다음 강의의
attendance_items호출이 401을 반환해 재생 실패 — 기존 코드는 즉시 오류 반환만 처리 _play_via_learningx_api()에lecture_url,is_retry파라미터 추가- 401 수신 시
ensure_logged_in()으로 재인증 후lecture_url로 재이동해 LTI 세션을 새로 획득하고 1회 자동 재시도 is_retry가드로 무한 재귀 방지 /lecture_url미전달 시 기존 오류 반환으로 하위 호환 유지- 참고: learningx API 세션은 Canvas 세션과 독립적으로 만료될 수 있어 기존
_needs_login()체크만으로는 감지 불가
- 원인: 자동 모드에서 장시간 재생 후 learningx API 토큰이 만료되면 다음 강의의
- vendors.js 502 발생 시 페이지 새로고침 후 재시도 (
src/player/background_player.py)- 원인: learningx 플레이어 초기화에 필수인
vendors.js가 502를 반환하면 commons frame이 생성되지 않아 Plan A 사용 불가 → Plan B(learningx API)로 강제 진입 — 위의 401 문제와 결합 시 재생 완전 실패 page.on("response")스니퍼로vendors.js 502를 감지, commons frame 탐색 실패 시 페이지를 1회 새로고침해 정상 로드 유도- 재시도 후에도 frame이 없으면 기존 Plan B 경로로 진행하여 하위 호환 유지
- 원인: learningx 플레이어 초기화에 필수인
사전 요구사항
설치 및 실행
-
아래 첨부 파일(
docker-compose.yml,.env.example) 다운로드 -
.env.example→.env로 이름 변경 후 필요한 값 설정 (학번/비밀번호는 첫 실행 시 자동 저장) -
이미지 pull 및 실행
docker compose pull
docker compose run --rm study-helper
docker compose up사용 금지 — 로그 멀티플렉싱으로 TUI가 깨집니다.run --rm만 사용하세요.
Docker Hub
docker pull igor0670/study-helper:v26.05.01