TurnContext 接口

public interface TurnContext

为机器人的轮次提供上下文。

上下文提供处理传入活动所需的信息。 上下文对象由 创建, BotAdapter 并保留轮次的长度。

Bot Middleware

字段摘要

修饰符和类型 字段和描述
static final java.lang.String STATE_TURN_LOCALE

方法摘要

修饰符和类型 方法和描述
abstract java.util.concurrent.CompletableFuture<java.lang.Void> deleteActivity(ConversationReference conversationReference)

删除现有活动。

abstract java.util.concurrent.CompletableFuture<java.lang.Void> deleteActivity(String activityId)

删除现有活动。

abstract Activity getActivity()

获取此轮次机器人的活动。

abstract BotAdapter getAdapter()

获取创建此上下文对象的机器人适配器。

abstract java.lang.String getLocale()

获取此上下文对象的区域设置。

abstract boolean getResponded()

获取一个值,该值指示是否为当前轮次至少发送了一个响应。

abstract TurnContextStateCollection getTurnState()

获取在轮次生存期内使用上下文对象缓存的值的集合。

abstract TurnContext onDeleteActivity(DeleteActivityHandler handler)

为删除活动操作添加响应处理程序。

abstract TurnContext onSendActivities(SendActivitiesHandler handler)

为发送活动操作添加响应处理程序。

abstract TurnContext onUpdateActivity(UpdateActivityHandler handler)

为更新活动操作添加响应处理程序。

default java.util.concurrent.CompletableFuture<ResourceResponse[]> sendActivities(Activity[] activities)

用于发送活动数组的帮助程序方法。

abstract java.util.concurrent.CompletableFuture<ResourceResponse[]> sendActivities(List<Activity> activities)

将活动列表发送到传入活动的发送方。

abstract java.util.concurrent.CompletableFuture<ResourceResponse> sendActivity(Activity activity)

将活动发送到传入活动的发送方。

abstract java.util.concurrent.CompletableFuture<ResourceResponse> sendActivity(String textReplyToSend)

将消息活动发送到传入活动的发件人。

abstract java.util.concurrent.CompletableFuture<ResourceResponse> sendActivity(String textReplyToSend, String speak)

将消息活动发送到传入活动的发件人。

abstract java.util.concurrent.CompletableFuture<ResourceResponse> sendActivity(String textReplyToSend, String speak, InputHints inputHint)

将消息活动发送到传入活动的发件人。

default java.util.concurrent.CompletableFuture<java.lang.Void> sendActivityBlind(Activity activity)

在不返回资源响应的情况下,将活动发送到传入活动的发送方。

abstract void setLocale(String withLocale)

在此上下文对象上设置区域设置。

static java.util.concurrent.CompletableFuture<ResourceResponse> traceActivity(TurnContext turnContext, String name)
static java.util.concurrent.CompletableFuture<ResourceResponse> traceActivity(TurnContext turnContext, String name, Object value, String valueType, String label)

出于日志记录目的, BotAdapter 将跟踪活动发送到 。

abstract java.util.concurrent.CompletableFuture<ResourceResponse> updateActivity(Activity withActivity)

替换现有活动。

字段详细信息

STATE_TURN_LOCALE

public static final String STATE_TURN_LOCALE

方法详细信息

deleteActivity

public abstract CompletableFuture deleteActivity(ConversationReference conversationReference)

删除现有活动。

Parameters:

conversationReference - 包含要删除的活动的对话。

Returns:

一个任务,表示排队要执行的工作。 会话引用的 ConversationReference#getActivityId 指示要删除的会话中的活动。

deleteActivity

public abstract CompletableFuture deleteActivity(String activityId)

删除现有活动。

Parameters:

activityId - 要删除的活动的 ID。

Returns:

一个任务,表示排队要执行的工作。

getActivity

public abstract Activity getActivity()

获取此轮次机器人的活动。

Returns:

此轮次机器人的活动。

getAdapter

public abstract BotAdapter getAdapter()

获取创建此上下文对象的机器人适配器。

Returns:

创建此上下文对象的机器人适配器。

getLocale

public abstract String getLocale()

获取此上下文对象的区域设置。

Returns:

此上下文对象上的区域设置字符串。

getResponded

public abstract boolean getResponded()

获取一个值,该值指示是否为当前轮次至少发送了一个响应。

Returns:

true 如果为当前轮次发送了至少一个响应,则为 ;否则为 false

getTurnState

public abstract TurnContextStateCollection getTurnState()

获取在轮次生存期内使用上下文对象缓存的值的集合。

Returns:

在此上下文对象上注册的服务集合。

onDeleteActivity

public abstract TurnContext onDeleteActivity(DeleteActivityHandler handler)

为删除活动操作添加响应处理程序。

调用上下文时 deleteActivity(String activityId) ,适配器会按照将处理程序添加到上下文对象的顺序调用已注册的处理程序。

Parameters:

handler - 要添加到上下文对象的处理程序。

Returns:

更新的上下文对象。

onSendActivities

public abstract TurnContext onSendActivities(SendActivitiesHandler handler)

为发送活动操作添加响应处理程序。

当调用上下文的 sendActivity(Activity activity)sendActivities(List<Activity> activities) 方法时,适配器会按照将其添加到上下文对象的顺序调用已注册的处理程序。

Parameters:

handler - 要添加到上下文对象的处理程序。

Returns:

更新的上下文对象。

onUpdateActivity

public abstract TurnContext onUpdateActivity(UpdateActivityHandler handler)

为更新活动操作添加响应处理程序。

调用上下文时 updateActivity(Activity withActivity) ,适配器会按照将处理程序添加到上下文对象的顺序调用已注册的处理程序。

Parameters:

handler - 要添加到上下文对象的处理程序。

Returns:

更新的上下文对象。

sendActivities

public default CompletableFuture sendActivities(Activity[] activities)

用于发送活动数组的帮助程序方法。 这将调用 sendActivities(List<Activity> activities)

Parameters:

activities - 活动的数组。

Returns:

一个任务,表示排队要执行的工作。

sendActivities

public abstract CompletableFuture sendActivities(List activities)

将活动列表发送到传入活动的发送方。

如果活动成功发送,则任务结果包含一个对象数组 ResourceResponse ,其中包含接收通道分配给活动的 ID。

Parameters:

activities - 要发送的活动。

Returns:

一个任务,表示排队要执行的工作。

sendActivity

public abstract CompletableFuture sendActivity(Activity activity)

将活动发送到传入活动的发送方。

Parameters:

activity - 要发送的活动。

Returns:

一个任务,表示排队要执行的工作。 如果活动成功发送,则任务结果包含一个 ResourceResponse 对象,该对象包含接收通道分配给活动的 ID。

sendActivity

public abstract CompletableFuture sendActivity(String textReplyToSend)

将消息活动发送到传入活动的发件人。

如果活动成功发送,则任务结果包含一个 ResourceResponse 对象,该对象包含接收通道分配给活动的 ID。

有关对 的内容 textReplyToSend施加的限制,请参阅通道的文档。

Parameters:

textReplyToSend - 要发送的消息的文本。

Returns:

一个任务,表示排队要执行的工作。

sendActivity

public abstract CompletableFuture sendActivity(String textReplyToSend, String speak)

将消息活动发送到传入活动的发件人。

如果活动成功发送,则任务结果包含一个 ResourceResponse 对象,该对象包含接收通道分配给活动的 ID。

有关对 的内容 textReplyToSend施加的限制,请参阅通道的文档。

若要控制机器人语音的各种特征(如语音、速率、音量、发音和音调),请在语音合成标记语言 (SSML) 格式中指定 speak

Parameters:

textReplyToSend - 要发送的消息的文本。
speak - (可选)机器人在启用语音的通道上朗读的文本。

Returns:

一个任务,表示排队要执行的工作。

sendActivity

public abstract CompletableFuture sendActivity(String textReplyToSend, String speak, InputHints inputHint)

将消息活动发送到传入活动的发件人。

如果活动成功发送,则任务结果包含一个 ResourceResponse 对象,该对象包含接收通道分配给活动的 ID。

有关对 的内容 textReplyToSend施加的限制,请参阅通道的文档。

若要控制机器人语音的各种特征(如语音、速率、音量、发音和音调),请在语音合成标记语言 (SSML) 格式中指定 speak

Parameters:

textReplyToSend - 要发送的消息的文本。
speak - (可选)机器人在启用语音的通道上朗读的文本。
inputHint - 可选,指示机器人在消息传递到客户端后是接受、期待还是忽略用户输入。 之一:“acceptingInput”、“ignoringInput”或“expectingInput”。 默认值为“acceptingInput”。

Returns:

一个任务,表示排队要执行的工作。

sendActivityBlind

public default CompletableFuture sendActivityBlind(Activity activity)

在不返回 ResourceResponse 的情况下,将活动发送到传入活动的发送方。

Parameters:

activity - 要发送的活动。

Returns:

一个任务,表示排队要执行的工作。

setLocale

public abstract void setLocale(String withLocale)

在此上下文对象上设置区域设置。

Parameters:

withLocale - 此上下文对象上的区域设置字符串。

traceActivity

public static CompletableFuture traceActivity(TurnContext turnContext, String name)

Parameters:

turnContext - turnContext。
name - 活动的名称。

Returns:

具有 ResourceReponse 的未来。

traceActivity

public static CompletableFuture traceActivity(TurnContext turnContext, String name, Object value, String valueType, String label)

出于日志记录目的, BotAdapter 将跟踪活动发送到 。

Parameters:

turnContext - 当前轮次的上下文。
name - 要分配给活动的 Activity#getName 属性的值。
value - 要分配给活动的 Activity#getValue 属性的值。
valueType - 要分配给活动的 Activity#getValueType 属性的值。
label - 要分配给活动的 Activity#getLabel 属性的值。

Returns:

一个任务,表示排队要执行的工作。 如果适配器托管在模拟器中,则任务结果包含具有 ResourceResponse 原始跟踪活动的 ID 的对象;否则,它包含一个 ResourceResponse 对象,该对象包含接收通道分配给活动的 ID。

updateActivity

public abstract CompletableFuture updateActivity(Activity withActivity)

替换现有活动。

如果活动成功发送,则任务结果包含一个 ResourceResponse 对象,该对象包含接收通道分配给活动的 ID。

在调用此项之前,请将替换活动的 ID 设置为要替换的活动的 ID。

Parameters:

withActivity - 新的替换活动。

Returns:

一个任务,表示排队要执行的工作。

适用于