Description from extension meta
Keeps you active in Slack according to the schedules you set on presencescheduler.com
Image from store
Description from store
Presence Scheduler for Slack
============================
Keep your Slack dot 🟢 **green**—on **your** schedule—even when you’re away
from the keyboard, switching between workspaces, or letting the laptop sleep.
---
Why would I need this?
----------------------
Slack flips you to *Away* after ~10 minutes of real inactivity (or immediately
when a tab loses focus). That can break collaboration workflows—stand-ups in
threads, on-call handoffs, queue assignments—when teammates don’t know you’re
actually around.
Presence Scheduler solves that by sending a tiny, harmless activity “pulse”
exactly when **your** working hours say you should look available, and staying
silent the rest of the time.
---
Headline features
-----------------
* 🕑 **Schedule-aware** – set multiple windows per workspace, each in its own
time-zone, Mon–Sun checkboxes, lunch gaps, or 24 × 7 “always-on”.
* 🖥️ **Hidden tab, zero clutter** – one background tab per Slack workspace, no
pop-ups, no keyboard hijacking, <0.1 % CPU when idle.
* 🌍 **Multi-workspace** – pulses every team you’ve authorised, even across
different Slack domains and grid instances.
* 🔒 **Private** – all schedule data lives in Chrome Storage; nothing leaves
your browser except the synthetic mouse/keyboard events Slack already trusts.
* ⏸️ **One-click pause** – un-tick the *Enabled* box in the popup to let Slack
idle naturally (great for PTO).
* 🔔 **Server-side presence fallback** (optional) – if you grant OAuth, our
server keeps you green every 5 minutes even when Chrome is closed.
---
Quick start
-----------
1. Click **Add to Chrome → Add extension**.
2. Open the purple “PS” icon – pin it for next time.
3. Copy your **Personal API token** from the Presence Scheduler dashboard
(`sk_live_…`) → paste → **Save**.
4. Hit **Fetch schedules** – you’ll see each workspace with a 🟢 dot.
5. Customise windows in the web app; click *Fetch* again to sync.
That’s it! The dot stays green whenever at least one rule is active.
---
How does it work?
-----------------
* Every two minutes a hidden tab dispatches `mousemove` + `keydown` events
inside Slack’s DOM—exactly the same events you’d generate by touching the
mouse.
* No clipboard, file-system, or network permissions.
* Tab reuse: we open once, re-inject forever; if you close the tab we reopen
next tick.
* When the browser sleeps we resume automatically on wake.
---
Permissions explained
---------------------
| Permission | Why it’s needed |
|-----------------------|-------------------------------------------------|
| **host** `*.slack.com`| Inject the pulse script into your workspaces. |
| **storage** | Save schedules, token, enabled flag. |
| **alarms** | Fire a tick every 2 minutes & hourly schedule sync. |
| **scripting** (MV3) | Run `content/pulse.js` in the hidden tab. |
---
Security & Privacy
------------------
* Source code is unobfuscated, audit anytime.
* No analytics, no trackers, no remote logging.
* API token is stored with Chrome’s built-in encryption (`chrome.storage.sync`).
* Pulses never leave your browser; our server only runs if you opt-in to the
fallback feature.
Full policy: **presencescheduler.com/privacy**
---
Troubleshooting
---------------
* **Dot still flips to Away**
→ Check the popup: Enabled ✔? Token saved? Click *Fetch schedules* again.
* **Infinite tabs?**
→ Make sure Chrome “Tab Groups Collapse Freezing” isn’t force-closing the
hidden tab; disable that flag if you’re on Canary.
* **Status never shows green on mobile**
→ Mobile Slack has its own idle logic; you need the desktop/web client open
somewhere for presence to propagate.
See the FAQ: **presencescheduler.com/faq**
---
Changelog
---------
* **1.2.0** Per-rule time-zone, red/green status dots in popup, MV3 upgrade.
* **1.1.0** Multi-workspace schedules, personal API token auth.
* **1.0.0** First public release.
---
Support
-------
Email [email protected]
---
© 2025 Presence Scheduler
Statistics
Installs
6
history
Category
Rating
0.0 (0 votes)
Last update / version
2025-07-16 / 1.0.2
Listing languages
en