nextBlocking

@JvmName(name = "next")
fun <E : Event> Event.nextBlocking(id: String, key: Event.Key<E>, timeout: JavaDuration = JavaDuration.ZERO): E

阻塞并等待在具体的事件 Event 环境下根据条件获取下一个匹配的 事件.

通过 next 进行匹配的事件,会根据对应的事件类型结合当前的 Event 的类型进行匹配。

next 对事件类型进行的对应的匹配规则对照表如下:

当前事件类型目标事件同类型目标事件不同类型
Eventbot 的ID要相同不会出现不同类型
OrganizationEventorganization 的ID要相同放行
UserEventuser 的ID要相同放行
MessageEventsource 的ID要相同放行
ChatRoomMessageEventauthor 的ID要相同放行

如果你希望使用更复杂的匹配逻辑,请通过 waitingForNext 来自行编写逻辑。

Receiver

当前所处的事件环境

See also

Parameters

id

持续会话监听函数唯一标识

key

目标事件类型

timeout

超时时间。大于0时生效


@JvmName(name = "next")
fun <E : Event> Event.nextBlocking(key: Event.Key<E>, timeout: JavaDuration = JavaDuration.ZERO): E

阻塞并等待在具体的事件 Event 环境下根据条件获取下一个匹配的 事件.

通过 next 进行匹配的事件,会根据对应的事件类型结合当前的 Event 的类型进行匹配。

next 对事件类型进行的对应的匹配规则对照表如下:

当前事件类型目标事件同类型目标事件不同类型
Eventbot 的ID要相同不会出现不同类型
OrganizationEventorganization 的ID要相同放行
UserEventuser 的ID要相同放行
MessageEventsource 的ID要相同放行
ChatRoomMessageEventauthor 的ID要相同放行

如果你希望使用更复杂的匹配逻辑,请通过 waitingForNext 来自行编写逻辑。

Receiver

当前所处的事件环境

See also

Parameters

key

目标事件类型

timeout

超时时间。大于0时生效


@JvmName(name = "next")
fun <E : Event> Event.nextBlocking(id: String = randomIdStr(), key: Event.Key<E>, timeout: Long, timeUnit: TimeUnit): E

阻塞并等待在具体的事件 Event 环境下根据条件获取下一个匹配的 事件.

通过 next 进行匹配的事件,会根据对应的事件类型结合当前的 Event 的类型进行匹配。

next 对事件类型进行的对应的匹配规则对照表如下:

当前事件类型目标事件同类型目标事件不同类型
Eventbot 的ID要相同不会出现不同类型
OrganizationEventorganization 的ID要相同放行
UserEventuser 的ID要相同放行
MessageEventsource 的ID要相同放行
ChatRoomMessageEventauthor 的ID要相同放行

如果你希望使用更复杂的匹配逻辑,请通过 waitingForNext 来自行编写逻辑。

Receiver

当前所处的事件环境

See also

Parameters

id

持续会话监听函数唯一标识

key

目标事件类型

timeout

超时时间。大于0时生效

timeUnit

timeout 的时间类型


@JvmName(name = "next")
fun <E : Event> EventProcessingContext.nextBlocking(id: String = randomIdStr(), key: Event.Key<E>, timeout: JavaDuration = JavaDuration.ZERO): E

阻塞并等待在具体的事件处理上下文 EventProcessingContext 环境下根据条件获取下一个匹配的 事件.

通过 next 进行匹配的事件,会根据对应的事件类型结合当前的 EventProcessingContext.event 的类型进行匹配。

如果你希望使用更复杂是匹配逻辑,请通过 waitingForNext 来自行编写逻辑。

Receiver

当前所处的事件环境

See also

Parameters

id

持续会话监听函数唯一标识

key

目标事件类型

timeout

超时时间。大于0时生效


@JvmName(name = "next")
fun <E : Event> EventProcessingContext.nextBlocking(key: Event.Key<E>, timeout: JavaDuration = JavaDuration.ZERO): E

阻塞并等待在具体的事件处理上下文 EventProcessingContext 环境下根据条件获取下一个匹配的 事件.

通过 next 进行匹配的事件,会根据对应的事件类型结合当前的 EventProcessingContext.event 的类型进行匹配。

如果你希望使用更复杂是匹配逻辑,请通过 waitingForNext 来自行编写逻辑。

Receiver

当前所处的事件环境

See also

Parameters

key

目标事件类型

timeout

超时时间。大于0时生效


@JvmName(name = "next")
fun <E : Event> EventProcessingContext.nextBlocking(id: String = randomIdStr(), key: Event.Key<E>, timeout: Long, timeUnit: TimeUnit): E

阻塞并等待在具体的事件处理上下文 EventProcessingContext 环境下根据条件获取下一个匹配的 事件.

通过 next 进行匹配的事件,会根据对应的事件类型结合当前的 EventProcessingContext.event 的类型进行匹配。

如果你希望使用更复杂是匹配逻辑,请通过 waitingForNext 来自行编写逻辑。

Receiver

当前所处的事件环境

See also

Parameters

id

持续会话监听函数唯一标识

key

目标事件类型

timeout

超时时间。大于0时生效

timeUnit

timeout 的时间类型


@JvmName(name = "next")
fun Event.nextBlocking(id: String = randomIdStr(), timeout: JavaDuration = JavaDuration.ZERO): Event

阻塞并等待在具体的事件 Event 环境下根据条件获取下一个匹配的 事件.

通过 next 进行匹配的事件,会根据对应的事件类型结合当前的 Event 的类型进行匹配。

next 对事件类型进行的对应的匹配规则对照表如下:

当前事件类型目标事件同类型目标事件不同类型
Eventbot 的ID要相同不会出现不同类型
OrganizationEventorganization 的ID要相同放行
UserEventuser 的ID要相同放行
MessageEventsource 的ID要相同放行
ChatRoomMessageEventauthor 的ID要相同放行

如果你希望使用更复杂的匹配逻辑,请通过 waitingForNext 来自行编写逻辑。

Receiver

当前所处的事件环境

See also

Parameters

id

持续会话监听函数唯一标识

timeout

超时时间。大于0时生效


@JvmName(name = "next")
fun Event.nextBlocking(id: String = randomIdStr(), timeout: Long, timeUnit: TimeUnit): Event

阻塞并等待在具体的事件 Event 环境下根据条件获取下一个匹配的 事件.

通过 next 进行匹配的事件,会根据对应的事件类型结合当前的 Event 的类型进行匹配。

next 对事件类型进行的对应的匹配规则对照表如下:

当前事件类型目标事件同类型目标事件不同类型
Eventbot 的ID要相同不会出现不同类型
OrganizationEventorganization 的ID要相同放行
UserEventuser 的ID要相同放行
MessageEventsource 的ID要相同放行
ChatRoomMessageEventauthor 的ID要相同放行

如果你希望使用更复杂的匹配逻辑,请通过 waitingForNext 来自行编写逻辑。

Receiver

当前所处的事件环境

See also

Parameters

id

持续会话监听函数唯一标识

timeout

超时时间。大于0时生效

timeUnit

timeout 的时间类型


@JvmName(name = "next")
fun EventProcessingContext.nextBlocking(id: String = randomIdStr(), timeout: JavaDuration = JavaDuration.ZERO): Event

阻塞并等待在具体的事件处理上下文 EventProcessingContext 环境下根据条件获取下一个匹配的 事件.

通过 next 进行匹配的事件,会根据对应的事件类型结合当前的 EventProcessingContext.event 的类型进行匹配。

如果你希望使用更复杂是匹配逻辑,请通过 waitingForNext 来自行编写逻辑。

Receiver

当前所处的事件环境

See also

Parameters

id

持续会话监听函数唯一标识

timeout

超时时间。大于0时生效


@JvmName(name = "next")
fun EventProcessingContext.nextBlocking(id: String = randomIdStr(), timeout: Long, timeUnit: TimeUnit): Event

阻塞并等待在具体的事件处理上下文 EventProcessingContext 环境下根据条件获取下一个匹配的 事件.

通过 next 进行匹配的事件,会根据对应的事件类型结合当前的 EventProcessingContext.event 的类型进行匹配。

如果你希望使用更复杂是匹配逻辑,请通过 waitingForNext 来自行编写逻辑。

Receiver

当前所处的事件环境

See also

Parameters

id

持续会话监听函数唯一标识

timeout

超时时间。大于0时生效

timeUnit

timeout 的时间类型