본문으로 건너뛰기

대량 객실 접근 매핑 설정

빠른 설정

대부분의 호텔은 작은 객실 범위를 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단계: 작은 범위로 테스트

  1. 작은 객실 범위로 드라이런을 실행합니다.
  2. 출력 내용을 자세히 검토합니다.
  3. 객실 이름이 예상한 객실과 일치하는지 확인합니다.

키카드 인코더 예시

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단계: 실제 매핑 실행

  1. --dry-run을 제거합니다.
  2. 같은 객실 범위를 유지합니다.
  3. 명령을 다시 실행합니다.

기존 매핑을 수정해야 하면 --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에서 기존 매핑을 확인합니다
  • 선택한 락이 브리지 메타데이터를 제공하면 이를 전송합니다

일반적인 모드

  1. 하나의 고정 락을 여러 객실에 사용합니다.
  2. 장치 이름으로 락을 맞춥니다.
  3. 락 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

문제 해결

드라이런에 잘못된 객실이 표시됨

해결 방법:

  1. --room-name-pattern을 확인합니다.
  2. --start--end 값을 확인합니다.
  3. 드라이런을 다시 실행합니다.

객실에 이미 다른 매핑이 있음

해결 방법:

  1. 새 매핑이 올바른지 확인합니다.
  2. --update-existing을 붙여 다시 실행합니다.
  3. UI에서 객실을 확인합니다.

락이 이미 다른 곳에 할당되어 있음

해결 방법:

  1. 재사용이 의도된 것인지 확인합니다.
  2. 공유 락에만 --allow-assigned-elsewhere를 추가합니다.
  3. 스크립트를 다시 실행합니다.

객실이 보이지 않음

해결 방법:

  1. AVA에서 PMS 객실이 로드되는지 확인합니다.
  2. 페이지를 새로고침합니다.
  3. merchant ID와 자격 증명을 확인합니다.

계속 문제가 있나요?

다음 경우 success@vouch-technologies.com으로 문의하세요.

  • 드라이런 후에도 스크립트가 계속 실패함
  • 매핑은 저장되지만 AVA에 표시되지 않음
  • 어떤 매핑 모드가 숙소에 맞는지 확실하지 않음

함께 보내면 좋은 정보:

  • 명령 출력 스크린샷
  • merchant ID
  • 벤더 이름과 락 모델
  • 문제가 시작된 시간

관련 가이드