A bit of a question/problem...

Hello community!
Yesterday ( on FNF to be exact) I did a flight from Lisbon to Madrid as normal, but when the approach controller handed me off to Madrid Tower I was still nowhere near the ILS ‘feather’ but I still contacted tower and I gave the “inbound for landing” message(like in the screenshot below) but instead of responding for example:”Number X,clear to land runway XX” he responded saying:Contact Madrid Appraoch on [frequency]. So I followed ATC’s commands and contacted approach once again. I decided to not say anything to tower and just wait till I’m a bit closer to the runway, but then tower said:”Check ATC tutorials on the forum for using ATC instructions” (or something like that) and then told me to: “descend and maintain 4500feet” which he/she also told me to do earlier on but I didn’t as I was already under the glide slope but this time, to avoid get ghosted,I descended. After that I contacted tower and landed safely.

My question is:
What are you meant to do when Approach tells you to contact tower but then tower tells you to contact Approach?

Also I don’t know who was the controller but they were controlling at about 11:00Z to 01:00Z


Should this be in General? Or ATC possibly? If so, feel free to change, if your a regular or above of course!

Originally you were RV, but by accident you were told to expect vectors for the ILS and that’s why Tower sent you back! DM me for further questions