Migrate to routes mode

Move from legacy Watcher config (provider + sink) to routes.

Routes mode replaces the legacy provider + sink Watcher config.

Before v0.9.0, Watcher used the legacy fields.

Starting with v0.9.0, Watcher uses routes mode.

CrossWatch auto-migrates legacy Watcher config into routes mode.

It lets you scrobble:

  • multiple media servers in parallel

  • to multiple trackers

  • with per-route filters

Legacy config (pre-v0.9.0)

Legacy Watcher config used:

  • scrobble.watch.provider

  • scrobble.watch.sink (sometimes CSV)

  • scrobble.watch.filters

Routes config (v0.9.0+)

Routes mode uses:

  • scrobble.watch.routes[]

Each route is one mapping:

provider(profile) → sink(profile)

What auto-migrates

If routes are missing/invalid and the legacy fields exist:

  • CrossWatch generates R1, R2, … routes

  • sets profiles to default

  • copies legacy filters into each route

  • sets scrobble.watch.routes_migrated_from_legacy = true

Checklist

  1. Open Settings → Scrobble → Watcher.

  2. Confirm you see a Routes section.

  3. Verify each route points to the right provider and sink.

  4. If you use profiles:

    • create the needed provider profiles

    • update each route’s provider_instance / sink_instance

  5. Start Watcher.

  6. Check status in the UI.

Common issues

Routes duplicated

A route is identified by:

provider + provider_instance + sink + sink_instance

If you duplicate that tuple, you will double-scrobble.

Watcher runs but nothing scrobbles

  • Check auth for the selected sink profile.

  • Tighten filters. Empty filters are safest to validate first.

Last updated

Was this helpful?