Setting up ZenLocalPoller¶
ZenLocalPoller subscribes to the ZenDRIVE MQTT stream and reacts to new content —
refreshing your rclone mount cache and (optionally) triggering your media servers to
scan.
Where do I get ZenLocalPoller and my MQTT credentials?¶
Your MQTT username and password are provided with your service — check your welcome
email, or open a support ticket.
ZenLocalPoller itself is a single static binary (no dependencies) on Linux: download
the current release (v0.1.0) from the
releases page.
What do I need to connect to the broker?¶
| Setting | Value |
|---|---|
| Broker | mqtt.clearstreamer.com |
| Port | 443 (the broker is reached over WSS / TLS) |
| Topic | s3 (default) |
| Client ID | a unique ID you choose for this poller |
| Username / Password | issued with your service |
| QoS | 2 (default) |
How do I configure it?¶
ZenLocalPoller reads a config.yml. A minimal MQTT section looks like:
mosquitto:
broker: mqtt.clearstreamer.com
port: "443"
client_id: my-unique-poller-id
username: your-mqtt-username
password: your-mqtt-password
topic: s3
tls:
enabled: true
Then point it at your rclone remote (and any media servers) so it knows what to
refresh when events arrive. For every available option — defaults, filtering, and
an AI-assisted setup prompt — see the
Configuration reference. A copy of this reference also ships
with the tool as sample.yml.
Pick a unique client ID
Each poller instance must use its own client_id. Two clients sharing an ID will
repeatedly disconnect each other.
How do I run it?¶
./zenlocalpoller # reads ./config.yml
Run it as a service (systemd, a container, etc.) so it stays connected and keeps your view in sync.
What does it actually do when an event arrives?¶
- Invalidates the matching path in your
rcloneVFS cache (/vfs/refresh) so the new file is visible in your mount right away. - Optionally calls your autoscan-capable media servers (Sonarr, Radarr, Lidarr) to scan just the changed paths.
Do I need a media server to use it?¶
No. The rclone cache refresh is useful on its own for mounted streaming. Media-server triggers are optional extras.
It connects but nothing refreshes — what should I check?¶
- Your
client_idis unique (a duplicate causes constant reconnects). - The path filters in
config.ymlactually match the content you expect. - Your
rcloneremote settings in the config point at the right mount.
If it still doesn't behave, open a support ticket with your (credential-free) config and the poller's log output.
Can I use a different MQTT client instead?¶
Yes. Any standard MQTT client can subscribe to the broker and topic above with your credentials. ZenLocalPoller is just the turnkey option that already knows how to drive rclone and media-server scans.