在JS中检测Mac Spotify播放器何时更改歌曲

时间:2018-09-01 18:04:52

标签: javascript ios node.js swift spotify

使用Node / JS,如何检测Mac Spotify播放器何时更改歌曲?

SpotMenu on this lineSpotifyNotify on this lineSpotify Notifications on this line所示,我知道可以使用Swift完成。

它们都是用Swift / Obj-C编写的,并使用DistributedNotificationCenter并添加观察者。

这可以在Node中完成,还是可以通过Node和Spotify之间的某种Swift或AppleScript桥接来完成?不幸的是,我找不到与DistributedNotificationCenter交互的NPM软件包。

我目前使用spotify-node-applescriptgetTrack()方法在本地检测当前播放的曲目,但是我必须每隔几秒钟运行一次脚本,以便在歌曲更改时对其进行更新。

也许执行此操作的一种方法是创建一个Electron应用程序,然后该应用程序将始终运行并使用systemPreferences.subscribeNotification


This post不同。用来通过Spotify网络API获取当前播放的歌曲。 1)我不想连接到Web API,因为Spotify已经在本地运行。 2)这不会告诉我歌曲何时更改,只会告诉我当前歌曲是什么。

1 个答案:

答案 0 :(得分:0)

您是在寻找Spotify播放时还是在控制Spotify时寻找侦探? 也许尝试一下: https://github.com/andrehaveman/spotify-node-applescript

它实际上是vs代码的扩展,用于控制Spotify。它是在node中编写的,但在applescript的内部使用。

编辑1: 好的,您已经在使用它了。那么您的实际计划是什么?听起来不错。

编辑2 :也许这可以帮助您: https://github.com/lrholmes/spotify-connect-ws

您可以使用套接字来监听更改。 (实际上和您的一样,只是包裹在一个插座中...)