<aside>
💡 브라우저의 음성 인식 기능(Web Speech API)을 활용하여 InputText 또는 MultiInputBox 컨트롤에 음성을 실시간 텍스트로 입력하고, 인식 종료 후 이벤트를 실행할 수 있는 함수입니다.
</aside>
| 방식 | 설명 |
|---|---|
| start() 단독 호출 | 지정한 컨트롤에 결과가 실시간 입력되고, 종료 후 지정 이벤트가 실행됩니다. 가장 간단한 사용법입니다. |
| init() → start() | start 단독 기능에 더해 별도 카테고리/콜렉션 저장, 언어 고정, 대기시간 조정, 오류 콜백 설정이 가능합니다. |
// 방식 1) start 단독 — f_12 컨트롤에 이어쓰기, 종료 후 r_E 이벤트 실행
f.SpeechRecognition.start("f_12", undefined, "r_E", false)
// 방식 2) init 후 start — 결과를 카테고리에 저장하고 무한 대기로 동작
f.SpeechRecognition.init({
categoryName: "STT_Result",
ckey: "R_T",
initialSilenceTimeout: -1,
finalSilenceTimeout: -1
})
f.SpeechRecognition.start("f_12", undefined, "r_E", false)
음성 인식을 시작합니다.
start(fid = undefined, sector = undefined, eventName = undefined, useOverwrite = false)
| 파라미터 | 타입 | 설명 | 기본값 |
|---|---|---|---|
fid |
String | 음성 인식 결과가 실시간 입력될 InputText 또는 MultiInputBox 컨트롤의 fID |
undefined |
sector |
Sector | 입력 대상이 될 섹터 객체 (선택사항) | undefined |
eventName |
String | 음성 인식 종료 후 실행할 이벤트 이름 | undefined |
useOverwrite |
Boolean | true 시 기존 입력값을 덮어쓰고 시작 |
|
false 시 기존 값 뒤에 이어쓰기 |
false |
fid를 지정하면 해당 컨트롤에 음성 인식 결과가 실시간으로 표시됩니다.fid로 지정한 컨트롤이 InputText/MultiInputBox가 아니면 입력이 적용되지 않습니다.eventName을 지정하면 음성 인식 종료 후 해당 이벤트가 실행됩니다.start() 가 아니라 init()에서 설정합니다.| 반환값 | 설명 |
|---|---|
true |
음성 인식을 지원하며 정상적으로 실행 요청됨 (이후 인식 시작 또는 오류 처리로 진행) |
undefined |
(1) 음성 인식을 하고 있는 상태(LISTENING)에서 호출된 경우 |
(2) 브라우저가 음성 인식 API를 지원하지 않는 경우 (service-not-allowed 오류 처리 후 종료) |
<aside> ⚠️
마이크 권한 오류(not-allowed 등)는 start() 반환 시점에 감지되지 않고, 이후 오류 이벤트를 통해 비동기로 감지됩니다. 이때 오류 유형은 onError 콜백 또는 getLastErrorCode()로 확인할 수 있습니다.
</aside>