跳转到主要内容

概述

OneSignal 中的推送限流允许您控制向用户投递推送通知的速率。这对于管理服务器容量并确保高容量发送期间的流畅用户体验特别有用。

优势

  • 管理服务器负载 – 通过将消息投递分散到不同时间来防止过载。
  • 保持性能 – 避免批量发送期间的性能下降。
  • 改善用户体验 – 在各设备间保持一致性和响应性。

配置选项

必须在全局设置级别启用限流才能使用此功能。

全局限流设置

Settings > Push & In-App > Throttling 下为所有推送消息启用限流。启用后,此设置默认适用于所有推送通知,但可以为单个消息进行重写。

导航到推送限流设置

按消息限流重写

您可以在单个消息上重写全局限流设置。
  1. 在创建通知期间,选中”Override throttling setting”框
  2. 设置您所需的每分钟消息数量
  3. 要为特定消息禁用限流,请在每分钟消息字段中输入”0”
对于通过 API 发送的通知,请使用 throttle_rate_per_minute 属性。
必须在全局设置级别启用限流才能进行任何使用。

限流如何工作

速率转换过程

OneSignal 将您的每分钟设置转换为每秒速率以优化投递:
  1. 系统将您的限流速率除以 60(每分钟秒数)
  2. 结果向下舍入到最接近的整数(OneSignal 无法发送部分消息)
  3. 然后在整个投递过程中应用此每秒速率

限流转换示例

  • 您设置 1019 条消息每分钟
  • 计算 1019 ÷ 60 = 16.98 条消息每秒
  • 向下舍入为 16 条消息每秒
  • 实际投递速率 16 × 60 = 960 条消息每分钟
  • 差异比设置速率少 59 条消息每分钟
此转换通过消除批次间延迟确保更高效的处理。

限制和注意事项

24 小时投递窗口

所有限流通知必须在发送后 24 小时内完成投递。如果您的限流速率会导致投递超过 24 小时,OneSignal 会自动调整速率以确保在此时间范围内完成投递。

自动限流调整示例

如果您为 20,000 个用户设置 10 条消息每分钟的限流速率(大约需要 33 小时),OneSignal 将自动调整速率至大约 14 条消息每分钟,以确保投递在所需的 24 小时窗口内完成。

与其他功能的兼容性

时区和智能投递

限流优先于时区和智能投递选项。当启用限流时,该通知会忽略这些功能。 要使用时区或智能投递:
  • 在投递计划下为该特定通知禁用限流
  • 将”Override throttling setting”设置为”0”
  • 对于 API 通知,设置 throttle_rate_per_minute: 0

旅程和自动化消息

限流不支持以下功能:
  • 旅程
  • 自动化消息
这些功能在用户进入细分或触发事件时动态发送通知,这自然地将投递分散到不同时间。
通过旅程或自动化消息发送的通知不支持限流。这些消息基于用户行为自动调节节奏,不需要手动速率控制。

可用性

限流仅适用于:
  • 通过创建通知 API 发送的推送通知
  • 通过 Messages > New Push 界面创建的推送通知

I