아래 두 문서로 나뉩니다. 먼저 시나리오로 전체 흐름을 잡고, API 문서에서 채널·페이로드를 확인하세요.
주문은 오토메타 커머스 앱 → 오토메타 커머스 백엔드 → 비스캣 관제 경로로 진입하고, 관제가 미션을 생성해 대기 큐에 적재합니다. 로봇 서비스는 mode → goal → mission 3계층으로 정의하며, 한 mission(고객 오더 단위)은 여러 goal에 걸칠 수 있습니다(픽업 goal + 하차 goal). 관제가 수행 가능한 후보 로봇에게 MQTT로 미션을 제시(입찰 요청)하면 로봇들이 goal별 예상 도착시간을 입찰하고, 관제가 최소 도착시간 기준으로 배차를 결정해 통보합니다. 단지 인프라(엘리베이터·로비폰) 제어는 관제가 처리하므로, 로봇은 단지 인프라를 직접 호출하지 않습니다.
offer → bid → result). 후보 로봇에게 goal 배열을 제시 → 각 로봇이 goal별 예상 도착시간 입찰 → 관제가 최소 도착시간(추후 적재공간 포함)으로 배차 결정. mission.atomic으로 한 미션 goal들의 순서 보존 여부를 지정(재정렬 시에도 묶음 유지, 다른 미션 goal이 사이에 끼지 못함).quote/offer로 후보 로봇에 사전 견적을 질의하면 로봇이 quote/bid로 수행 가능 여부·ETA를 회신합니다. 입찰을 복제하되 미션을 만들지 않고 낙찰이 없는 2단계(질의 → 견적)이며, 질의 본문은 입찰(goals/set)과 동일하고 응답만 available을 더합니다. 배차 입찰과는 토픽을 분리(quote/*)해 운영합니다.X-Robot-Signature) 부착.s2r/r2s)의 MQTT 단일 채널로 주고받습니다(상태·알람·미션·입찰·PIN·박스).| 구분 | 책임 | 채널 |
|---|---|---|
| 인증 | 비밀키·인증서 발급 수신(REST), 인증서로 MQTT 연결 | REST |
| 맵 등록 | UI 버튼으로 지도·노드를 siteId·제시 mapId 기준 업로드(등록 개시 → 업로드 URL에 PUT → commit) | REST |
| 미션 입찰 | 입찰 요청(offer) 수신 → goal별 예상 도착시간 자체 계산해 입찰(bid) 회신 → 배차 결과(result) 수신 | MQTT |
| 배송 가능여부 견적 | 견적 질의(quote/offer, goals/set과 동일 본문) 수신 → goal별 수행 가능 여부·예상 도착시간(available·estArrival) 회신(quote/bid). 입찰과 달리 미션 미생성·낙찰 없음 | MQTT |
| goal 수행 | 낙찰 goal을 arrivalOrder 순으로 수행, 진행 상태(ready/going/arrived·progress·estArrival) 발행 | MQTT |
| 상태·알람 | 상태/배터리/위치 발행(retain) — 도어 상태는 미션 컨텍스트(goal.mission[].door[])로 발행. 이상 시 알람(code·level·msg) 발행·리셋 수신 | MQTT |
| PIN 검증 | goal.mission[].PIN으로 로컬 검증 후 지정 도어 개방, 사용·검증 결과를 관제에 감사 이벤트로 보고 | MQTT |
| 4칸 적재함 | 관제가 goal.mission[].door로 지정한 칸을 열고/잠금 (칸 선택은 관제가 결정, 점주 임의 선택 불가) | MQTT |
| 비대면 상차 감지 | 점주 상차 후 박스 닫힘(mission.door[].status=closed)을 감지·발행 → 이것이 배달 출발 트리거 | MQTT |
s2r/r2s) 토픽의 브로커 정책(ACL) 매핑 확정.quote/*) 라운드도 동일 타임아웃 모델을 따르며, 무응답은 available=false로 간주합니다.goal.type: waiting/none 의미, arrivalOrder 동률·미지정 처리, trash_pickup의 goal/mission 매핑, 한 미션 goal 다수(예: 5개 이상) 시 배차 정책.goal.mission의 (autoDropOff, PIN) 조합으로 구분(비대면=autoDropOff:true만). autoDropOff는 비스캣 제안 필드로 v3 미반영이므로 채택 여부 협의. WEB 버튼 인증용 문열림 지시 경로·PIN 감사 이벤트 형식 확정.