Loading

Robin
One Booster

Notification prompt logic

11/13/2019 · 2 min read

  1. Rules for each notification prompt
    1. https://docs.google.com/spreadsheets/d/19EqfNobmaFqUlcijbvJQEW67kHyA5mhYI62xxrLOhgE/edit?usp=sharing
  2. Cooldown (CD) — avoid firing the same hint too often
    1. After a prompt is dismissed, enter CD for 30 minutes (whether or not the user acted on it). Only after CD ends does scanning resume for eligible triggers.
    2. CD duration differs per prompt type
  3. Two cases where notifications do not fire even when conditions match
    1. Sleep window (avoid spurious prompts around 2 a.m.):
      1. 10:00 pm ~ 8:00 am is sleep time—feature prompts do not fire.
      2. CD counting runs only outside sleep. CD pauses at 10:00 pm and resumes at 8:00 am.
    2. One Booster in foreground (avoid in-app notification spam)
      1. While One Booster is active, feature prompts do not fire.
      2. CD counting pauses from app open; CD resumes 3 minutes after the app is closed.
  4. Multiple prompts eligible at once (avoid simultaneous notifications)
    1. Notification prompt vs. notification prompt
      1. If 2 qualify, fire in order; after the first is dismissed, wait 5 minutes before the next.
      2. If 3 qualify, after the first is dismissed, wait 25 minutes.
      3. If more than 3 qualify, after the first is dismissed, wait 45 minutes.
    2. Notification prompt vs. charging optimization prompt
      1. Show the charging optimization modal first; fire notification prompts 5 minutes after that modal is dismissed.

Simplified version

  • CD (per spreadsheet)
    • After a prompt is dismissed (whether or not the user acted), enter CD; scanning resumes only after CD ends.
  • Scan interval: 1 hour
  • Special cases
    • If conditions match while the app is open, counting starts after the user leaves; the next 1-hour scan may fire eligible prompts.
    • If multiple notifications qualify at once, show only one; others wait for the next 1-hour scan.
    • If charging optimization and other prompts qualify together, show charging optimization; others wait for the next 1-hour scan.
    • If a notification is already showing, do not fire new ones; eligible prompts retry on the next scan interval.

Related posts