Lo que realmente aprecio de Spotify es la buena conectividad. Puede reproducir o controlar música o podcasts en otro dispositivo con solo unos pocos clics.
Gracias a la opción gratuita para configurar el acceso de desarrollador, muchas de estas funciones también se pueden acceder desde NodeRed. Con unos pocos nodos inteligentemente vinculados, puede crear fácilmente su propio "control remoto de Spotify" para (por ejemplo) el tablero.
Por supuesto, las opciones de control no se limitan al tablero. También puede activar la opción de control, por ejemplo, a través de botones conectados u otras opciones. 🙂
Puedes encontrar una primera aproximación a esto en el siguiente artículo.
Requisitos
Artículos útiles:
Para que pueda instalar nuevos nodos, por supuesto, NodeRed ya debería estar instalado.
En los siguientes artículos se describe cómo preparar una RaspberryPi y luego instalar NodeRed en ella.
Los siguientes tres artículos describen lo que se debe hacer para preparar la RaspberryPi:
- RaspberryPi: ¡configuración para nerdiys!
- RaspberryPi – ¡La primera configuración!
- RaspberryPi: controle el RaspberryPi a través de SSH
- NodeRed: instalación de NodeRed en RaspberryPi
Herramienta requerida:
-No-
Material requerido:
En la siguiente lista encontrará todas las piezas que necesita para implementar este artículo.
Inicie sesión en la interfaz de configuración de NodeRed
Antes de que pueda editar su configuración de NodeRed, debe, si está activado, primero iniciar sesión en la interfaz de configuración de NodeRed.
acción de gracias
en primer lugar gracias a gelo2002 por su caudal. El NodeCode que se ofrece a continuación se basa en su código compartido de forma gratuita. Acabo de agregar algunas (creo que útiles) extensiones. Sin embargo, gelo2002 hizo el trabajo principal. 🙂
La información sobre su flujo se puede encontrar aquí:
https://gist.github.com/gelo2002/1727790dfc3f6bac8c5b39f5a952b804
o aquí
https://flows.nodered.org/flow/1727790dfc3f6bac8c5b39f5a952b804
Activar cuenta de desarrollador de Spotify
Para poder controlar las diversas funciones de su cuenta de Spotify, primero debe configurar una cuenta de desarrollador para su cuenta de Spotify. Esto no cuesta nada y se hace con unos pocos clics. 🙂
Para hacer esto, cambie a la página de inicio de su portal de desarrolladores de Spotify. Puedes hacerlo a través del siguiente enlace:
Después de iniciar sesión con los datos de su cuenta, primero debe aceptar o confirmar las "Condiciones".
Luego haga clic en "Crear aplicación"...
...e ingrese un nombre y una descripción adecuada para él. Puedes elegir ambos como quieras, pero por supuesto deben ser razonablemente significativos. 🙂
A continuación, se le redirigirá a la descripción general de esta "aplicación" (así llama Spotify a los accesos de desarrollador que se han configurado). Allí encontrará el "ClientID" y el "ClientSecret" en el lado izquierdo. Necesitará ambos más tarde de lo que ya anotó.
Después de hacer clic en "Editar configuración" en la vista general, se le dirigirá a la vista que se muestra. Allí ahora debe ingresar el "Uri de redirección" apropiado. Este Uri de redirección depende de la dirección de su servidor NodeRed.
¿Es esto, por ejemplo, en la dirección https://servidor.fritz.box accesible, el uri de redirección sería:
https://server.fritz.box:1880/spotify-credentials/auth/callback
Asegúrese de seleccionar el protocolo correcto (es decir, http o https).
Una vez que haya ingresado el enlace correcto, todo lo que tiene que hacer es hacer clic en "Agregar" y (más abajo) en "Guardar".
Insertar código de nodo
Ahora al código de nodo real. En el formulario a continuación, esto incluye el control de las funciones más simples. De modo que puede pausar y continuar la reproducción, seleccionar la pista siguiente o anterior, "desplazarse" en la canción y también ver la portada del álbum.
Como siempre, puedes encontrar el NodeCode en la siguiente parte y también en el repositorio de Nerdiy Git en:
Introduce los datos de acceso a la cuenta en NodeRed
Una vez que haya creado el acceso de desarrollador a su Spotify e insertado el NodeCode, ahora puede cambiar a su configuración de NodeRed. Haga clic en uno de los nodos de Spotify allí y comience a configurar un nuevo acceso allí.
Ahora debe ingresar su ID de cliente en el campo de texto junto a "ClientID" y su secreto de cliente en el campo de texto junto a "Client secret".
Puedes encontrar ambos en el paso anterior en tu acceso de Desarrollador de Spotify.
A continuación, debe ingresar los "Ámbitos" deseados. Los ámbitos representan los servicios que desea controlar desde NodeRed.
Para este flujo aquí puede ingresar los siguientes alcances:
transmisión usuario-seguir-modificar usuario-leer-actualmente-reproduciendo usuario-modificar-reproducción-estado
Una lista completa se puede encontrar en: https://developer.spotify.com/documentation/general/guides/authorization/scopes/
Tan pronto como haya ingresado los alcances, solo tiene que hacer clic en "Iniciar autenticación".
Esto abre una nueva ventana en la que ahora debe confirmar que permite que su NodeRed acceda a su cuenta de Spotify.
Si recibe un mensaje de error en este punto, puede encontrar una solución en la sección "Solución para el error "INVALID_CLIENT: URI de redirección no válida". 🙂
Una vez que hayas confirmado esto, serás redirigido a un sitio web que solo muestra el mensaje corto "spotify: autorizado".
Solución al error "INVALID_CLIENT: URI de redirección no válida"
Encontré la solución al mensaje de error: INVALID_CLIENT: URI de redireccionamiento no válido aquí: https://github.com/pckhib/node-red-contrib-spotify/issues/16
En principio, el error se debe a que la "URI de redirección" no se configuró correctamente antes en la cuenta de desarrollador. Para obtener el URI de redireccionamiento correcto, puede usar el siguiente truco.
Introduzca su URI en el decodificador de URL (https://www.urldecoder.org/) y déjelos decodificar.
La parte marcada en el campo inferior corresponde entonces a la URI de redireccionamiento, que debes ingresar en tu cuenta de Spotify.
La reproducción de Spotify a veces salta o tartamudea
De vez en cuando me pasa que la reproducción en uno de mis dispositivos (no importa cuál) salta o se detiene. A través de las pruebas, descubrí que esto parece estar relacionado con la vinculación de la cuenta de Spotify con servicios externos (por ejemplo, el NodeCode que se presenta aquí).
En retrospectiva, lo explico así: debido a que Spotify quiere mantener sincronizados los datos de reproducción de todos los participantes conectados, puedo imaginar que un participante que responda demasiado lento podría desincronizar esta sincronización.
En pocas palabras: si también observó este error: me ayudó a reiniciar la computadora en la que se ejecuta NodeRed o, en el "peor de los casos", a eliminar el enlace a la cuenta de Spotify nuevamente.
Diviértete con el proyecto.
Espero que todo te haya funcionado como se describe. Si no es así, o si tiene alguna pregunta o sugerencia, hágamelo saber en los comentarios. Si es necesario, lo añadiré al artículo.
Las ideas para nuevos proyectos siempre son bienvenidas. 🙂
PS Muchos de estos proyectos, especialmente los proyectos de hardware, cuestan mucho tiempo y dinero. Por supuesto que hago esto porque lo disfruto, pero si crees que es genial que comparta la información contigo, me encantaría hacer una pequeña donación al fondo del café. 🙂
¿Conseguiste que la transferencia de reproducción a otro dispositivo funcionara? En la penúltima versión, simplemente enviaste estúpidamente la ID del dispositivo y el comando de reproducción a la API TransferMyPlayback; ahora no pasa nada allí.
Hola Steven,
En realidad no lo he probado todavía. ¿Has revisado la API de Spotify para ver si hay alguna información al respecto?
Atentamente
Fabian
Hola fabuloso,
Me preguntaba cómo seleccionas una lista de reproducción o una canción para empezar. Estoy un poco confundido acerca de esto. Parece que de alguna manera ya ha configurado el nodo de Spotify para obtener una lista de reproducción/canción.
Hola Asad,
actualmente uso esto solo para mostrar información de la canción que se está reproduciendo actualmente. La selección de la canción y compañía se realiza a través de la aplicación para teléfono inteligente/escritorio de Spotify. Sin embargo, también es posible hacerlo a través del nodo de spotify. 🙂
atentamente
Fab
Gracias por su respuesta. Estoy un poco confundido en cuanto a cómo habilitaría eso. No parece haber una manera específica de hacer esto. ¿Tienes un tutorial que selecciona la canción a través del nodo de spotify?
gracias,
Asad
Hola Asad,
Desafortunadamente aún no). Pero lo pondré en mi lista e intentaré preparar algo así pronto. 🙂
atentamente
Fab
Gracias por hacérmelo saber.