Announcement

Collapse
No announcement yet.

[Announce] Spotty 4.0 - integrate local library with your Spotify collection (LMS 8+)

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Originally posted by mherger View Post

    You should be able to use any URI as found in the Spotify apps' Share feature, eg. https://open.spotify.com/album/3QVucv8yhMn6grisY8JjZr.
    That's so simple, and it works! Just scanned an NFC tag to play the kids music. This may be giving them too much power...

    Comment


      Maybe this is a stupid question but... Any obvious reason why, from my daughter's iPhone, she does not see the Spotify Connect endpoints (one Boom and one SB2) that I have activated for the plugin?

      Her email (account) is added to my clientID, her account has not been added to the plugin configuration.

      Comment


        Originally posted by gorman View Post
        Maybe this is a stupid question but... Any obvious reason why, from my daughter's iPhone, she does not see the Spotify Connect endpoints (one Boom and one SB2) that I have activated for the plugin?

        Her email (account) is added to my clientID, her account has not been added to the plugin configuration.
        Make sure you're on the same network. Check the settings: there's an option to NOT announce Spotty instances in your network. This usually is activated if it repeatedly fails to start the daemon. In that case only Spotify instances signed in as you would see it. A similar option is available in the Spotify apps. Check that one as well

        What are you running LMS on?
        Michael

        "It doesn't work - what shall I do?" - "Please check your server.log and/or scanner.log file!"
        (LMS: Settings/Information)

        Comment


          Originally posted by mherger View Post

          Make sure you're on the same network. Check the settings: there's an option to NOT announce Spotty instances in your network. This usually is activated if it repeatedly fails to start the daemon. In that case only Spotify instances signed in as you would see it. A similar option is available in the Spotify apps. Check that one as well

          What are you running LMS on?
          Windows 10 64bit, LMS 8.3.0 - 1646406015
          ​​
          Ok, so... I checked and "Don't announce Squeezebox players running in Spotify Connect mode in your network. Check this option if you don't want your Spotify Connect enabled Squeezebox player to show up in all Spotify apps in your network.​" was active on my LMS. I deactivated it, restarted the service... but nothing changed. On my Android Phone and on my iPad (where I'm logged in Spotify with my account) the Spotify Connect enabled players appear as endpoint devices, on my daughter's iPhone they still don't.

          My wife's Android phone, logged to my account, sees the Spotify Connect endpoints with no problem.

          I'm not sure what similar option in the Spotify app you're referring to, could you clarify?

          Comment


            As I mentioned that option could be re-enabled if there was an issue with the announcements. Please check your server.log (and the settings again). If it's been re-enabled due to too many caches, then you'd have to figure out what makes the helper crash.

            The Spotify side options actually might be the opposite of what I thought: it's something like "only show local devices", which would only show devices found through those announcements.
            Michael

            "It doesn't work - what shall I do?" - "Please check your server.log and/or scanner.log file!"
            (LMS: Settings/Information)

            Comment


              Originally posted by mherger View Post
              As I mentioned that option could be re-enabled if there was an issue with the announcements. Please check your server.log (and the settings again). If it's been re-enabled due to too many caches, then you'd have to figure out what makes the helper crash.
              It's not been re-enabled again. And I couldn't find anything in the logs that appears to explaining the problem. Tomorrow I'll activate Spotty plugin debug log, restart the server, check that setting beforehand and then try to connect with my daughter's iPhone. I'll report back.
              The Spotify side options actually might be the opposite of what I thought: it's something like "only show local devices", which would only show devices found through those announcements.
              Oh, yeah, I saw that. Didn't seem relevant (as you mentioned it appears to do the opposite) but I tried with it both on and off and it didn't make a difference.

              EDIT:

              The only suspicious thing (suspicious to me, just because I see the word "error" in there) is this:

              Code:
              [23-03-25 02:03:17.6001] Plugins::Spotty::AccountHelper::renameCacheFolder (147) Trying to rename __AUTHENTICATE__ to
              [23-03-25 02:03:17.6004] Plugins::Spotty::AccountHelper::renameCacheFolder (149) Error: No newId found in '__AUTHENTICATE__'
              [23-03-25 02:03:17.6008] Plugins::Spotty::AccountHelper::renameCacheFolder (149) Backtrace:
              
              frame 0: Slim::Utils::Log::logBacktrace (C:\ProgramData\Squeezebox\Cache\InstalledPlugins/Plugins/Spotty/AccountHelper.pm line 149)
              frame 1: Plugins::Spotty::AccountHelper::renameCacheFolder (C:\ProgramData\Squeezebox\Cache\InstalledPlugins/Plugins/Spotty/Settings/Auth.pm line 187)
              frame 2: Plugins::Spotty::Settings::Auth::cleanup (C:\ProgramData\Squeezebox\Cache\InstalledPlugins/Plugins/Spotty/Settings.pm line 61)
              frame 3: Plugins::Spotty::Settings::handler (/<C:\PROGRA~2\SQUEEZ~1\server\SqueezeSvr.exe>Slim/Web/HTTP.pm line 1171)
              frame 4: Slim::Web::HTTP::generateHTTPResponse (/<C:\PROGRA~2\SQUEEZ~1\server\SqueezeSvr.exe>Slim/Web/HTTP.pm line 933)
              frame 5: Slim::Web::HTTP::processURL (/<C:\PROGRA~2\SQUEEZ~1\server\SqueezeSvr.exe>Slim/Web/HTTP.pm line 728)
              frame 6: Slim::Web::HTTP::processHTTP (/<C:\PROGRA~2\SQUEEZ~1\server\SqueezeSvr.exe>Slim/Networking/IO/Select.pm line 122)
              frame 7: (eval) (/<C:\PROGRA~2\SQUEEZ~1\server\SqueezeSvr.exe>Slim/Networking/IO/Select.pm line 118)
              frame 8: Slim::Networking::IO::Select::__ANON__ (/<C:\PROGRA~2\SQUEEZ~1\server\SqueezeSvr.exe>Slim/Networking/IO/Select.pm line 167)
              frame 9: (eval) (/<C:\PROGRA~2\SQUEEZ~1\server\SqueezeSvr.exe>Slim/Networking/IO/Select.pm line 167)
              frame 10: Slim::Networking::IO::Select::loop (slimserver.pl line 734)
              frame 11: main::idle (slimserver.pl line 89)
              frame 12: PerlSvc::Startup (/<C:\PROGRA~2\SQUEEZ~1\server\SqueezeSvr.exe>PerlSv c.pm line 95)
              frame 13: PerlSvc::_startup (slimserver.pl line 0)
              frame 14: (eval) (slimserver.pl line 0)
              Last edited by gorman; 2023-03-25, 02:12.

              Comment


                Is a firewall up on your Windows?
                Michael

                "It doesn't work - what shall I do?" - "Please check your server.log and/or scanner.log file!"
                (LMS: Settings/Information)

                Comment


                  Originally posted by mherger View Post
                  Is a firewall up on your Windows?
                  I use the built-in firewall on Windows 10. Ports 9000, 9090 and 3483 are open for both TCP and UDP. Devices logged on to my account have no problem seeing the Spotify Connect enabled SB players. It's just my daughter's devices, logged on to her account, that can't. Her account has been added to the app I created to get my Spotify Client ID.

                  Comment


                    Can you try without the firewall? Or at least open 5353/udp and try again.
                    Michael

                    "It doesn't work - what shall I do?" - "Please check your server.log and/or scanner.log file!"
                    (LMS: Settings/Information)

                    Comment


                      Originally posted by mherger View Post
                      Can you try without the firewall? Or at least open 5353/udp and try again.
                      I went to the firewall to open 5353 UDP and found that it's already open for the Vivaldi browser... Vivaldi (mDNS-In) it says... this is my first search result about it: https://www.reddit.com/r/vivaldibrow...er_built_into/

                      Tried allowing spotty.exe through the firewall (all ports), no success. Tried disabling the firewall altogether, no success.

                      Comment


                        Ok, so there could be a conflict between spotty.exe and Vivaldi. I have no idea what it would need mDNS for... is that always open, even when you don't use Vivaldi?

                        We talked about that option in the Spotify app which would "only show local devices" or similar. Can you enable this option for your own app configuration and see whether you still see the Spotty players? If that's not the case, then we definitely have an mDNS (local discovery) issue.
                        Michael

                        "It doesn't work - what shall I do?" - "Please check your server.log and/or scanner.log file!"
                        (LMS: Settings/Information)

                        Comment


                          Originally posted by mherger View Post
                          Ok, so there could be a conflict between spotty.exe and Vivaldi. I have no idea what it would need mDNS for... is that always open, even when you don't use Vivaldi?
                          It's a rule in the Windows firewall. I don't know if that could be the culprit, though. See below.
                          We talked about that option in the Spotify app which would "only show local devices" or similar. Can you enable this option for your own app configuration and see whether you still see the Spotty players? If that's not the case, then we definitely have an mDNS (local discovery) issue.
                          Ok, things that I tried.

                          Opened the Spotify app on my phone, activated the "only show local devices" option. Terminated the app and restarted it. Spotty endpoints were not visible.

                          Deactivated the Vivaldi firewall rule, terminated Spotify app (with "only show local devices" active), restarted the app. Spotty endopoints were not visible.

                          Deactivated the whole Windows firewall, terminated Spotify app (with "only show local devices" active), restarted the app. Spotty endopoints were not visible.

                          As far as I can tell from task manager, there are no Vivaldi processes active in the background. I found an updater service for that browser, I ended its process and retried the whole test described above, it made no difference. With the "only show local devices" option active, the Spotty endpoints were not visible.​

                          I am 100% positive the server and the smartphones are on the same local network (I have a single router). Even tried opening 5353, 9000, 9090 and 3483 ports on the router (which opens them for the whole internet, toward my server), it made no difference.
                          Last edited by gorman; 2023-03-27, 08:56.

                          Comment


                            First of all close those ports on the router immediately!

                            Can you try to run "netstat -na | find "5353"​" in a command window? I'm no longer a Windows user, but that's what a quick search suggests you should be using to figure out whether something was listening on a given port.
                            Michael

                            "It doesn't work - what shall I do?" - "Please check your server.log and/or scanner.log file!"
                            (LMS: Settings/Information)

                            Comment


                              I had to use Powershell with a different command: Get-Process -Id (Get-NetUDPEndpoint -LocalPort 5353).OwningProcess (I leave this here for future reference, other users, etc.)

                              This is the result. The nvcontainer process is a service: NvContainerLocalSystem, described as "Nvidia LocalSystem Container".

                              Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
                              ------- ------ ----- ----- ------ -- -- -----------
                              708 1986 13100 17944 182.77 4940 0 nvcontainer
                              103 11 1296 3000 87.22 29032 0 spotty
                              103 11 1312 2976 88.52 40508 0 spotty​


                              Searched for info on that service, found out it's related to Geforce Experience. Uninstalled that, I can do without it on this machine.
                              Nothing changed. With "only show local devices" Spotify doesn't "see" the Spotty instances that are running and, apparently, listening.

                              After removing the Nvidia service I reran the above command and I got the two Spotty instances (I have two enabled players currently) plus a msedge (Microsoft Edge, the browser... which wasn't even running) process. I terminated the whole process tree (probably it's something Microsoft leaves running to start the browser faster... I user it sometimes, although my default is Firefox). After terminating it wasn't listening anymore, it did not restart by itself at least.

                              But this didn't change a thing. As long as I select "show only local devices", the Spotty instances don't appear. As soon as I remove that option in the Spotify app, the two players appear.
                              Last edited by gorman; 2023-03-27, 22:07.

                              Comment


                                That's really odd. Something's blocking the local announcements. But you've already disabled way more than should be needed, and still it doesn't work. I'm running out of ideas...
                                Michael

                                "It doesn't work - what shall I do?" - "Please check your server.log and/or scanner.log file!"
                                (LMS: Settings/Information)

                                Comment

                                Working...
                                X