Table of Contents

Class InteractionContext

Namespace
HeyBox.Interactions
Assembly
HeyBox.Net.Interactions.dll

表示一次交互的上下文。

public class InteractionContext : IInteractionContext, IRouteMatchContainer
Inheritance
InteractionContext
Implements
Inherited Members

Constructors

InteractionContext(IHeyBoxClient, IHeyBoxInteraction, IMessageChannel, ulong)

初始化一个 InteractionContext 类的新实例。

public InteractionContext(IHeyBoxClient client, IHeyBoxInteraction interaction, IMessageChannel channel, ulong messageId)

Parameters

client IHeyBoxClient

黑盒语音客户端。

interaction IHeyBoxInteraction

交互事件。

channel IMessageChannel

交互事件发生的频道。

messageId ulong

交互事件来源的消息 ID。

Properties

Channel

获取本次交互来源的频道。

public IMessageChannel Channel { get; }

Property Value

IMessageChannel

Client

获取用于处理本次交互的客户端。

public IHeyBoxClient Client { get; }

Property Value

IHeyBoxClient

Interaction

获取底层交互对象。

public IHeyBoxInteraction Interaction { get; }

Property Value

IHeyBoxInteraction

MessageId

获取本次交互来源的消息 ID。

public ulong MessageId { get; }

Property Value

ulong

Room

获取本次交互来源的群组。

public IRoom? Room { get; }

Property Value

IRoom

Remarks

如果交互来源为私聊频道或为上下文命令交互,则为 null

RoomId

获取用于处理本次交互的应用命令信息。

public ulong? RoomId { get; }

Property Value

ulong?

SegmentMatches

获取此容器中捕获的路由片段集合。

public IReadOnlyCollection<IRouteSegmentMatch> SegmentMatches { get; }

Property Value

IReadOnlyCollection<IRouteSegmentMatch>

捕获的路由片段集合。

User

获取触发本次交互事件的用户。

public IUser? User { get; }

Property Value

IUser

UserId

获取触发本次交互的用户 ID。

public uint UserId { get; }

Property Value

uint

Methods

SetSegmentMatches(IEnumerable<IRouteSegmentMatch>)

设置此容器的 SegmentMatches 属性。

public void SetSegmentMatches(IEnumerable<IRouteSegmentMatch> segmentMatches)

Parameters

segmentMatches IEnumerable<IRouteSegmentMatch>

捕获的路由片段集合。