로그인
적재 현황
최근 작업 실행
| 작업 | 상태 | 건수 | 시각 |
|---|
센서 동작
전송 현황 (최근 발행)
| 테이블 | 토픽 | 건수 | 상태 | 발행 시각 |
|---|
데이터 제공 실적 (참여 대학 구독 수신)
| 참여 대학 | 누적 수신 건수 | 수신 확인 횟수 | 마지막 수신 |
|---|
참여 대학 데이터 구독·수신 이용안내
참여 대학은 가명처리된 전송본을 표준 MQTT 구독(게시·구독) 방식으로 수신합니다. 원본 데이터베이스에는 직접 접근하지 않으며, 전송 구간은 TLS로 암호화됩니다. (과업 요구사항 SFR-004·006)
① 발주기관 구독 승인→
② 접속 정보·인증서 수령→
③ MQTT 구독 연결→
④ 전송본 수신→
⑤ 수신 확인 발행
1. 수신 절차
1
구독 신청·승인 — 발주기관(동국대 COSS사업단)에 참여 대학·수신 범위를 신청합니다.
승인되면 전용
client_id와 client_key(1회 발급), 브로커 접속 정보와 CA 인증서를 받습니다.2
구독 연결 — 받은 계정으로 MQTT 브로커에 TLS로 접속해, 승인된 토픽을 구독합니다.
3
데이터 수신 — 발주기관이 전송본을 발행하면, 구독한 토픽으로 가명처리된 레코드(JSON)가 전달됩니다.
4
수신 확인 — 수신 건수를 확인 메시지로 발행하면 발주기관 대시보드의 데이터 제공 실적에 집계됩니다.
2. 토픽 목록
토픽 접두사는 anbu 입니다. 승인 범위에 따라 일부만 구독할 수 있습니다.
| 토픽 | 내용 |
|---|---|
anbu/subjects | 대상자(가명) — 연령대·읍면동·기능 범주 등 |
anbu/devices | 장비(가명) |
anbu/lighting_intervals | 점등 구간(시작·종료·지속시간) |
anbu/device_status_history | 장비 상태 이력(정상/비활성/장애) |
anbu/care_records | 돌봄 기록(자유기술은 기본 제외) |
anbu/alerts | 이상 알림 |
anbu/power_usage | 전력(AMI) 사용량 — 해당 과업 수행 시 |
3. 구독 수신 방법
방법 A — 제공 예제 클라이언트 (권장): 배포받은 subscriber_example.py로 즉시 수신·저장합니다.
python -m anbu_api.transport.subscriber_example \ --host <브로커주소> --port 8883 --ca ca.crt \ --client-id <발급받은 client_id> \ --username <발급받은 계정> --password '<비밀번호>' \ --topics 'anbu/subjects' 'anbu/alerts'
방법 B — 표준 MQTT 클라이언트: Eclipse Paho 등 표준 라이브러리로 브로커에 TLS 접속 후 토픽을 구독합니다.
메시지 1건 = JSON 1개(UTF-8), 시각은 한국 표준시 YYYY-MM-DD HH:MM:SS.
4. 수신 확인(제공 실적 집계)
수신한 건수를 아래 둘 중 한 방식으로 알리면 발주기관 대시보드에 반영됩니다.
MQTT — 토픽 anbu/receipts/<client_id> 로 발행:
{"topic": "anbu/subjects", "record_count": 100}
REST — 인증 헤더를 포함해 호출:
POST /api/receipts
X-Client-Id: <client_id>
X-Client-Key: <client_key>
Content-Type: application/json
{"topic": "anbu/subjects", "record_count": 100}
5. 보안 약정 (필수 준수)
전송본을 수신한 이후의 관리 책임은 참여 대학에 있습니다. 발주기관과 맺은 보안 약정에 따라 다음을 준수해야 합니다.
- 재식별 시도 금지
- 목적 외 이용 및 제3자 제공 금지
- 이용 기간 종료 시 파기 및 파기 결과 통보
6. 문의
동국대학교 COSS사업단 · 구독 신청·접속 정보·CA 인증서 발급 문의