class Connection
class Connection
: public std::enable_shared_from_this< Connection >
연결은 지정된 Recognizer의 음성 서비스에 대한 연결을 관리하기 위한 프록시 클래스입니다. 기본적으로 Recognizer는 필요할 때 서비스에 대한 연결을 자율적으로 관리합니다. Connection 클래스는 사용자가 명시적으로 연결을 열거나 닫고 연결 상태 변경 내용을 구독하는 추가 메서드를 제공합니다. 연결 사용은 선택 사항입니다. 연결 상태 따라 애플리케이션 동작을 미세 조정해야 하는 시나리오를 위한 것입니다. 사용자는 필요에 따라 Open()을 호출하여 이 연결과 연결된 인식기에서 인식을 시작하기 전에 수동으로 서비스 연결을 시작할 수 있습니다. 인식을 시작한 후 Open() 또는 Close()를 호출하지 못할 수 있습니다. 이는 인식기 또는 진행 중인 인식에 영향을 주지 않습니다. 다양한 이유로 연결이 끊어질 수 있으며, Recognizer는 진행 중인 작업을 보장하기 위해 필요에 따라 항상 연결을 다시 구성하려고 시도합니다. 이러한 모든 경우 연결/연결 끊김 이벤트는 연결 상태 변경을 나타냅니다. 버전 1.17.0에서 업데이트되었습니다.
멤버
연결됨
구문: public EventSignal< constConnectionEventArgs & > Connected;
인식기가 서비스에 연결되어 있음을 나타내는 Connected 이벤트입니다.
연결 끊김
구문: public EventSignal< constConnectionEventArgs & > Disconnected;
인식기가 서비스에서 연결이 끊어지는 것을 나타내는 Disconnected 이벤트입니다.
MessageReceived
구문: public EventSignal< constConnectionMessageEventArgs & > MessageReceived;
기본 프로토콜이 서비스에서 메시지를 수신했음을 나타내는 MessageReceived 이벤트입니다. 버전 1.10.0에 추가되었습니다.
열기
구문: public inline void Open ( bool forContinuousRecognition );
서비스에 대한 연결을 설정하기 시작합니다. 사용자는 선택적으로 Open()을 호출하여 이 연결과 연결된 Recognizer/Synthesizer에서 인식/합성을 시작하기 전에 사전에 연결을 수동으로 설정할 수 있습니다. 인식을 시작한 후 Recognizer/Synthesizer의 프로세스 상태에 따라 Open()을 호출하지 못할 수 있습니다. 그러나 오류는 연결된 Recognizer/Synthesizer의 상태에 영향을 주지 않습니다. 참고: 반환 시 연결이 아직 준비되지 않았을 수 있습니다. 연결이 설정될 때 알림을 받으려면 Connected 이벤트를 구독하세요.
매개 변수
forContinuousRecognition
연결이 연속 인식 또는 단일 샷 인식에 사용되는지 여부를 나타냅니다. 연결이 SpeechSynthsizer에서 온 경우에는 적용되지 않습니다.
닫기
구문: public inline void Close ( );
서비스 연결을 닫습니다. 사용자는 필요에 따라 Close()를 호출하여 연결된 Recognizer/Synthesizer의 연결을 수동으로 종료할 수 있습니다. Recognizer/Synthesizer의 프로세스 상태에 따라 호출이 실패할 수 있습니다. 그러나 오류는 연결된 Recognizer/Synthesizer의 상태에 영향을 주지 않습니다.
SetMessageProperty
구문: public inline void SetMessageProperty ( const std::string & path , const std::string & propertyName , const std::string & propertyValue );
메시지에 매개 변수를 서비스에 추가합니다. 이 메서드는 SpeechSynthesizer의 연결에 대해 작동하지 않습니다. 버전 1.7.0에 추가되었습니다.
매개 변수
path
메시지 경로입니다.propertyName
속성의 이름입니다.propertyValue
속성의 값입니다. json 문자열입니다.
반환
Void.
SendMessageAsync
구문: public inline std::future< void > SendMessageAsync ( const std::string & path , const std::string & payload );
음성 서비스에 메시지를 보냅니다. 이 메서드는 SpeechSynthesizer의 연결에 대해 작동하지 않습니다. 버전 1.7.0에 추가되었습니다.
매개 변수
path
메시지의 경로입니다.payload
메시지의 페이로드입니다. json 문자열입니다.
반환
빈 미래.
SendMessageAsync
구문: public inline std::future< void > SendMessageAsync ( const std::string & path , uint8_t * payload , uint32_t size );
음성 서비스에 이진 메시지를 보냅니다. 이 메서드는 SpeechSynthesizer의 연결에 대해 작동하지 않습니다. 버전 1.10.0에 추가되었습니다.
매개 변수
path
메시지의 경로입니다.payload
메시지의 이진 페이로드입니다.size
이진 페이로드의 크기입니다.
반환
빈 미래.
연결
구문: public inline explicit Connection ( SPXCONNECTIONHANDLE handle );
내부 생성자입니다. 제공된 핸들을 사용하여 새 instance 만듭니다.
매개 변수
handle
연결 핸들입니다.
~연결
구문: public inline ~Connection ( );
소멸자
FromRecognizer
구문: public inline static std::shared_ptr< Connection > FromRecognizer ( std::shared_ptr< Recognizer > recognizer );
지정된 인식기에서 연결 instance 가져옵니다.
매개 변수
recognizer
연결과 연결된 인식기입니다.
반환
인식기의 연결 instance.
FromConversationTranslator
구문: public inline static std::shared_ptr< Connection > FromConversationTranslator ( std::shared_ptr< Transcription::ConversationTranslator > convTrans );
지정된 대화 변환기에서 연결 instance 가져옵니다.
매개 변수
convTrans
연결과 연결된 대화 번역기입니다.
반환
대화 번역기의 연결 instance.
FromDialogServiceConnector
구문: public inline static std::shared_ptr< Connection > FromDialogServiceConnector ( std::shared_ptr< Dialog::DialogServiceConnector > dialogServiceConnector );
음성 서비스에서 연결 및 연결 끊기를 관찰하고 관리하는 데 사용되는 지정된 대화 서비스 커넥터에서 연결 instance 가져옵니다.
매개 변수
dialogServiceConnector
연결과 연결된 대화 서비스 커넥터입니다.
반환
대화 서비스 커넥터의 연결 instance.
FromSpeechSynthesizer
구문: public inline static std::shared_ptr< Connection > FromSpeechSynthesizer ( std::shared_ptr< SpeechSynthesizer > synthesizer );
지정된 음성 신시사이저에서 Connection instance 가져옵니다. 버전 1.17.0에 추가되었습니다.
매개 변수
synthesizer
연결과 연결된 음성 신시사이저입니다.
반환
음성 신시사이저의 연결 instance.