Skip to main content

操作和规则快速入门

PlayStream 规则允许你实时响应一种类型的 PlayStream 事件的子集。

要求

相关术语的快速词汇表:
  • PlayStream:构成 PlayFab 事件管道的功能组。
    • PlayStream 事件 是描述有关玩家或游戏的事件的 JSON 格式字符串。
    • PlayStream 事件 具有基于你的自动化功能层的最大大小。
  • 规则:实时响应一种类型的 PlayStream 事件执行额外的逻辑。
    • 由以下部分组成:一个 事件触发器,一个可选的 条件 列表,以及一个可选的 操作 列表。
  • 触发器:激活此规则的事件的名称。
  • 条件:规则和其他 PlayStream 功能的内容筛选器。
    • 对 PlayStream 事件 JSON 对象执行非常轻量的评估,并跳过不符合要求的事件。
  • 操作:要在适当的实体上执行的上下文相关的工作。
规则由恰好一个触发器、一个可选的条件列表以及通常至少一个操作组成(不是必需的,但没有操作则毫无用处)。 触发器、条件和操作也是其他系统的一部分:批量操作锦标赛排行榜(已弃用)

示例案例:计算来自客户端的自定义事件

在下面显示的示例中,我们从客户端发布以下自定义事件。
在这种情况下,客户端手动报告一个自定义 ForumPostEvent(这目前不对应于 PlayFab 或受支持的合作伙伴中的任何自动事件) 我们将使用 PlayStream 规则来计算玩家以此方式报告论坛帖子的次数。 要求:在 Game Manager GUI 允许你创建触发它的规则之前,你的游戏必须已经发布过此类型的事件。 前往你的 Game Manager
  • 导航到你的 Title
  • 选择 Automation
  • 前往 Rules
  • 选择 New Rule
让我们在此示例中逐块评估 New Rule
  • title.6195.ForumPostEvent
    • 6195 是本教程中使用的 title。你的 titleId 将与你自己的 Title 匹配。
    • ForumPostEvent 是此示例案例代码中使用的事件名称。
    • 此行仅在你最近在你的 Title 中至少发布过一个 ForumPostEvent 时才可用。
  • 此示例中专门使用的 Conditions 用途最少。
    • 但是,它确实演示了如果我们的 Body 字典中 Body 键映射到 Invalid string 时筛选我们的自定义事件。
    • 筛选器是可选的,应从你的规则中移除不相关的玩家。
  • 在这种情况下,选择的 Actions 将统计信息计数器递增一。
    • 要求Forum Posts 统计信息必须在 Game Manager 的排行榜下定义。
在 Game Manager PlayStream Debugger(如下所示)中,你可以观察触发器生效。 如你所见,自定义 ForumPostEvent 自动触发我们为新规则在 Actions 下设置的统计信息。

高级:CloudScript 操作

PlayFab 中的许多内置操作相当简单,可能无法提供你所需的全部功能。这就是为什么我们允许你使用 CloudScript 完全自定义操作逻辑。 让我们编辑 Rule
  • 删除 Condition
  • Action 设置为 Execute CloudScript
  • 选择 Save Action 按钮。
现在,如果我们发布一个新的 ForumPostEvent,我们将看到一次 CloudScript 执行。 编写响应 PlayStream 规则的 CloudScript 是一个高级主题,将在我们的教程中介绍:将 CloudScript 操作与 PlayStream 结合使用
最后修改于 2026年8月13日