WebSocket Legacy 프로토콜
이 문서는 구 SR API 서비스의 클라이언트 호환을 위한 레거시 프로토콜을 설명합니다.
신규 개발에는 WebSocket v1 프로토콜을 사용하세요.
텍스트 프레임 기반의 명령·응답 방식으로 동작하는 구세대 프로토콜입니다.
프레임 형식은 command 또는 command:payload이며,
인자 구분자로 |와 탭을 사용합니다.
동작 모드를 req_set_command:{mode}로 지정한 뒤 오디오 바이너리를 전송합니다.
엔드포인트
WS wss://{host}:{port}/ | /ws
경로는 / 또는 /ws 모두 허용됩니다.
동작 모드 → v1 오퍼레이션 매핑
| mode | 이름 | v1 매핑 | 바이너리 즉시 응답 |
|---|---|---|---|
| 0 | Recognition | sr/recognize | frame_proc_return:{State} |
| 1 | Intonation | sr/intonation | i_result_return:{Json} |
| 2 | Reference | sr/set_assessment_ref | set_ref_return:1;1;{ReferenceID} |
| 3 | Assessment | sr/assess | assessment_return:{Ret};0;{Json} |
| 4 | Paragraph | sr/recognize_long | paragraph_return:{Ret} |
| 5 | OTF Paragraph | sr/recognize_otf | otf_return:{Ret};{UpdatedFrom};{Json} |
| 6 | File Save | sr/save_file | filesave_return:{Ret} |
오디오는 MP3 또는 Linear PCM 버퍼를 지원합니다. mode 0~4·6은 페이로드 전체가 음성이고,
mode 5(OTF)는 12바이트 헤더(sampleOffsetDiff/eos/frame_index) 뒤에 음성이 옵니다.
주요 명령
| 명령 | 설명 | 응답 |
|---|---|---|
init_voice | 세션 초기화 (_newuser_/_user_) | init_voice_ok / init_voice_fail:-100 |
req_set_command:{mode} | 동작 모드 지정 | req_set_command_ok:{mode} |
set_text | 기준 텍스트 설정 | set_text_return:1 |
reg_ref_id / req_set_ref_id | 평가 참조 ID 등록/지정 | reg_ref_id_ok:{ref_id} |
r_result / p_result | 인식/문단 결과 요청 | r_result_return:{Json} |
req_set_params / req_get_params | 파라미터 설정/조회 (v_profile·level·tm_limit·pause_th) | res_set_params_ok:{Json} |
set_grade | grade 및 판정 기준 점수 설정 | set_grade_ok:1 |
set_voice_path deprecated | 저장 경로 지정 (mode 6, TFSS 상대경로) | set_voice_path_ok:0/2 |
req_g2p | G2P(단어→음소열) 변환 | res_g2p_ok:{phonemes} |
req_curve_data | 억양 및 loudness 곡선 데이터 | curve_data_return:{Json} |
오류 코드는 토큰 접미사(-1, -97, -98, -99, -100, -107, -200)로 반환됩니다.
