使用Node / JS,如何检测Mac Spotify播放器何时更改歌曲?
如SpotMenu on this line,SpotifyNotify on this line和Spotify Notifications on this line所示,我知道可以使用Swift完成。
它们都是用Swift / Obj-C编写的,并使用DistributedNotificationCenter
并添加观察者。
这可以在Node中完成,还是可以通过Node和Spotify之间的某种Swift或AppleScript桥接来完成?不幸的是,我找不到与DistributedNotificationCenter
交互的NPM软件包。
我目前使用spotify-node-applescript和getTrack()
方法在本地检测当前播放的曲目,但是我必须每隔几秒钟运行一次脚本,以便在歌曲更改时对其进行更新。
也许执行此操作的一种方法是创建一个Electron应用程序,然后该应用程序将始终运行并使用systemPreferences.subscribeNotification
?
This post不同。用来通过Spotify网络API获取当前播放的歌曲。 1)我不想连接到Web API,因为Spotify已经在本地运行。 2)这不会告诉我歌曲何时更改,只会告诉我当前歌曲是什么。
答案 0 :(得分:0)
您是在寻找Spotify播放时还是在控制Spotify时寻找侦探? 也许尝试一下: https://github.com/andrehaveman/spotify-node-applescript
它实际上是vs代码的扩展,用于控制Spotify。它是在node中编写的,但在applescript的内部使用。
编辑1: 好的,您已经在使用它了。那么您的实际计划是什么?听起来不错。
编辑2 :也许这可以帮助您: https://github.com/lrholmes/spotify-connect-ws
您可以使用套接字来监听更改。 (实际上和您的一样,只是包裹在一个插座中...)