Actualización del estado del bot de descargar música

No he tenido tiempo para hacer nuevas modificaciones al bot, pero por curiosidad revise las pocas estadísticas que he logrado recopilar. Son justamente estas estadísticas las que me disuaden de hacer mejoras, puesto que implican mucho esfuerzo adicional.

  • Cantidad de usuarios únicos: 580
  • Cantidad de nuevos usuarios por mes: 145
  • Cantidad de respuestas exitosas : 675
  • Cantidad de consultas de información: 45
  • Personas a las que invite personalmente: 3
  • Cantidad de URL correctas: 843
  • Cantidad de solicitudes malformadas: 348
  • Mensajes de spam: 2
  • Usuarios que escribieron mas de un mensaje: 320
  • Usuarios intensivos (mas de 10 mensajes): 30
  • Usuario que mas usa el bot: yo <3

Entre estos datos hay algunas cosas interesantes y desconcertantes. Por ejemplo, siendo que solo he invitado a tres personas, ¿De donde salieron esos 580 usuarios en apenas tres meses?

También es interesante notar que, a pesar de las instrucciones, hay cerca de 348 mensajes que no cumplen los requisitos para funcionar el bot. Muchos de usuarios, luego de un solo intento fallido, no vuelven a usar el bot nunca mas.

Además, se supone que un bot es una maquina que no es atendida a menos que requiera de cierto mantenimiento, dos de esos mensajes fueron intentos de estafa, donde me pedían depósitos a cierto numero de cuenta bancaria.

Después de ver estas cosas, he notado que hacen falta las siguientes cosas, que podrían ser mejoras inmediatas para el bot:

  • Mensajes variables: Actualmente los mensajes del bot están Hard Coded, por lo que para actualizar los mensajes, es necesario modificar el código del bot, para lo cual es necesario detenerlo y reiniciarlo, causando que usuarios poco pacientes pierdan el interés en el.
  • Sistemas de Login: Aunque he creado un sistema que hace que el bot me reporte mediante mensajes en un canal de Telegram, no se guarda nada en la base de datos, razón por la que no puedo obtener unas estadísticas confiables de los eventos que implican a mi bot.
  • Panel de control: Realmente no se si los otros bots lo tengan, todos los que he usado dependen únicamente de la interfaz de chat de Telegram, pero una interfaz web para el administrador suena genial, podría intentarlo.

Desarrollo de Bots: Descargar_musica

El articulo a continuación es una bitácora del desarrollo de un bot o plataforma de bots que actualmente tengo funcionando. Para poder acceder a el se puede usar la siguiente URL: Descargar_Musica

Para comenzar una especie de portafolio, he creado un pequeño bot de Telegram para descargar musica desde YouTube. Para esto, he recurrido a las siguientes tecnologías:

Para comenzar, hacer un bot no es una labor especialmente compleja, la mayoría de los tutoriales hacen un buen trabajo explicando los fundamentos, pero el propósito de hacer un bot no se queda en solo esas cosas.

Con el tiempo me di cuenta de que el modelo inicial realmente era complicado de escalar, por lo tanto, presentaré mi primer propuesta, hecha a punta de tutoriales y extendiéndolo según voy descubriendo las necesidades.

Primeras aproximaciones

El getting started de Grammy es muy sencillo de usar y es mi primer acercamiento, pero necesitaba otros elementos para poder realizar descargas de youtube, asi que investigue mas herramientas:

  • Herramienta para descargar videos de youtube: Youtube-dl
  • Herramienta para convertir videos a mp3: FFmpeg

En este momento, me di cuenta de que tenia un problema entre manos; al menos dos de esas herramientas no son nativas para nodejs.

Por el momento el bot debe quedarse en un simple "hola mundo" del getting started.

Fuera de este inconveniente, el bot tiene que realizar las siguientes tareas:

  • Oír todos los mensajes entrantes y responder según los siguientes patrones:
    • Comando start: El usuario descubre el bot de alguna manera (enlace compartido o encontrado en la búsqueda global de Telegram)
    • Comando sobre mi: El usuario siente interés por el bot y busca mas información sobre el bot y el autor.
    • Detección de URL: El bot debe poder distinguir las URL que el usuario ingrese de los comentarios y de cualquier otro tipo de mensajes
    • Cualquier otro mensaje: Si no se cumple ninguna circunstancia anterior, se responde con algún tipo de consejo

Aparte de estas funciones básicas, el bot también debe poder realizar las siguientes funciones:

  • Almacenar el id y el nombre de los nuevos usuarios
  • Almacenar los mensajes recibidos para posterior estadísticas
  • Almacenar un registro de eventos.

Y por ultimo, debe haber una plataforma de Logging, que aun tengo que decidir como funciona.

Por el momento, dejo esta bitácora hasta aquí, esperando pronto hacer mas avances.

A %d blogueros les gusta esto: