Tidal keeps blocking me due to a "robot on my network"

Roon Core Machine

n/a

Networking Gear & Setup Details

n/a

Connected Audio Devices

n/a

Library Size

n/a

Description of Issue

Apparently Roon is spamming tidal bad enough that it’s tripped a 403 response twice in the last 5 days.

About ready to give roon the boot… are you even an official integration?

What evidence do you have for this?

Do you access Tidal with any other programs from your network?

As for your last question, it does not deserve a response, official or otherwise.

1 Like

Cause & effect; i reinstalled roon core on a new vm on Saturday and was blocked that night. Yesterday I was unblocked; this morning Im blockes again.

Roon is the only software hitting tidal at my home.

I believe the ladt question does deserve clarification; considering the 403 error message mentions inhuman latencies on requests.

Hello @Jason_Mulligan,

Thanks for getting in touch before choosing to give up on Roon entirely. We’d love to help :pray:

Could you please describe a bit more the exact behavior you’re experiencing?

@beka hi, sorry for delay, was gather anecdotal evidence/information. this is what’s transpired:

  1. migrated rooncore vm from proxmox ve host to windows 10 pro for workstations host - same hardware
  2. rooncore vm is ubuntu 20.04 lts x64, running the same host drive, etc., as little change as possible
  3. windows 10 p-f-w is freezing randomly during non-usage hours, aka when i’m sleeping, and rooncore is “paused”, not crashed, it’s as if the host vm has gone to sleep … nothing logs
  4. restarting host win10 p-f-w causes normal init of VMs, and tidal bans me

i’ve checked the roon logs, and there’s nothing that stands out as it being the cause, but the init & ban is deterministic. i’d say either something isn’t queuing properly, or something on the broker/tidal side of things is ignoring a rate limit.

in the past 2 weeks i’ve been banned every other day. tidal support is totally useless. they don’t respond, they don’t answer questions, they just “pass to engineering” and i’m unbanned for a few hours, until I sleep and the machine freezes. microsoft is 100% the cause of the situation, as the software stack is being taken down by the host OS.

hardware is a threadripper 3970x / 128GB ddr4 / multiple TB free on VM m.2; so it’s not resource related.

this is a screenshot of pihole logs during the time period last night where the machine went offline, and I was banned when it came back up - prior to that I had been enjoying about 3 days of streaming since last ban.

Moving rooncore off of the win10 stack appears to be the most logical next move on my part.

Hey Jason, I’m not seeing anything here that indicates a problem with Roon – I think you’ll end up having to chase this one down with TIDAL/Microsoft. Is it possible to run the TIDAL client on your VM and see if you get the same message?

Can you send them to us?

I also need you to fill out the info we ask for in the topic template, it’s difficult to help without having a concrete description of how you use Roon in your home.

1 Like

@kevin the community doesn’t accept uploads of the .txt log files. All 4 variables have been tested present & absent and really the only two factors are the tidal subscription & the host OS going offline for some reason (not logged in system logs afaik).

08/04 11:27:12 Debug: [easyhttp] [7] GET to https://oauthcb.roonlabs.net/2/tidal/refresh?token=CHANGED returned after 10549 ms, status code: 200
08/04 11:27:12 Info: [music/storage] Unloading storage backend /media/music
08/04 11:27:12 Info: [library] releasing 11577 tracks, 2212 auxfiles for storage backend 68500565-e373-4f49-bbba-f171dbadc917 (/media/music)
08/04 11:27:12 Trace: [library] finished with 11577 dirty tracks 845 dirty albums 10520 dirty performers 4537 dirty works 8057 dirty performances 703 dirty genres 2212 dirty auxfiles 68 dirty countries 3 dirty periods 1 dirty forms 1347 dirty places 823 dirty creditroles 372 dirty labels 0 clumping tracks, 0 clumping auxfiles 0 compute tracks, 0 deleted tracks, 0 tracks to (re)load, 0 tracks to retain, 0 auxfiles to (re)load, 0 auxfiles to retain, and 36239 changed objects
08/04 11:27:12 Trace: [library] endmutation in 258ms
08/04 11:27:12 Trace: [identification] album changed out from under us. aborting identification (in _SpinQueue)
08/04 11:27:12 Info: [broker/locations] updating location Tidal:Name=TIDAL:Id=CHANGED
08/04 11:27:12 Debug: [easyhttp] [10] GET to https://internetradio.roonlabs.net/2/api/location?format=msgpack returned after 308 ms, status code: 200
08/04 11:27:12 Trace: [radio/library] got location CA
08/04 11:27:12 Warn: [tidal/http] GET https://api.tidal.com/v1/sessions/CHANGED?countryCode=CA => NotFound 
08/04 11:27:12 Trace: [tidal] transition loginstatus from StartupWithCredentials to TidalError
08/04 11:27:12 Info: [broker/locations] updating location Tidal:Name=TIDAL:Id=CHANGED
08/04 11:27:12 Info: [library] releasing all genres since we have no streaming service

This appears to be the point today when it was banned; logs prior are mostly mount detection and the usual stuff.

the 10 second response seems long, but it’s immediately followed with a 404 on the session.

We need the whole logs folder, can you upload it to Dropbox (or similar) and share it?

Some other thoughts & questions:

  • Are you using a VPN?
  • What’s your network topology? (gear, connection types, firewalls)
  • Does everything work properly if you don’t use a VM (just install on a laptop or PC)?
  • TIDAL account paid-up and in good standing? https://my.tidal.com

@kevin I’m getting blocked because I have a static IP. Network topology is irrelevant. Yes, as I’ve mentioned it’s related to the host OS going into some kind of frozen state which is a full error because the VM isn’t shutdown or put into a ‘saved’ state; it looks like hyper-v is resuming and there’s some kind of stale state.

This should be covered with a test, or if not I’d start there. It’s probable that roon is hammering the refresh token API and ignoring the response, because the broker is giving that 200 and the session is 404; that implies the error is not entirely local.

08/04 11:27:12 Trace: [tidal] transition loginstatus from StartupWithCredentials to TidalError

Why don’t the forums accept the logs as uploads? You need to provide the vehicle if you’re asking for something.

You can use Wetransfer:

  1. zip up the logs folder
  2. upload to wetransfer
  3. click the ellipsis symbol and then “Get link transfer”
  4. paste link here

I reckon if you’re using a VPN service to hide your location this will be relevant, aka if your proxmox is routing your vm’s outgoing internet connections via a VPN tunnel then it is possible that Tidal is picking up your account being accessed from multiple geographic locations, it is fairly normal for streaming services to stop this.

1 Like

@Vin the opposite scenario in play, static ip & many public services pointed at VMs running on the system. A VPN would allow me to bounce away from the ban easily. I considered this during the first few days, but it doesn’t really “scale” or address the root cause.

Considering tidal replies with 403 regardless of client accessing their platform from my static IP, and the only software in my setup that has an init that includes a token refresh is roon… i believe this should be reproducable. I’ve been doing it for 2 weeks, and I’m not interesting in continuing; it behaves like the VM clock has been frozen and out of sync with the host OS*; the log line with the funny “$3.00:00:00” is absent in the roon logs when tidal responds with the 403; pihole doesn’t show anything for the tidal domain preceeding the 403 happening.

  • this is not the case of course, because the log lines show that refresh request & then a session request (404s); I think that refresh is the trigger of things.

This is all conjecture until we see logs or you provide step-by-step instructions to reproduce the issue. And it’s probably more worthwhile to fix the root cause, which is your VM randomly freezing.