Bot de Telegram para consultar Universidad de las Ciencias Informáticas Telegram bot to consult information from the University of Computer Sciences

Página creada Marina Sandoval
 
SEGUIR LEYENDO
Bot de Telegram para consultar Universidad de las Ciencias Informáticas Telegram bot to consult information from the University of Computer Sciences
ISSN: 2306-2495 | RNPS: 2343_______________________________________Serie Científica de la Universidad de las Ciencias Informáticas
http://publicaciones.uci.cu                                                           Vol. 14, No. 7, Mes: Julio, 2021, Pág. 82-95

Tipo de artículo: Artículo original

Bot de Telegram para consultar información                                                                           de        la
Universidad de las Ciencias Informáticas

Telegram bot to consult information from the University of
Computer Sciences
Maydalis Hernández Pérez 1* , https://orcid.org/0000-0002-5598-6212
Luis Angel Llull Céspedes 2* , https://orcid.org/0000-0002-3553-4593
1
    Departamento de Informática, Facultad 4, Universidad de las Ciencias Informáticas. mhernandezp@uci.cu
2
    Departamento de Matemática, Facultad 4, Universidad de las Ciencias Informáticas. lallull@uci.cu

* Autor para correspondencia: mhernandezp@uci.cu

Resumen
Telegram es un cliente de mensajería que entre sus múltiples funcionalidades permite la creación de bots conversacionales. Los
bots son sistemas inteligentes que se utilizan para simular la conversación de una persona utilizando lenguaje natural. Estos en su
mayoría son empleados para responder preguntas frecuentes que pueden tener los usuarios. Por lo que; el objetivo del trabajo fue
desarrollar un bot para Telegram que permita a los estudiantes de nuevo ingreso de la Universidad de las Ciencias Informáticas
consultar información de forma rápida y sencilla sobre la universidad. Para el desarrollo de la propuesta se realizó una revisión
bibliográfica; definiendo así los pasos para crear un bot en Telegram y se observaron varios bots permitiendo identificar sus
principales características y su funcionamiento. Como resultado se cuenta con un bot que brinda información relacionada con la
universidad; evitando así; que los profesores o la administración tengan que responder a preguntas frecuentes realizadas por los
estudiantes. Se recomienda la utilización de bots para otras actividades que se realizan en la universidad como: el proceso de
inscripción y el desarrollo de encuestas; ya que; simplifican y reducen el tiempo empleado en la ejecución de estas actividades.

Palabras clave: bots; preguntas frecuentes; Telegram; sistemas inteligentes

Abstract
Telegram is a messaging client that among its multiple functionalities allows the creation of conversational bots. Bots are
intelligent systems used to simulate a person's conversation using natural language. These are mostly used to answer frequently
asked questions that users may have. So that; The objective of the work was to develop a bot for Telegram that allows new
students of the University of Informatics Sciences to quickly and easily consult information about the university. For the
development of the proposal, a bibliographic review was carried out; thus, defining the steps to create a bot in Telegram and
several bots were observed allowing to identify their main characteristics and their operation. As a result, there is a bot that
provides information related to the university; thus avoiding; that teachers or administration must answer frequently asked

                       Esta obra está bajo una licencia Creative Commons de tipo Atribución 4.0 Internacional
                      (CC BY 4.0)
Grupo Editorial “Ediciones Futuro” Universidad de las Ciencias Informáticas. La Habana, Cuba seriecientifica@uci.cu                8
Bot de Telegram para consultar Universidad de las Ciencias Informáticas Telegram bot to consult information from the University of Computer Sciences
ISSN: 2306-2495 | RNPS: 2343_______________________________________Serie Científica de la Universidad de las Ciencias Informáticas
http://publicaciones.uci.cu                                                           Vol. 14, No. 1, Mes: Enero, 2021, Pág. 1-10

questions posed by students. The use of bots is recommended for other activities carried out in the university such as: the
registration process and the development of surveys since; they simplify and reduce the time spent in the execution of these
activities.

Keywords: bots; frequent questions; intelligent systems; Telegram

Recibido: 20/05/2021
Aceptado: 01/07/2021

                                                      Introducción
Actualmente, existen numerosos avances en lo que a nuevas tecnologías se refiere y cada vez se disponen de más
dispositivos para comunicarse y estar en contacto con amigos, familiares o conocidos en todo momento. Estos
avances amplían las formas y posibilidades de comunicación. Uno de los dispositivos más utilizados son los
smartphone o teléfono inteligente los cuales poseen capacidades técnicas interesantes que han propiciado su
aceptación, entre las que se pueden mencionar: lo reducido de su tamaño, su carácter personal y, en especial, una gran
conectividad que le permite acceder en todo momento y lugar a sitios de información y a redes sociales. Esta
condición abre un abanico de oportunidades para visualizar al teléfono inteligente como una herramienta pedagógica
importante para cualquier modalidad educativa (Andérica, 2018) (Organista, 2013).
Los teléfonos inteligentes hoy en día son muy utilizados en la educación ya que estos permiten tanto a profesores y
estudiantes poder consultar información en Internet sin necesidad de tener una computadora. Además, se han
desarrollado diversas aplicaciones con diferentes funciones que apoyan al proceso de enseñanza-aprendizaje ejemplo:
traductores, diccionarios y las aplicaciones de mensajería instantánea o chats. Estas últimas permiten comunicarse con
una o más personas de forma sincrónica es decir en tiempo real e intercambiar archivos digitales como documentos,
videos y audios facilitando así; la comunicación entre los estudiantes y profesores. Entre las aplicaciones de
mensajería instantáneas más utilizadas se encuentra WhatsApp y Telegram (Suárez, 2018).
Telegram posee características comunes de estas aplicaciones: envío bidireccional de mensajes, llamadas, mensajes
por voz, confirmación de envío y lectura, posibilidad de compartir archivos y creación de grupos de usuarios. Sin
embargo, esta aplicación ofrece algunas funcionalidades que son idóneas para estimular la comunicación entre
estudiantes y profesores que otras aplicaciones de mensajería no soportan como son: los canales de comunicación y
los bots conversacionales (Martínez, 2017).

                       Esta obra está bajo una licencia Creative Commons de tipo Atribución 4.0 Internacional
                      (CC BY 4.0)
Grupo Editorial “Ediciones Futuro” Universidad de las Ciencias Informáticas. La Habana, Cuba seriecientifica@uci.cu              83
Bot de Telegram para consultar Universidad de las Ciencias Informáticas Telegram bot to consult information from the University of Computer Sciences
ISSN: 2306-2495 | RNPS: 2343_______________________________________Serie Científica de la Universidad de las Ciencias Informáticas
http://publicaciones.uci.cu                                                           Vol. 14, No. 1, Mes: Enero, 2021, Pág. 1-10

En los canales de comunicación se pueden enviar todo tipo de archivos, enlaces y documentos que pueden ser
visualizados por los usuarios suscritos en este. En el ámbito educativo son utilizados por los profesores como una
herramienta unidireccional de comunicación del docente con los estudiantes. La utilización de estos permite enviar
instantáneamente información digital de manera rápida y eficiente, reforzando el contexto y posibilidades de
ampliación de las explicaciones presenciales que tienen lugar en el aula (Martínez, 2017).
En el caso de los bots conversacionales o chatbots, son sistemas inteligentes que se utilizan para simular una
conversación con una persona utilizando lenguaje natural ya sea hablado o escrito. En el sector de la educación son
considerados como una herramienta que se comunica con el usuario mediante lenguaje natural y que puede actuar
como profesor, estudiante o acompañante del estudiante. Estos pueden ser empleados para realizar diferentes
funciones:
     El desarrollo de encuestas para evaluar la actividad docente.
     Resolución de preguntas frecuentes ayudando a reducir el tiempo empleado en responder a preguntas básicas.
     Prácticas de habilidades y destrezas específicas permitiendo practicar diálogos en el aprendizaje de lenguas.
     Evaluación del aprendizaje de los estudiantes ya que; pueden actuar como evaluadores de ejercicios de
         manera rápida y automática.

Telegram permite a cualquier persona con conocimientos mínimos de informática la creación de bots para esta
plataforma. En la actualidad se han desarrollado varios bots ejemplo: @pronunciationbot, un bot que permite
convertir texto a audio en 84 idiomas distintos, @wikipedia_voice_bot, la mejor forma de consultar Wikipedia de
forma muy rápida y sin salir de Telegram y @AndyRobot, un bot con el que se puede mantener conversaciones en
idioma inglés mejorando el nivel de los usuarios en este idioma. Estos en conclusión permiten agilizar procesos y
pueden funcionar como servicio de atención de veinticuatro horas(Martínez, 2017).
Actualmente en la Universidad de las Ciencias informáticas (UCI) tiene un sitio oficial donde se publican noticias e
información relevante de la universidad, el cual puede resultar de mucha ayuda para los estudiantes de nuevo ingreso.
Sin embargo; a pesar de que este sitio se encuentra a disposición de todos los estudiantes estos prefieren preguntar a
los docentes la información que necesitan; ya que; en ocasiones desconocen que las respuestas de sus inquietudes se
encuentran en este sitio. Esto provoca que los docentes y el personal administrativo tengan que contestar preguntas
repetitivas acerca de la universidad. Por lo que surge la necesidad que la universidad cuente con un bot que permita
consultar información de esta de forma rápida y sencilla.

                       Esta obra está bajo una licencia Creative Commons de tipo Atribución 4.0 Internacional
                      (CC BY 4.0)
Grupo Editorial “Ediciones Futuro” Universidad de las Ciencias Informáticas. La Habana, Cuba seriecientifica@uci.cu              84
Bot de Telegram para consultar Universidad de las Ciencias Informáticas Telegram bot to consult information from the University of Computer Sciences
ISSN: 2306-2495 | RNPS: 2343_______________________________________Serie Científica de la Universidad de las Ciencias Informáticas
http://publicaciones.uci.cu                                                           Vol. 14, No. 1, Mes: Enero, 2021, Pág. 1-10

                                               Materiales y métodos
Se realizó una revisión bibliográfica la cual permitió identificar las ventajas que tiene la utilización de Telegram en la
esfera de la educación, definir cuáles son los pasos que se utilizan para crear un bot en Telegram, así como las
tecnologías más adecuadas para su desarrollo. Además, se observó el funcionamiento de algunos bots de Telegram
con el objetivo de comprender cuáles son sus características más relevantes y su funcionamiento.
Telegram: Telegram es un servicio de mensajería y voz, totalmente gratuita y está vinculado al teléfono móvil.
Además, es multiplataforma es decir dispone de compatibilidad con cualquier navegador web a través de Telegram
Web y se puede utilizar en los sistemas operativos (Windows, macOs, Linux y Android) y cuenta con una versión
portable que no requiere instalación. Además, parte de su software está bajo licencia de software libre, lo que quiere
decir que con los conocimientos adecuados se pueden modificar ciertos elementos, según el interés y necesidades del
usuario, haciéndola aún más accesible y personalizable (Fernández, 2020) (Agüera,2016).
Esta herramienta permite el intercambio de mensajería instantánea entre usuarios. La comunicación entre estos puede
ser mediante llamadas de voz o mensajes, los cuales son notificados al usuario y almacenados o archivados en la
nube, con opción de reenvío, borrado y búsquedas. Además, permite enviar archivos en cualquier formato
(documentos, fotos, multimedia y en cualquier tipo de extensión) con un límite de subida de 1.5 GB y cuenta con la
posibilidad de crear chats secretos (Fernández, 2020) (Agüera, 2016).
También, tiene funcionalidades que otros clientes de mensajería no poseen como: los canales de comunicación y los
bots. En el caso de los canales de comunicación son utilizados para el envío unilateral de contenido hacia los
suscriptores, estos pueden ser públicos (indexados de forma abierta para localizarlos vía buscador) o privados
(requieren de enlace o solicitud) (Fernández, 2020).
Bots de Telegram: son aplicaciones más pequeñas que funcionan dentro de Telegram, de forma automatizada
simulando la interacción humana. Son robots con apariencia de usuarios reales que devuelven información
personalizada, en función de las demandas solicitadas a través de mensajes. Estos están disponibles dentro de la
aplicación y pueden ser localizados a través del buscador de Telegram, esto permite ofrecer y personalizar una
completa variedad de servicios directamente en el móvil sin necesidad de tener que instalar una aplicación, como, por
ejemplo: antivirus que analicen los archivos enviados o recibidos, o bots para modificar contenido y crear códigos QR
(Fernández, 2020).
La interfaz de programación de aplicaciones (del inglés API: Application Programming Interface) para desarrollar
bots de Telegram está disponible en la mayoría de los principales lenguajes de programación, lo que permite que
cualquiera con los conocimientos básicos de programación pueda crear su propio bot (García, 2017).

                       Esta obra está bajo una licencia Creative Commons de tipo Atribución 4.0 Internacional
                      (CC BY 4.0)
Grupo Editorial “Ediciones Futuro” Universidad de las Ciencias Informáticas. La Habana, Cuba seriecientifica@uci.cu              85
ISSN: 2306-2495 | RNPS: 2343_______________________________________Serie Científica de la Universidad de las Ciencias Informáticas
http://publicaciones.uci.cu                                                           Vol. 14, No. 1, Mes: Enero, 2021, Pág. 1-10

Herramientas y lenguaje de programación utilizado para el desarrollo del bot
Telegram Bot API: para la programación del bot, Telegram ofrece una interfaz, llamada Telegram Bot API. Esta es
una interfaz basada en el protocolo seguro de transferencia de hipertexto (del inglés HTTPS: Hypertext Transfer
Protocol Secure) creada para desarrolladores interesados en construir bots para Telegram. El API ayudar a interactuar
con los bots y está diseñado para ocultar toda la sección del protocolo de cifrado MTProto1 (Domínguez, 2016).
BotFather: es el padre de todos los bots, y proporciona tokens únicos para cada uno. BotFather permite crear nuevos
bots o cambiar la configuración de los que ya existen, es decir, llevar a cabo su administración y gestión. Los bots
tienen características diferentes respecto al resto de usuarios, entre los cuales cabe destacar:
       No pueden iniciar conversaciones.
       Sus nombres tienen que acabar en bot.
       No tienen estado de conexión ni marcas de visto.
       Los mensajes antiguos del bot pueden ser eliminados al poco tiempo.

Además, procesan ordenes enviadas mediante un formato que se compone de “/comando [opcional1]
[argumentoOpcional]”. Estos no podrán superar los 32 caracteres y pueden contener letras, número o guiones bajos.
Por último, el nombre del bot se mostrará en los datos de contacto y en otros lugares, y dicho nombre será un nombre
corto, que se utilizará en menciones y enlaces (Domínguez, 2016).
Lenguaje de programación: Python es un lenguaje de programación interpretado e interactivo, capaz de ejecutarse en
una gran cantidad de plataformas. Se desarrolla como un proyecto de código abierto, administrado por PYTHON
Software Foundation. Se centra alrededor de la llamada filosofía Python, que marca unos principios de transparencia
y legibilidad para el código desarrollado. Además, es uno de los lenguajes preferidos empleados del lado del servidor
para crear el backend de un bot ya que garantiza un acceso rápido y fácil a la información y los servicios de la
aplicación para los usuarios (Rodríguez, 2017). Por otro lado, el desarrollo en Python puede resultar muy rápido
gracias a la existencia de múltiples bibliotecas que están disponibles de manera online y gratuita como: las creadas
para el desarrollo de bots: pyAIML, chatterbot y telebot. Esta última es utilizada para el desarrollo del bot ya que;
permite acceder de forma más fácil a la API de Telegram.

1
    es el nombre del protocolo de datos de Telegram.

                       Esta obra está bajo una licencia Creative Commons de tipo Atribución 4.0 Internacional
                      (CC BY 4.0)
Grupo Editorial “Ediciones Futuro” Universidad de las Ciencias Informáticas. La Habana, Cuba seriecientifica@uci.cu              86
ISSN: 2306-2495 | RNPS: 2343_______________________________________Serie Científica de la Universidad de las Ciencias Informáticas
http://publicaciones.uci.cu                                                           Vol. 14, No. 1, Mes: Enero, 2021, Pág. 1-10

                                             Resultados y discusión
Pasos realizados para el desarrollo del bot
Para desarrollar un bot que permita a los estudiantes de nuevo ingreso consultar información de la universidad de
forma rápida y sencilla se definieron tres actividades fundamentales:
      Definir qué información podrá responder el bot.
      Definir el perfil del bot.
      Implementar la lógica del bot.

A continuación, se explica que se realizó en cada una de las actividades definidas:
    1. Definir qué información podrá responder el bot.
En este caso se define que el bot permitirá que los estudiantes puedan consultar las siguientes informaciones:
     Datos generales de la Universidad (fecha de creación, certificaciones, publicaciones, modelo de formación,
         claustro y estructura).
     Información sobre la vida universitaria (cultura, deporte, comunicación, residencia estudiantil, y bienestar
         universitario).
     Grupos de Investigación de la universidad.
     Centros de desarrollo de la universidad.
     Productos desarrollados en la universidad.

Toda esta información se encuentra publicada en el sitio oficial de la universidad https://www.uci.cu/.
    2. Definir el perfil del bot

Lo primero que se realizó fue acceder a la plataforma de Telegram y buscar el bot @BotFather este bot permite crear
otros bots en Telegram. Al iniciar ese bot, se visualizan una lista de varios comandos que permiten crear un nuevo bot
y personalizar sus datos ejemplo: su nombre, la imagen de su perfil, descripción y habilitar la opción de poder añadir
   a grupos. A continuación, se enuncian los comandos utilizados para personalizar el bot y la descripción de estos:
              Tabla 1. Listado de comandos de @BotFather utilizados para personalizar el bot. Elaboración propia.

        Comandos             Descripción
        /newbot              Crea un nuevo bot, pedirá el nombre y lo creará.

        /setname             Cambia el nombre del bot.

                       Esta obra está bajo una licencia Creative Commons de tipo Atribución 4.0 Internacional
                      (CC BY 4.0)
Grupo Editorial “Ediciones Futuro” Universidad de las Ciencias Informáticas. La Habana, Cuba seriecientifica@uci.cu              87
ISSN: 2306-2495 | RNPS: 2343_______________________________________Serie Científica de la Universidad de las Ciencias Informáticas
http://publicaciones.uci.cu                                                           Vol. 14, No. 1, Mes: Enero, 2021, Pág. 1-10

        /setdescription      Cambia la descripción del bot, muy útil para presentarlo y explicar lo que hace.

        /setuserpic          Cambia la imagen de perfil del bot.

        /setjoingroups       Habilita o deshabilita la opción de añadir el bot a grupos.

        /setprivacy          Ajustes de privacidad, si el bot puede ver todos los mensajes o sólo los que lo
                             mencionen.

        /setcommands         Permite definir los comandos que el bot ejecutará.

A continuación, se muestra como quedó el perfil del bot desarrollado:

                                               Figura 1. Perfil del bot UciTeleBot.
Una vez que se envió el nombre del bot, @Botfather solicita un nombre de usuario. Este es el nombre con que se
identifica el bot dentro de los servidores de Telegram, el cual debe acabar siempre en bot. En este caso el nombre de
usuario coincide con el nombre del bot UciTeleBot.
Una vez que se envía el nombre de usuario @Botfather comprueba que este no se encuentre en uso. Al cumplir con
esta condición; el bot fue creado con éxito y @Botfather respondió con un mensaje que estuvo compuesto por dos
aspectos muy importantes:

                       Esta obra está bajo una licencia Creative Commons de tipo Atribución 4.0 Internacional
                      (CC BY 4.0)
Grupo Editorial “Ediciones Futuro” Universidad de las Ciencias Informáticas. La Habana, Cuba seriecientifica@uci.cu              88
ISSN: 2306-2495 | RNPS: 2343_______________________________________Serie Científica de la Universidad de las Ciencias Informáticas
http://publicaciones.uci.cu                                                           Vol. 14, No. 1, Mes: Enero, 2021, Pág. 1-10

     El enlace para iniciar una conversación de Telegram con el bot.
     El token de acceso: este es el código que se necesita para acceder al bot y controlarlo.

Al tener estos elementos el bot ya podía ser utilizado, pero si se abría el enlace y se iniciaba una conversación con el
bot, el bot no respondía. Esto se debía a que no se encontraba implementado ninguna lógica y por tanto era incapaz de
procesar los mensajes que recibía.

    3. Implementar la lógica del bot

Para programar la lógica del bot se utilizó como lenguaje de programación Python, aunque el bot se puede programar
en cualquier lenguaje de programación siempre y cuando se integre a la API de Telegram. Para implementar la lógica
de este se realizaron los siguientes pasos:

Primeramente, se desarrolló un archivo .py en el que se importó la biblioteca telebot, se añade el token del bot para
vincular el fichero con el bot en telegram y se definió una serie de parámetros para que en un .txt se registren todos
los usuarios que van a utilizar el bot. A continuación, se muestra un fragmento de código en el que se evidencia este
paso:

                                        Figura 2. Registro de usuarios que utilizan el bot.

Una vez que se obtuvo la base para enviar y recibir mensaje, se definió cuáles serían los comandos a los que el bot
daría una respuesta según la entrada del usuario. En este caso se puede realizar una analogía entre el término comando
y el término pregunta; por ejemplo, si el usuario pusiera el siguiente comando /misión; lo que el usuario estaría

                       Esta obra está bajo una licencia Creative Commons de tipo Atribución 4.0 Internacional
                      (CC BY 4.0)
Grupo Editorial “Ediciones Futuro” Universidad de las Ciencias Informáticas. La Habana, Cuba seriecientifica@uci.cu              89
ISSN: 2306-2495 | RNPS: 2343_______________________________________Serie Científica de la Universidad de las Ciencias Informáticas
http://publicaciones.uci.cu                                                           Vol. 14, No. 1, Mes: Enero, 2021, Pág. 1-10

intentando saber es: ¿cuál es la misión de la universidad? El primer comando que se definió fue /ayuda ya que; con
este el usuario podrá saber todos los comandos y la información que devolvería cada uno de estos. A continuación, se
listan todos los comandos definidos para el bot y se muestra el fragmento de código en el que se evidencia la función
que permite controlar qué sucederá en caso de que el usuario ingrese /ayuda.

                          Tabla 2. Listado de comandos definidos para UciTeleBot. Elaboración Propia.

    Listado de comandos                     Información que aporta
                                            Permitirá conocer los comandos que dispone el bot para interactuar con él.
    /ayuda
    /datos_uci                              Permitirá conocer datos de la universidad como: fecha de inauguración,
                                            certificaciones, publicaciones y modelo de formación.
    /mision                                 Permitirá conocer cuál es la misión de la universidad.
    /estructura_uci                         Permitirá saber cuál es la estructura de la universidad.
    /claustro_uci                           Permitirá saber cuál es el claustro de la universidad.
    /vida_universitaria                     Permitirá conocer información sobre la vida universitaria (cultura,
                                            deporte, residencia y bienestar universitario).
    /grupos_investigación                   Permitirá conocer información sobre los grupos de investigación de la
                                            universidad.
    /centros_desarrollo                     Permitirá conocer información sobre los centros de desarrollo de la
                                            universidad.
    /productos_uci                          Permitirá conocer información sobre los productos que ha desarrollado la
                                            universidad.

                       Esta obra está bajo una licencia Creative Commons de tipo Atribución 4.0 Internacional
                      (CC BY 4.0)
Grupo Editorial “Ediciones Futuro” Universidad de las Ciencias Informáticas. La Habana, Cuba seriecientifica@uci.cu              90
ISSN: 2306-2495 | RNPS: 2343_______________________________________Serie Científica de la Universidad de las Ciencias Informáticas
http://publicaciones.uci.cu                                                           Vol. 14, No. 1, Mes: Enero, 2021, Pág. 1-10

                                            Figura 3. Función para comando /ayuda.

En    el    fragmento      de    código     se    evidencia     la   utilización    de     la   siguiente     sentencia    @bot.
message_handler(commands=[‘ayuda’]). Con esto se indica que lo siguiente que viene va a controlar el comando
/ayuda. Posteriormente a esto se define la función def comand_ayuda(m) esta función es la que resuelve lo que se
necesita; es decir según el comando que se ejecute devolver la información que se quiere. En primer lugar, esa
función recibe una conversación es decir lo que escribió el usuario. De esta conversación es necesario obtener su
identificador para que el bot pueda responder y esto se realiza de la siguiente manera m.chat.id. Por último, se utiliza
el siguiente comando bot.send-message(m.chat.id, msg, parse_mode=”HTML”) esto lo que permite es enviar la
respuesta al chat que lo solicitó. Para saber cuáles son los distintos comandos del bot con tan solo poner la barra
espaciadora al escribir se evidencian todos los comandos. A continuación, se muestra una imagen que representa esta
característica:

                       Esta obra está bajo una licencia Creative Commons de tipo Atribución 4.0 Internacional
                      (CC BY 4.0)
Grupo Editorial “Ediciones Futuro” Universidad de las Ciencias Informáticas. La Habana, Cuba seriecientifica@uci.cu              91
ISSN: 2306-2495 | RNPS: 2343_______________________________________Serie Científica de la Universidad de las Ciencias Informáticas
http://publicaciones.uci.cu                                                           Vol. 14, No. 1, Mes: Enero, 2021, Pág. 1-10

                                            Figura 4. Comandos del bot UciTeleBot.
En el caso de los demás comandos hay que decir que para poder obtener la información se utilizó Web Scraping. Web
scraping es el proceso de recolectar datos contenidos en páginas web mediante técnicas automatizadas. El web
scraping es la solución intermedia entre la recolección manual de datos (marcando, copiando y pegando textos) y el
acceso automatizado a los mismos con base en un protocolo predeterminado API (Wu, 2019). En este caso fue
necesario para poder obtener la información que se encuentra en la página oficial de la universidad. El procedimiento
para realizar web scraping en la solución fue el siguiente:
    1. Revisar el código fuente de la página web, para buscar la forma en que están organizadas y sobre esa base
         definir rutas.
    2. Escribir un programa que descargue las páginas y que extraiga los datos con base en las rutas definidas en el
         punto anterior.
    3. Procesar los datos obtenidos de la página web de la uci.

A continuación, se explica este procedimiento para obtener en este caso la misión de la universidad desde el sitio de la
universidad:
     Se realizó la consulta al sitio oficial de la universidad uci.cu accediendo específicamente a la página donde se
         encuentra la misión https://www.uci.cu/universidad/mision para analizar su estructura. En este caso se
         determinó que se encontraba en la primera etiqueta del tipo .

                       Esta obra está bajo una licencia Creative Commons de tipo Atribución 4.0 Internacional
                      (CC BY 4.0)
Grupo Editorial “Ediciones Futuro” Universidad de las Ciencias Informáticas. La Habana, Cuba seriecientifica@uci.cu              92
ISSN: 2306-2495 | RNPS: 2343_______________________________________Serie Científica de la Universidad de las Ciencias Informáticas
http://publicaciones.uci.cu                                                           Vol. 14, No. 1, Mes: Enero, 2021, Pág. 1-10

     Se realizó un script, en el lenguaje de programación Python, el cual utilizando la biblioteca request2, realizará
         la petición HTTP a la página web y su respuesta será guardada a través del método get de dicha biblioteca.
         Después, se utiliza la biblioteca BeatifulSoup 3 para la extracción de la información, ya que esta posibilita la
         obtención de estos en las etiquetas .
     Una vez obtenida esa información puede ser utilizada para enviársela al usuario que la solicitó mediante el
         comando /mision.

A continuación, se presenta un fragmento de código que evidencia la aplicación del procedimiento Web Scraping para
poder obtener la misión de la universidad:

                                             Figura 5. Procedimiento Web Scraping.

Una vez que el usuario seleccione el comando /mision la respuesta es la siguiente:

2
 esta biblioteca de Python que permite hacer peticiones HTTP.
3
 es una biblioteca de Python que utiliza un analizador html o xml preinstalado y convierte la página web html o xml en un árbol
que consta de etiquetas, elementos, atributos y valores. Para ser más exactos, el árbol consta de cuatro tipos de objetos,Tag,
NavigableString, BeautifulSoup y Comment. Este árbol se puede consultar utilizando los métodos y propiedades del objeto
Beautiful-Soup que se crea a partir de la biblioteca del analizador.

                       Esta obra está bajo una licencia Creative Commons de tipo Atribución 4.0 Internacional
                      (CC BY 4.0)
Grupo Editorial “Ediciones Futuro” Universidad de las Ciencias Informáticas. La Habana, Cuba seriecientifica@uci.cu              93
ISSN: 2306-2495 | RNPS: 2343_______________________________________Serie Científica de la Universidad de las Ciencias Informáticas
http://publicaciones.uci.cu                                                           Vol. 14, No. 1, Mes: Enero, 2021, Pág. 1-10

                                      Figura 6. Resultado de ejecutar el comando /mision.
De igual forma se realizó todo este procedimiento para cada uno de los comandos establecidos.
                                                     Conclusiones
Se desarrolló un bot para Telegram que permite que los estudiantes de nuevo ingreso de la Universidad de las
Ciencias Informáticas puedan conocer de forma rápida y sencilla información que se encuentra publicada en el sitio
oficial de la universidad. Esto evita que los profesores, trabajadores o administrativos tengan que responder a
preguntas frecuentes realizadas por los estudiantes. Además, se recomienda la utilización de bots para otras
actividades que se realizan en la universidad como: el proceso de inscripción y el desarrollo de encuestas ya que;
simplifican y reducen el tiempo empleado en la ejecución de estas actividades.
                                             Conflictos de intereses
Los autores no poseen conflictos de intereses.

                                          Contribución de los autores
    1. Conceptualización: Maydalis Hernández Pérez, Luis Angel Llull Céspedes.
    2. Curación de datos: Maydalis Hernández Pérez, Luis Angel Llull Céspedes.
    3. Investigación: Maydalis Hernández Pérez, Luis Angel Llull Céspedes.
    4. Software: Maydalis Hernández Pérez, Luis Angel Llull Céspedes.

                       Esta obra está bajo una licencia Creative Commons de tipo Atribución 4.0 Internacional
                      (CC BY 4.0)
Grupo Editorial “Ediciones Futuro” Universidad de las Ciencias Informáticas. La Habana, Cuba seriecientifica@uci.cu              94
ISSN: 2306-2495 | RNPS: 2343_______________________________________Serie Científica de la Universidad de las Ciencias Informáticas
http://publicaciones.uci.cu                                                           Vol. 14, No. 1, Mes: Enero, 2021, Pág. 1-10

    5. Visualización: Maydalis Hernández Pérez, Luis Angel Llull Céspedes.
    6. Redacción – borrador original: Maydalis Hernández Pérez, Luis Angel Llull Céspedes.
    7. Redacción – revisión y edición: Maydalis Hernández Pérez, Luis Angel Llull Céspedes.
                                                        Financiamiento
El trabajo no requirió financiación.
                                                       Referencias
Agüera, H. D., Maroto, J. M., & Aguilar, J. L.-B. (s.f.). El empleo de las redes sociales en la educación y las
         posibilidades que ofrecen los servivios de mensajería instantánea. Propuesta de uso: Caso de Telegram. En: I
         Congreso online sobre La Educación en el Siglo XXI. I Congreso online sobre La Educación en el Siglo XXI:
         Lisette Villamizar Moreno, 2016, 473-479.
Andérica, & Diego, R. Herramienta de Mensajería Instantánea en el Ámbito Educativo. Grado en Ingenería en
         Informática, Universidad de Castilla-La Mancha, Ciudad Real, (2018).
Domínguez, R. J. Aplicación Android para la getsión de equipos deportivos enlazados a un bot de Telegram. Trabajo
         Fin de Máster, Universidad Politécnica de Madrid, Madrid, (2016).
Fernández, G. E. La formación permanente einformal del profesorado mediante “Telegram”. Master Universitario en
         Comunicación y educación en la red, Universidad Nacional de Educación a Distancia, España, (2020).
García, M. J. Bot para Telegram que ejecute aventuras conversacionales. Trabajo Fin de Grado, Universidad de
         Jaén,,Jaén, (2017).
Martínez, X. R., Dafonte, A. G., & García, S. M. Aplicaciones web 2.0 y medios de comunicación social. En:
         Vicerrectorado de Investigación y transferencia de la universidad de Málaga. Innovación docente y uso de las
         TIC en educación. Uso de las aplicaciones móviles de mensajería en la docencia universitaria: Telegram.
         Málaga: UMA Editorial, (2017),
Organista, J. S., McAnally, L. S., & Lavigne, G. El teléfono inteligente (smartphone) como herramienta pedagógica.
         Apertura, (2013), 5(1).
Rodríguez, S. J. Extracción de Información a partir de correos electrónicos usando técnicas de PLN. Trabajo de Fin de
         Grado, Universidad de La Laguna, La Laguna, (2017).
Suárez, B. L. Whatsapp: su uso educativo, ventajas y desventajas. Revista de Investigación en Educación, (2018)
         16(2), 121-135.
Wu, J. Web scraping using Python: A step By Step Guide. [En línea]. (2019). [Consultado el: 19 de enero de 2021]
         Disponible en:
https://towardsdatascience.com/web-scraping-using-python-a-step-by-step-guide-36ca0fb87074

                       Esta obra está bajo una licencia Creative Commons de tipo Atribución 4.0 Internacional
                      (CC BY 4.0)
Grupo Editorial “Ediciones Futuro” Universidad de las Ciencias Informáticas. La Habana, Cuba seriecientifica@uci.cu              95
También puede leer