AppleScript: ¿Cómo agregar una canción de Apple Music que se está reproduciendo actualmente a una lista de reproducción?

Tengo un pequeño AppleScript en Alfred que marca la canción que se está reproduciendo actualmente como "Amada", se ve así:

tell application "iTunes"
    set loved of current track to true
end tell

Este script funciona muy bien.

¡Pero! Me gustaría que hiciera una cosa más y no funciona: me gustaría agregar la pista a una lista de reproducción llamada "Amado". Aquí está v2 de la secuencia de comandos:

tell application "iTunes"
    set loved of current track to true
    duplicate current track to playlist "Loved"
end tell

De esta manera, tendría una forma de encontrar estas pistas más adelante (por ejemplo, escucho mucho la radio y me encantaría encontrar esos favoritos más adelante).

Aquí está el mensaje de error que me muestra AppleScript cuando ejecuto v2:

"iTunes got an error: Can only duplicate subscription tracks to library source."

¿Alguna idea si hay una manera de lograr esto?

Algunas advertencias:

  • Me gustaría evitar agregar la pista a mi biblioteca.
  • Si hay una manera de tener una lista de reproducción inteligente que contenga todas las canciones que me encantan (incluso las que no están en mi biblioteca), ¡genial! Sin embargo, por lo que sé, eso no es posible con las listas de reproducción inteligentes.

Respuestas (3)

También me he estado rompiendo la cabeza con este y actualmente, no parece haber ninguna forma de agregar pistas de Apple Music a una lista de reproducción. Es poco intuitivo que no haya una forma predeterminada en AM para acceder a todas las canciones queridas, pero aquí estamos. AM está mejorando seguramente pero lentamente, así que crucemos los dedos.

Mientras tanto, lo que he hecho como solución alternativa es agregar una funcionalidad que guarda la canción en un archivo de texto que se sincroniza con iCloud. De esa manera, puedo ingresar manualmente las canciones siempre que tenga algo de tiempo libre y puedo hacerlo tanto en mi iMac como en mi Macbook.

tell application "iTunes"
    set loved of current track to true
    set songname to current track's name
    set songartist to current track's artist
    set textpath to "~/Library/Mobile\\ Documents/com~apple~CloudDocs/AppleMusicToDo.txt"

    do shell script "echo " & quoted form of songartist & " - " & quoted form of songname & " >> " & textpath

end tell

Parece que tu código funciona si lo usas con canciones que ya están en tu biblioteca. Por lo tanto, si usa algún código AppleScript para agregar la canción a su biblioteca de antemano, su código debería funcionar. Aquí hay algunos AppleScript que se me ocurrieron para agregar una canción a tu biblioteca: Agregar la canción que se está reproduciendo actualmente a Apple Music usando AppleScript Editor

(Gracias por su sugerencia, pero estoy buscando explícitamente una manera de hacer esto sin agregar la pista a mi biblioteca; consulte las "advertencias" en la pregunta anterior).
Ah, lamento ser el tipo que no leyó la pregunta correctamente, pero en teoría, podría modificar mi guión para eliminar la canción de su biblioteca después de agregarla a la lista de reproducción; Creo que la canción que no está en la biblioteca es la razón por la que su script no funciona como se esperaba.
¡Ah, buena idea! Le daré una oportunidad :D

Hay un mejor enfoque:

tell application "iTunes"
    duplicate current track to source "Library"
end tell

(lo saqué de aquí )

Lo usé ahora mismo, funciona bastante bien.

Sin embargo, ¿esto no copiará el archivo?