번호 1~999 · 한국어 \| 영어 \| 한국어+영어 · 차임 · 반복 1~3 · 대기열 5 · 번호 글자 강조설명
픽업대 화면의 번호가 바뀌는 순간 사람이 보고 있지 않으면 모릅니다. 이 요소는 번호를 말로 알립니다. 소리는 미리 구워 둔 음성 조각(차임 · 번호 · 문장)을 이어 붙여 냅니다 — 인터넷이 없어도 되고, 어느 기계에서나 같은 목소리입니다.
부르는 때. 호출 순번 태그를 두면 순번이 바뀔 때마다, 없으면 번호가 바뀔 때 부릅니다. 운영석에서 "다시 부르기" 를 하려면 번호는 그대로 두고 순번만 1 올리면 됩니다(스크립트 한 줄 또는 쓰기 단추).
겹치지 않습니다. 부르는 중에 새 번호가 오면 끝난 뒤에 부릅니다. 이미 기다리는 번호가 또 오면 한 번으로 합치고, 다섯 개가 넘게 밀리면 오래된 것부터 버립니다.
말하는 동안 강조할 글자로 고른 요소가 깜빡입니다.
설정 항목
| 이름 | 값 | 기본 | 설명 |
|---|---|---|---|
| 번호 태그 | 태그 \| local: | (없음) | 부를 번호(1~999). 0 이나 범위 밖 값은 부르지 않습니다. |
| 호출 순번 태그 | 태그 \| local: | (없음) | 값이 커질 때마다 한 번 부릅니다(수가 오르는 태그). 같은 번호를 다시 부르려면(재호출) 이 값만 1 올리면 됩니다. 값이 작아지면(게이트웨이 재시작으로 0 이 됨·되돌림) 부르지 않고 그 값을 새 기준으로 삼습니다. 비우면 번호가 다른 번호로 바뀔 때만 부릅니다 — 그러면 같은 번호 재호출이 안 됩니다. |
| 말 | 한국어 \| 영어 \| 한국어+영어 | 한국어 | 한국어+영어는 한국어 문장 뒤에 영어 문장(Order number one six, your order is ready). |
| 차임 | boolean | 켬 | 문장 앞에 딩동 한 번. |
| 반복 | 1~3 | 1 | 문장을 몇 번 말할지. 차임은 처음 한 번만. |
| 반복 사이(ms) | number | 1200 | 반복 사이의 쉼. |
| 음량 | 0~100 % | 100 | 요소의 음량. 화면 관리의 화면별 음량, 편성 규칙의 음량이 곱해집니다. |
| 음량 태그 | 태그 \| local: | (없음) | 값(0~100)이 좋으면 요소 음량 대신 씁니다 — 운영석에서 음량을 바꿀 때. |
| 강조할 글자 | 요소 | (없음) | 말하는 동안 깜빡일 요소(보통 번호 글자). |
동작
화면을 열 때의 값으로는 부르지 않습니다. 처음 본 값은 기준일 뿐입니다. 품질이 나쁜 값(끊김·아직 못 읽음)도 판정하지 않습니다 — 끊겼다 돌아온 값으로 손님을 잘못 부르지 않게.
무인 키오스크는 브라우저를 --autoplay-policy=no-user-gesture-required 로 띄우세요. 브라우저는 사람이 화면을 한 번 만지기 전까지 소리를 막습니다. 막히면 화면 왼쪽 아래에 소리 켜기 단추가 뜨고, 화면 관리의 화면 목록에 소리 막힘 이 보이며, 재생 기록에 실패(not-allowed)로 남습니다.
긴급 방송이나 다른 화면으로 바뀌면 부르던 것을 멈추고 밀린 호출을 버립니다. 돌아온 뒤 늦게 부르면 손님이 헷갈립니다.
프레임 안에 보이는 화면의 음성 호출은 울리지 않습니다. 매장 보기처럼 여러 화면을 축소해 모아 둔 장에서 같은 번호가 여러 번 울리지 않게 하려는 것입니다.
등록하지 않은 창도 웁니다. 운영자 PC 에서 픽업대 장을 미리 열어 두면 그 창도 같이 부릅니다. 등록된 화면은 화면 관리의 소리 설정을 받기 전까지 소리를 내지 않습니다.
한 장에 음성 호출은 하나만 두세요. 대기열은 요소마다 따로라 둘을 두면 두 문장이 겹칩니다.
연결이 끊긴 사이에 순번이 여러 번 올랐으면, 다시 붙은 뒤 마지막 번호 한 번만 부릅니다(끊긴 사이 나온 주문을 놓치지 않게, 밀린 것을 다 쏟지는 않게).
화면을 연 직후(1.5 초 안)에 닿은 첫 순번 값은 기준으로만 씁니다 — 연 순간 낡은 값 때문에 우는 것을 막습니다. 같은 장을 다시 그릴 때(화면 언어 바꾸기·프레임 넘기기·문서를 다시 받기)와 같은 번호·순번 태그를 쓰는 다른 장으로 넘어갈 때(시간대 장 전환)는 부르던 번호와 줄을 이어받아 끝까지 부릅니다. 그 태그의 음성 호출이 없는 장(긴급 대피 장 등)으로 넘어가면 밀린 호출은 버립니다.
순번은 감기지 않는 수로 올리세요. 큰 수에서 0·1 로 감기면 줄어든 것으로 보아 그 한 번은 부르지 않습니다.
같은 장을 여러 화면이 보면 모두 웁니다. 한 대만 소리를 내게 하려면 화면 관리에서 나머지 화면의 소리 를 끄세요. 시간대마다 음량을 바꾸려면 편성 규칙의 음량 을 씁니다(그 규칙이 이긴 동안 화면 음량 대신).
음성 파일 넣기. 이 프로그램에는 말소리가 들어 있지 않습니다. 차임(딩동)은 들어 있고, 번호와 문장은 직접 녹음한 조각을 넣어야 납니다. 조각이 없으면 차임만 울리고, 편집기와 화면 관리에 음성 파일 없음 이 뜹니다.
- 모으기. 아래 녹음 목록의 파일 이름대로 녹음 파일을 모읍니다. 확장자는
.wav·.aiff·.m4a·.mp3중 아무거나 됩니다. 예:ko/n16은<녹음 폴더>/ko/n16.wav. - 굽기.
node tools/voice/bake-voice.mjs --from <녹음 폴더>를 실행합니다. 빠진 녹음이 있으면 목록을 알려 주고 멈춥니다. - 빌드. 화면 프로그램을 다시 빌드(
npm run build)해 게이트웨이에 올립니다. - 되돌리기. 말소리를 지우고 처음 상태로 되돌리려면
node tools/voice/bake-voice.mjs --clear를 씁니다.
차임(chime)은 이 프로그램에 들어 있어 녹음이 필요 없습니다. 1~99 는 통째로 녹음하세요. 이어 붙이면 연음이 틀립니다(십육 = [심뉵]). 백 단위 이음(116 = 백 + 십육번)이 어색하면 녹음 단계에서 귀로 확인하세요.
말 조각 하나라도 빠진 호출은 말 없이 차임만 울립니다. 말 조각이 하나도 없고 차임도 꺼져 있으면(또는 차임 파일이 없으면) 아무 소리 없이 넘어갑니다.
녹음 목록
| 조각 파일 | 녹음할 글 | 쓰는 곳 |
|---|---|---|
| ko/n1 ~ ko/n99 | 일번 · 이번 · … · 구십구번 (통째로) | 한국어 1~99 |
| ko/h1 ~ ko/h9 | 백 · 이백 · … · 구백 | 백 단위 앞 (116 = 백 + 십육번) |
| ko/hb1 ~ ko/hb9 | 백번 · 이백번 · … · 구백번 | 백 단위로 딱 떨어질 때 (200) |
| ko/ready | 고객님, 주문하신 메뉴가 준비되었습니다. | 한국어 문장 꼬리 |
| en/number | Order number | 영어 번호 앞 |
| en/d0 ~ en/d9 | zero · one · … · nine | 영어 번호 한 자리씩 (116 = one one six) |
| en/ready | your order is ready. | 영어 문장 꼬리 |