FACTOR Plugin - Remote monitoring and camera integration for OctoPrint
Project description
FACTOR × OctoPrint — 외부 모니터링 & 카메라 연동
3D 프린터를 어디서든 모니터링하세요
하루 종일 출력 돌려놓고 집에 오니 스파게티/익스트루더 꼬임… 그래서 **OctoPrint와 연동되는 외부 모니터링 플랫폼 'FACTOR'**를 만들었습니다.
📋 목차
✨ 주요 기능
🖥️ 실시간 모니터링
|
📹 카메라 연동
|
🔒 보안 강화
|
⚡ 간편한 설치
|
🚀 빠른 시작
📝 사전 요구사항
- OctoPrint 1.4.0 이상
- Python 3.8 이상
- 인터넷 연결
1단계: 회원가입
- 웹사이트 접속: https://factor.io.kr
- 회원가입 진행:
- 우측 상단 로그인 클릭
- 회원가입 탭 선택
- 이메일, 사용자명, 비밀번호 입력
- Sign Up 버튼 클릭
- 이메일 인증: 메일함에서 인증 링크 클릭
💡 팁: 이메일이 오지 않는다면 스팸 폴더를 확인하세요.
2단계: 플러그인 설치
- OctoPrint 설정 열기:
- 우측 상단 🔧 스패너 아이콘 클릭
- Plugin Manager 선택
- URL로 설치:
- Get More… 버튼 클릭
- …from URL 선택
- 아래 URL 붙여넣기:
https://github.com/kangbyounggwan/octoprint-factor-plugin/archive/main.zip- Install 클릭
- OctoPrint 재시작: 설치 완료 후 프롬프트에 따라 재시작
⚠️ 주의: 재시작하지 않으면 플러그인이 활성화되지 않습니다.
3단계: 플러그인에서 로그인
- 플러그인 실행:
- 좌측 메뉴에서 FACTOR MQTT 클릭
- 1단계에서 생성한 이메일/비밀번호 입력
- 로그인 버튼 클릭
4단계: 설비 등록
-
Device UUID 생성:
- 생성 버튼 클릭
- 자동 생성된 Device UUID 확인 및 복사
-
카메라 설정 (선택사항):
- 스트림 URL 입력 (예:
http://192.168.1.100:8080/stream) - 테스트 버튼으로 연결 확인
- 저장 클릭
- 스트림 URL 입력 (예:
-
등록 완료:
- 등록 버튼 클릭
💡 지원 카메라 형식: MJPEG, WebRTC, RTSP, HLS
5단계: 웹에서 최종 설정
-
웹사이트로 이동:
- 플러그인에서 FACTOR 웹사이트로 이동 버튼 클릭
- 또는 직접 https://factor.io.kr 접속
-
프린터 등록:
- 4단계에서 생성한 Device UUID 입력
- 프린터 이름, 설명 등 설정
- 등록 완료 클릭
-
모니터링 시작:
- 대시보드에서 프린터 상태 실시간 확인
- MQTT 자동 연결 및 데이터 전송 시작
🎉 설치 완료! 이제 웹사이트에서 프린터를 모니터링하세요.
🛠️ 문제 해결
MQTT 연결 실패
증상: "연결 테스트" 실패
해결 방법:
- 네트워크 연결 확인
- 브로커 호스트/포트 재확인
- 방화벽 설정 확인
- OctoPrint 로그 확인:
Settings > Logging > octoprint.plugins.factor_mqtt
카메라 스트림이 보이지 않음
증상: 웹사이트에서 카메라 피드 없음
해결 방법:
- 스트림 URL이 올바른지 확인
- HTTPS 사이트에서 HTTP 스트림은 차단될 수 있음 (Mixed Content)
- 브라우저 콘솔에서 에러 확인 (F12)
- ffmpeg 프로세스 상태 확인
로그 확인하기
# OctoPrint 로그 위치
~/.octoprint/logs/octoprint.log
# 실시간 로그 모니터링
tail -f ~/.octoprint/logs/octoprint.log | grep MQTT
일반적인 에러 코드
| 코드 | 의미 | 해결 방법 |
|---|---|---|
rc=1 |
잘못된 프로토콜 버전 | 브로커 설정 확인 |
rc=2 |
클라이언트 ID 거부 | Instance ID 재생성 |
rc=3 |
서버 이용 불가 | 브로커 상태 확인 |
rc=4 |
잘못된 사용자명/비밀번호 | 인증 정보 재확인 |
rc=5 |
권한 없음 | 계정 권한 확인 |
🤝 기여하기
버그 리포트, 기능 제안, 풀 리퀘스트 환영합니다!
- 이 저장소를 Fork 하세요
- Feature 브랜치 생성 (
git checkout -b feature/AmazingFeature) - 변경사항 커밋 (
git commit -m 'Add some AmazingFeature') - 브랜치에 Push (
git push origin feature/AmazingFeature) - Pull Request 생성
개발 환경 설정
# 저장소 클론
git clone https://github.com/kangbyounggwan/octoprint-factor-plugin.git
cd octoprint-factor-plugin
# 가상환경 생성
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# 의존성 설치
pip install -r requirements.txt
# 개발 모드로 설치
pip install -e .
📄 라이선스
이 프로젝트는 AGPLv3 라이선스 하에 배포됩니다.
🙏 감사의 말
Made with ❤️ by FACTOR Team
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file octoprint_factor_plugin-2.6.8.tar.gz.
File metadata
- Download URL: octoprint_factor_plugin-2.6.8.tar.gz
- Upload date:
- Size: 45.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c3bffdec9ba2ba45f9a56c1803d113a223d17aa3ff9132321ea2bad2e686167c
|
|
| MD5 |
de10f6f0606f597479deac0ac9f3f4e5
|
|
| BLAKE2b-256 |
f030ddaac2d21a3a2cfb28a7bde258c467de2c4598d60706144eca281eb1e89d
|