2016-05-10 8 views
1

Ich weiß, dass es viele Befehle in AppleScript für Spotify wie die einfache playpause Befehl, aber wie würde ich eine Spielliste Informationen aus Spotify ziehen und einfügen a choose from list? Ich möchte, dass es alle Songs von wo auch immer Sie hören, und fügen Sie sie in eine choose from list, so dass Sie wählen können, welchen Song Sie gerne hören möchten. Ist das überhaupt möglich? Kann ich etwas Ähnliches tun?In Applescript, Wiedergabeliste Informationen von Spotify, und aktivieren/deaktivieren mischen

Wie würden Sie auch das Shuffling aktivieren/deaktivieren?

Gibt es außerdem eine Möglichkeit, Spotify über AppleScript zu durchsuchen?

Ich bin mir nicht sicher, ob einige davon möglich sind, und Google hat derzeit keine Informationen dazu. Weiß jemand, wie man das macht?

+1

Sie könnten über die Verwendung ihrer API sehen ... Ich fand [diese jsfiddle] (http://jsfiddle.net/JMPerez/0u0v7e1b/), die zeigt, wie Spotify suchen. Sie konnten immer sehen, wie Sie mit applescript einen Browser öffnen und ihn an eine "benutzerdefinierte" Seite senden, indem Sie Javascript verwenden, um ein leeres Fenster zu aktualisieren ... aber an diesem Punkt verwenden Sie kaum AppleScript. – Laurel

Antwort

1

Die Spotify-AppleScript-Implementierung verfügt nicht über spezifische Befehle zum Abrufen von Wiedergabelisteninformationen. Sie macht nur "aktuellen Titel" verfügbar, um Informationen über den aktuell wiedergegebenen Titel und "nächsten Titel" zum Abspielen des nächsten Titels anzuzeigen. Sie können diese Einschränkung umgehen, um ein AppleScript-Array zu erstellen, das alle Titel einer aktuellen Wiedergabeliste enthält.

set trackNameList to {} 
set trackIDList to {} 

tell application "Spotify" 
    activate 

    set shuffling to false 
    set repeating to true 
    set sound volume to 0 

    if player state is not playing then 
     playpause 
    end if 

    set trackID to spotify url of current track 
    repeat while trackIDList does not contain trackID 
     set end of trackIDList to trackID 
     set end of trackNameList to name of current track 
     next track 
     delay 1 -- otherwise Spotify misbehaves 
     set trackID to spotify url of current track 
    end repeat 

end tell 

tell me to activate 
set chosenNames to choose from list trackNameList without multiple selections allowed 
set chosenName to (item 1 of chosenNames) as string 

repeat with i from 1 to count of trackNameList 
    set itsName to (item i of trackNameList) as string 
    if itsName is chosenName then 
     exit repeat 
    end if 
end repeat 

set trackID to (item i of trackIDList) as string 

tell application "Spotify" 
    activate 
    set sound volume to 100 
    play track trackID 
end tell 

Es gibt keine AppleScript-Unterstützung für die Suche in Spotify.