대량 객실 접근 매핑 설정
빠른 설정
대부분의 호텔은 작은 객실 범위를 5~10분 안에 테스트할 수 있습니다. 먼저 드라이런을 실행하세요.
키카드 인코더 또는 스마트 락에 대해 많은 객실을 한꺼번에 매핑해야 할 때 이 스크립트를 사용하세요.
빠른 참고
| 스크립트 | 기능 | 적합한 경우 |
|---|---|---|
scripts/bulk-keycard-room-mapping.mjs | 키카드 인코더 객실 매핑을 생성하거나 업데이트 | 인코더 객실 이름이 뚜렷한 패턴을 따를 때 |
scripts/bulk-smart-lock-room-mapping.mjs | 스마트 락 객실 매핑을 생성하거나 업데이트 | 락 이름 또는 할당을 대량으로 처리할 때 |
시작하기 전에
먼저 다음 항목을 확인하세요.
- merchant 자격 증명으로 로그인할 수 있음
- 대상 merchant ID를 알고 있음
- env 파일에
TEST_MERCHANT_ID,TEST_USERNAME,TEST_PASSWORD가 포함되어 있음 - 저장소 루트에서 명령을 실행하고 있음
환경 로드
스크립트를 실행하기 전에 env 파일을 설정하세요.
set -a
source packages/e2e-tests/.env.production-cloudbeds
set +a
env 파일 이름이 다르면 경로를 바꾸세요.
1단계: 작은 범위로 테스트
- 작은 객실 범위로 드라이런을 실행합니다.
- 출력 내용을 자세히 검토합니다.
- 객실 이름이 예상한 객실과 일치하는지 확인합니다.
키카드 인코더 예시
node scripts/bulk-keycard-room-mapping.mjs \
--merchant-id "$TEST_MERCHANT_ID" \
--username "$TEST_USERNAME" \
--password "$TEST_PASSWORD" \
--room-name-pattern 'TES({n})' \
--start 10 \
--end 20 \
--dry-run
스마트 락 예시
node scripts/bulk-smart-lock-room-mapping.mjs \
--merchant-id "$TEST_MERCHANT_ID" \
--username "$TEST_USERNAME" \
--password "$TEST_PASSWORD" \
--vendor igloohome \
--room-name-pattern 'TES({n})' \
--lock-id 'IGB40903c5f5' \
--start 1 \
--end 5 \
--allow-assigned-elsewhere \
--dry-run
2단계: 실제 매핑 실행
--dry-run을 제거합니다.- 같은 객실 범위를 유지합니다.
- 명령을 다시 실행합니다.
기존 매핑을 수정해야 하면 --update-existing을 사용합니다.
키카드 인코더
인코더 객실 이름이 예측 가능한 패턴을 따를 때는 scripts/bulk-keycard-room-mapping.mjs를 사용합니다.
하는 일
/api/rooms에서 PMS 객실을 해석합니다/api/keycard-encoder-room-mapping을 생성하거나 업데이트합니다- 객실 번호로
encoderRoomName을 만듭니다
예시
node scripts/bulk-keycard-room-mapping.mjs \
--merchant-id "$TEST_MERCHANT_ID" \
--username "$TEST_USERNAME" \
--password "$TEST_PASSWORD" \
--room-name-pattern 'TES({n})' \
--start 10 \
--end 300
스마트 락
많은 객실을 스마트 락에 매핑해야 할 때는 scripts/bulk-smart-lock-room-mapping.mjs를 사용합니다.
하는 일
/api/rooms에서 PMS 객실을 해석합니다/api/integrations/devices?vendor=...에서 장치를 불러옵니다/api/mappings/room-lock에서 기존 매핑을 확인합니다- 선택한 락이 브리지 메타데이터를 제공하면 이를 전송합니다
일반적인 모드
- 하나의 고정 락을 여러 객실에 사용합니다.
- 장치 이름으로 락을 맞춥니다.
- 락 ID 패턴으로 락을 맞춥니다.
예시
node scripts/bulk-smart-lock-room-mapping.mjs \
--merchant-id "$TEST_MERCHANT_ID" \
--username "$TEST_USERNAME" \
--password "$TEST_PASSWORD" \
--vendor igloohome \
--room-name-pattern 'TES({n})' \
--device-name-pattern 'TES({n})' \
--start 1 \
--end 20 \
--dry-run
문제 해결
드라이런에 잘못된 객실이 표시됨
해결 방법:
--room-name-pattern을 확인합니다.--start와--end값을 확인합니다.- 드라이런을 다시 실행합니다.
객실에 이미 다른 매핑이 있음
해결 방법:
- 새 매핑이 올바른지 확인합니다.
--update-existing을 붙여 다시 실행합니다.- UI에서 객실을 확인합니다.
락이 이미 다른 곳에 할당되어 있음
해결 방법:
- 재사용이 의도된 것인지 확인합니다.
- 공유 락에만
--allow-assigned-elsewhere를 추가합니다. - 스크립트를 다시 실행합니다.
객실이 보이지 않음
해결 방법:
- AVA에서 PMS 객실이 로드되는지 확인합니다.
- 페이지를 새로고침합니다.
- merchant ID와 자격 증명을 확인합니다.
계속 문제가 있나요?
다음 경우 success@vouch-technologies.com으로 문의하세요.
- 드라이런 후에도 스크립트가 계속 실패함
- 매핑은 저장되지만 AVA에 표시되지 않음
- 어떤 매핑 모드가 숙소에 맞는지 확실하지 않음
함께 보내면 좋은 정보:
- 명령 출력 스크린샷
- merchant ID
- 벤더 이름과 락 모델
- 문제가 시작된 시간