类 Dialog::D ialogServiceConnector
class Dialog::DialogServiceConnector
: public std::enable_shared_from_this< DialogServiceConnector >
: public Utils::NonCopyable
: public Utils::NonMovable
用于连接 DirectLineSpeech 或 CustomCommands 的对象。
此类型的对象通过 FromConfig 工厂方法创建。
成员
认可
语法: public EventSignal< constSpeechRecognitionEventArgs & > Recognized;
包含语音识别结果的事件的信号。
识别
语法: public EventSignal< constSpeechRecognitionEventArgs & > Recognizing;
包含中间识别结果的事件的信号。
SessionStarted
语法: public EventSignal< constSessionEventArgs & > SessionStarted;
指示开始侦听会话的信号。
SessionStopped
语法: public EventSignal< constSessionEventArgs & > SessionStopped;
指示侦听会话结束的信号。
SpeechStartDetected
语法: public EventSignal< constRecognitionEventArgs & > SpeechStartDetected;
指示对当前短语中的语音数据进行首次检测的信号。
SpeechEndDetected
语法: public EventSignal< constRecognitionEventArgs & > SpeechEndDetected;
指示检测到的当前短语语音数据的末尾的信号。
已取消
语法: public EventSignal< constSpeechRecognitionCanceledEventArgs & > Canceled;
与取消交互相关的事件的信号。 事件指示原因是直接取消还是错误。
ActivityReceived
语法: public EventSignal< constActivityReceivedEventArgs & > ActivityReceived;
表示已从后端接收活动。
TurnStatusReceived
语法: public EventSignal< constTurnStatusReceivedEventArgs & > TurnStatusReceived;
指示已从后端收到轮次状态更新的信号。
属性
语法: public PropertyCollection & Properties;
为此 DialogServiceConnector 定义的属性及其值的集合。
~DialogServiceConnector
语法: public inline virtual ~DialogServiceConnector ( );
销毁实例。
ConnectAsync
语法: public inline std::future< void > ConnectAsync ( );
与后端连接。
返回
启动连接的异步操作。
DisconnectAsync
语法: public inline std::future< void > DisconnectAsync ( );
断开与后端的连接。
返回
启动断开连接的异步操作。
SendActivityAsync
语法: public inline std::future< std::string > SendActivityAsync ( const std::string & activity );
将活动发送到支持对话框。
参数
activity
要发送的活动
返回
启动操作的异步操作。
StartKeywordRecognitionAsync
语法: public inline std::future< void > StartKeywordRecognitionAsync ( std::shared_ptr< KeywordRecognitionModel > model );
启动关键字 (keyword) 识别。
参数
model
指定要使用的关键字 (keyword) 模型。
返回
启动操作的异步操作。
StopKeywordRecognitionAsync
语法: public inline std::future< void > StopKeywordRecognitionAsync ( );
停止关键字 (keyword) 识别。
返回
启动操作的异步操作。
ListenOnceAsync
语法: public inline std::future< std::shared_ptr< SpeechRecognitionResult > > ListenOnceAsync ( );
启动将在第一个言语后终止的侦听会话。
返回
启动操作的异步操作。
StopListeningAsync
语法: public inline std::future< void > StopListeningAsync ( );
请求活动侦听操作立即完成,中断任何正在进行的说话,并提供反映到目前为止捕获的任何音频数据的结果。
返回
表示停止活动侦听会话的异步操作的任务。
SetAuthorizationToken
语法: public inline void SetAuthorizationToken ( const std::string & token );
设置将用于连接到服务的授权令牌。 注意:调用方需要确保授权令牌有效。 在授权令牌过期之前,调用方需要使用新的有效令牌调用此资源库来刷新它。 否则,连接器在操作期间将遇到错误。
参数
token
授权令牌。
GetAuthorizationToken
语法: public inline std::string GetAuthorizationToken ( );
获取授权令牌。
返回
授权令牌
SetSpeechActivityTemplate
语法: public inline void SetSpeechActivityTemplate ( const std::string & activityTemplate );
设置一个 JSON 模板,该模板将提供给语音服务进行下一个会话。 该服务将尝试将此模板合并到发送到对话后端的所有活动中,无论是由客户端使用 SendActivityAsync 发起还是由服务生成,就像语音转文本结果一样。
参数
activityTemplate
活动有效负载(作为 JSON 字符串)要合并到所有适用的活动消息中。
GetSpeechActivityTemplate
语法: public inline std::string GetSpeechActivityTemplate ( );
获取将为下一个会话提供给语音服务的 JSON 模板。 该服务将尝试将此模板合并到发送到对话后端的所有活动中,无论是由具有 SendActivityAsync 的客户端发起还是由服务生成,就像语音转文本结果一样。
返回
当前设置的 JSON 活动模板,将用于后续请求。
FromConfig
语法: public inline static std::shared_ptr< DialogServiceConnector > FromConfig ( std::shared_ptr< DialogServiceConfig > connectorConfig , std::shared_ptr< Audio::AudioConfig > audioConfig );
从 DialogServiceConfig 和 Audio::AudioConfig 创建对话框服务连接器。 用户应使用此函数创建对话框服务连接器。
参数
connectorConfig
对话框服务配置。audioConfig
音频配置。
返回
创建的对话框服务连接器的共享智能指针。
auto audioConfig = [Audio::AudioConfig::FromDefaultMicrophoneInput](audio-audioconfig.md#fromdefaultmicrophoneinput)();
auto config = [CustomCommandsConfig::FromAuthorizationToken](dialog-customcommandsconfig.md#fromauthorizationtoken)("my_app_id","my_auth_token", "my_region");
auto connector = [DialogServiceConnector::FromConfig](#fromconfig)(config, audioConfig);
在谈到 DialogServiceConfig 时,我们指的是继承自它的类之一。 要使用的特定类取决于所使用的对话后端:
BotFrameworkConfig for DirectLineSpeech
CustomCommandsConfig for CustomCommands