Mes: septiembre 2016

Bot de Telegram para Goear

Bot de Telegram para Goear

El día que cerraron Groveshark vi desaparecer con ella un inmensa cantidad de canciones que no llegaría a conocer ,solía pasar el rato haciendo clics en las que recomendaba y casi siempre me gustaban, desde mi punto de vista era un servicio cómodo de usar y con una gran variedad de canciones con buena calidad.

goear

Después de Groveshark conocí Goear y fue como ver un “oasis” entre los otros servicios (Spotify, Google Music,etc), la cantidad de canciones me pareció menor pero normalmente encontraba lo que buscaba y con una calidad aceptable. Si alguno se pregunta el motivo por el que prefiero usar páginas webs del estilo Goear o Groveshark para escuchar canciones es porque que simplemente me gusta el hecho de tener que abrir el navegador, esperar que cargue, ver algún elemento de la web fuera de su sitio(me hace gracia) y eso es todo.

Debido t_logoal bloqueo , que se puede saltar cambiando el DNS, cuando me encuentro fuera de casa y uso la conexión de datos no puedo acceder a las canciones de una forma sencilla, por lo que hice un bot para navegar por Goear desde Telegram sin importar la red a la que estuviera conectado.

 

Acerca del bot

Requisitos

Componentes

El bot se compone de tres partes (aparte de la API de telegram):

  • Una clase que representa al usuario.
  • Una clase que representa la búsqueda.
  • Otra clase que representa la conexión con una base de datos en Sqlite.

La clase usuario hereda las funciones y atributos de búsqueda, por la comodidad de cambiar las preferencias del usuario para futuras búsquedas. La base de datos se utiliza para guardar las preferencias de los usuarios(criterio, canciones por mensaje, etc) y poder restaurarlos si hay un apagón o algo parecido.

Funcionamiento

El funcionamiento es sencillo, pides la canción o el artista que buscas y te mostrará el resultado en un mensaje con opciones de navegación. En el resultado de la búsqueda se divide en trozos cada página, para facilitar la navegación.

Buscando una canción
Haciendo una búsqueda.

Si quieres aplicar un criterio de ordenación envías el comando /criterios para escoger uno.

Escogiendo un criterio
Criterios de ordenación disponibles (los de Goear).

Además puedes cambiar la cantidad de canciones que pueden aparecer en un mensaje con el comando /cantidad X , el cambio actualizará la última búsqueda.

Canciones por mensaje cambiada
Cambio en la cantidad de canciones por mensaje a 3.

Después de varios mensajes de configuración es posible que el resultado de la búsqueda que hiciste se quede arriba, puedes volver a solicitar tu última búsqueda con el comando /ultima_busqueda.

Última búsqueda
Reenvío de la última búsqueda realizada.

Si no sabes que configuración tienes puedes pedirla con el comando /config .

Recibiendo la configuración actual.
Mostrando configuración del cliente.

Aunque también se puede usar para obtener las canciones de Goear pasando el identificador de la canción, en forma de comando y el prefijo risa, por ejemplo: /risa_1e1a96f .El enlace de la canción lo hago más pequeño usando tinyurl, pero se puede usar otro (o ninguno).

Este prefijo lo podéis cambiar en la expresión regular. Otra opción es modificar el código para que tome como canción un comando que no corresponda a ningún criterio,es cuestión de gustos.

Los enlaces de Goear son temporales, por lo que después de un tiempo dejan de funcionar, creo que dejan de hacerlo después de media hora.

En caso de que la versión de escritorio de Goear no funcione el programa usará la versión móvil que no proporciona datos sobre la canción, a pesar de que se podrá seguir utilizando los criterios y funcionaran.

Información de la versión movil de Goear
El bot usa la versión móvil de Goear

Recomiendo que ejecutéis vuestro propio bot con el código que os facilito o el que hagáis partiendo del mío, ya que el mío no siempre estará disponible y mi torpe conexión a Internet puede hacerle perder la cabeza a cualquiera. El argumento para ejecutar el bot es el token proporcionado por el bot father de Telegram: python bot_goear.py TOKEN

Antes de finalizar la entrada me gustaría agradecer el servicio prestado por Goear durante estos años. Me parece una pena el bloqueo impuesto pero si con esto puedo ayudar a otros a seguir disfrutando del servicio estaré satisfecho.

El código está disponible en BitBucket: enlace. Mi bot se llama @telegoear Podéis dejar cualquier duda o sugerencia en los comentarios.

De https://pixabay.com/en/users/Alexas_Fotos-686414/

Por último quiero decir que puedes usar el bot para “regalar” una canción a alguien ya que no podrá saber de que canción se trata hasta que la escuche.

Anuncios