Cómo conectar OCR Space a Botize y automatizar tareas de reconocimiento de texto

OCR Space es un servicio de OCR con el que extraer textos de imágenes.

En su versión gratuita puedes extraer el texto de hasta 25.000 imágenes al mes, con un límite diario de 500 imágenes. Si tus necesidades exceden estos límites puedes optar por uno de sus planes premium.

En esta guía te enseñamos los pasos para conectar el plan gratuito a Botize,  aunque también es válida con cualquiera de sus planes Premium.

Paso 1: Crea una cuenta en OCR Space

Para poder utilizar el servicio comenzamos por crear una cuenta nueva de usuario de OCR Space sin aún no dispones de ella.

Paso 2: Obtén el API Key

Una vez registrado obtendrás tu API Key en el correo que te envía OCR Space.

Paso 3: Conecta OCR Space a Botize

La clave que has recibido es todo lo que necesitas para empezar a automatizar tareas, por lo que el siguiente paso es  acceder a Botize y entrar en la aplicación de OCR Space. Puedes hacerlo desde este enlace: 

https://botize.com/es/app/ocrspace

Una vez dentro haz click en Comenzar a usarla ahora y a continuación en Conectar a OCR Space. Te aparecerá un formulario como el siguiente.

Todo lo que tienes que hacer es pegar el API Key que has recibido en el formulario y pulsar el botón Autorizar.

Con esto tu cuenta ya está conectada a Botize puedes empezar a automatizar tus tareas de reconocimiento de texto.

Cómo obtener las credenciales para automatizar tareas con AliExpress Afiliados

En esta guía aprenderás los pasos para obtener las credenciales de tu cuenta de afiliados de AliExpress y con las que podrás automatizar la búsqueda de productos o la generación de enlaces de afiliado, todo ello de manera automática.

Para poder automatizar este tipo de tareas necesitas solicitar el acceso al programa de afiliados de AliExpress y posteriormente acceso a su API.

Si aún no dispones de una cuenta de afiliados puedes solicitarla accediendo a https://es.aliexpress.com y desde ahí entrando en el apartado Programa de afiliados.

Solicitar acceso al API

Si ya tienes una cuenta pero aún no tienes acceso al API, deberás solicitar por medio de este enlace: https://console.aliexpress.com

PASO 1. Haz clic en «Create App«.

PASO 2. Haz clic en el botón «Click to Apply» de la fila correspondiente a «Affiliates API» para solicitar acceso al API.

Solicitado el acceso al API y transcurrido unos días, recibirás un correo de AliExpress con la confirmación de acceso o, en caso contrario, la razón por la que pudiera haber sido rechazado.

Obtención de las credenciales para utilizar el API

Concedido el acceso al API, obtenemos las credenciales necesarias (App Key, App Secret, Tracking Id, Access Token y Refresh Token) para automatizar tareas con los siguientes pasos.

PASO 3. Accede nuevamente a la consola de AliExpress desde  https://console.aliexpress.com

PASO 4. Haz clic en el botón «Management» de la aplicación que creaste.

PASO 5. Copia el «App Key» y el «App Secret» de tu aplicación.

Para ver el «App Secret» necesitarás hacer clic antes en «View«.

PASO 6. Accede al portal del Programa de afiliados e inicia sesión con tu cuenta.

PASO 7. Haz clic en el apartado «Settings» y dentro de este en «Tracking Id«.

PASO 8. Crea tu Tracking ID o copia el que ya pudieras tener.

PASO 9. Finalmente nos queda por obtener el Access Token y Refresh Token. Para ello haz clic en el siguiente enlace, reemplazando antes el texto APP_KEY por el App Key que obtuviste en el paso 5 de este apartado.

https://oauth.aliexpress.com/authorize?response_type=token&client_id=APP_KEY&sp=ae

PASO 10. Haz clic en el botón «Authorize«.

PASO 11. Copia el Access Token y Refresh Token.

Conecta AliExpress Affiliates a Botize

PASO 12. Dirígete al apartado Aplicaciones de Botize y entra en la aplicación AliExpress Affiliates.

Puedes hacerlo desde este enlace:

https://botize.com/es/app/aliexpress_associates

Una vez dentro haz click en Comenzar a usarla ahora. Te aparecerá un formulario como el siguiente.

PASO 13. Cumplimenta el formulario con los datos obtenidos en esta guía y haz clic en el botón «Autorizar«.

Crea tu primera tarea

Ahora ya puedes poner en funcionamiento tu conexión a AliExpress por ejemplo con cualquiera de las fórmulas ya prediseñadas para extraer productos con enlaces de afiliados que recoge Botize en su web:

https://botize.com/es/app/aliexpress_associates

Cómo incluir Node en tus tareas automáticas

Automatizar tareas no solo trata de unir funcionalidades de servicios y aplicaciones entre sí. En ocasiones necesitamos incorporar cierta lógica, modificar o agregar nuevos datos como parte de una automatización.

Cuando las aplicaciones que vamos a automatizar no contemplan todas nuestras necesidades, la posibilidad de incluir pequeñas piezas de código que cubran esas carencias marca la diferencia entre limitarnos a un número reducido de automatizaciones o poder automatizar prácticamente cualquier proceso que se requiera.

En este blog ya hemos aprendido a incluir pequeñas piezas de código escrito tanto en Python como en PHP, usando para ello soluciones gratuitas y que se ejecutan en la nube, evitando así disponer de nuestros propios servidores y su consecuente mantenimiento.

En esta ocasión veremos como hacer lo propio con código Node. El objetivo es incluir de la manera más sencilla posible, pequeños fragmentos de código escrito por nosotros mismos y que se ejecute en la nube sin ningún coste.

Vas a aprender con un ejemplo cómo incluir código Node en una tarea automática, cómo leer los datos que llegan, modificarlos y entregarlos de vuelta a la tarea. En este ejemplo una tarea automática leerá las publicaciones de un canal de Telegram y las publicará en otro, sirviéndose de Node para modificar el texto original antes de publicarlo en el canal.

Lo que hagamos en este ejemplo con Node no es tan importante como el hecho de aprender con Node a leer los datos de una tarea automática, alterarlos y devolverlos; acciones además comunes a cualquier tarea y necesidad que tengas.

Código Node en la nube

Utilizaremos Google Cloud Functions para crear nuestras funciones de Node y ejecutarlas en la nube.

Si no tienes una cuenta deberás crear una gratuita, con la que podrás ejecutar hasta 2.000.000 de veces al mes el código que programes.

Una vez creada tu cuenta haz clic en «CREAR FUNCIÓN».

A continuación en el campo «Nombre de la función» por un nombre que te ayude a identificar tu nueva función (por ejemplo «Botize»), en el campo «Región» selecciona «europe-west3» y por último selecciona la opción «Permitir invocaciones sin autenticar«.

Haz clic en «Guardar» y seguidamente clic en «Siguiente«.

Esto nos llevará ya al editor de código en Node.

Reemplaza el código de ejemplo por el siguiente:

/**
 * Responds to any HTTP request.
 *
 * @param {!express:Request} req HTTP request context.
 * @param {!express:Response} res HTTP response context.
 */
exports.botize = (req, res) => {
    let message = req.query.message || null;
    
    if ((message == null)) {
        res.status(400).send('');
    }
    else {

  var new_message = message.toUpperCase();

        res.status(200).send({
            "meta":{
                "code":200
            },
            "data":{
                "message":new_message
            }
        });
    }
};

Por último modifica el campo «Punto de entrada» para que tenga el mismo nombre que la función («botize» en este caso, puede cambiarlo por el nombre que consideres más adecuado).

Si examinas el código verás que lo que hace es recibir el parámetro «message», donde estará el mensaje original de Telegram, convertirlo todo a mayúsculas y finalmente devolverlo modificado con el mismo nombre.

Botize podrá trabajar con este y cualquier otro valor que devuelvas dentro del objeto «data».

Igualmente veremos que puedes enviar el parámetro «message» y cualquier otro que necesites desde Botize a la función de Node.

Finalmente haz clic en el botón «Implementar» y tu función estará lista para ser utilizada. 

Nuestra nueva función tiene una dirección URL que nos servirá para invocarla desde Botize.

Para conocer la URL haz clic en la función que has creado y seguidamente clic en la pestaña «Activador».

La URL aparecerá indicada y es la que utilizaremos en Botize para invocar nuestra función.

¿Cómo incluir código Node en una tarea automática?

Lo único que necesitas saber es que una tarea automática se compone de uno o más pasos y que estos se ejecutan en el orden que tú establezcas.

Incluir Node (o cualquier otro lenguaje de programación) no es otra cosa que añadir o intercalar un paso extra en la tarea, justo en el punto en el que lo necesites.

Supongamos la siguiente tarea que puedes ver y utilizar haciendo clic en el enlace.

https://botize.com/task/5550

Como puedes ver, se activa cada hora y si hay una nueva publicación en un canal público determinado, entonces lo envía a un nuevo canal de Telegram.

Dado que hemos dicho que queremos alterar el mensaje original antes de publicarlo, lo que haremos será añadir un nuevo paso justo antes.

Para ello haz clic en el símbolo (+) que aparece al situarte entre ambos pasos. En la versión móvil de Botize este símbolo aparece siempre visible.

Ahora un nuevo paso se ha intercalado y el editor de tareas espera que selecciones una aplicación para él.

Seleccionaremos la aplicación Webhooks.

Entre las distintas operaciones que puedes automatizar con Webhooks, selecciona «Ejecutar una petición GET«.

En el campo URL indicaremos la dirección URL de nuestra función de Node.

En el campo Parámetros GET indicaremos el parámetro message seguido del valor que este tendrá y que va a venir determinado por la etiqueta «Message» de Telegram tal y como se ve en la siguiente imagen.

Terminaremos nuestra tarea haciendo clic en «Guardar cambios» y habremos terminado.

En adelante, cada nuevo mensaje que publique el canal de Telegram de origen, aparecerá publicado en el nuevo canal de acuerdo a los cambios realizados en la función de Node.

Cómo enviar mensajes automáticos en Telegram a contactos, grupos, canales o a ti mismo

Publicar mensajes, imágenes y contenido tanto propio como directamente de otras fuentes, tanto en un chat de un contacto de tu agenda, como en un grupo o canal, sean estos públicos o privados, son tareas que puedes automatizar de principio a fin.

Requiere registrar un bot en Telegram y conectarlo a una tarea automática, en la que se indica tanto el contenido a publicar y la frecuencia a la que debe enviarse, como el chat al que irá dirigido.

En esta guía voy mostrarte una a una las 6 maneras que existen en la actualidad de publicar contenido automáticamente con Telegram, paso a paso y con vídeos para que puedas replicar el funcionamiento.

Escenario: A partir de una lista de mensajes que escribiremos a modo de ejemplo, vamos a crear tareas automáticas que nos permitan enviar estos a contactos de tu agenda de Telegram, a grupos y canales, tanto públicos o privados e incluso a ti mismo.

Aprenderás cómo dado un contenido (que puedes generar tú mismo, obtenerlo o redirigirlo de otras fuentes) puedes desde reenviártelo automáticamente a modo de recordatorio, mantener un grupo o canal siempre actualizado o hasta enviar notificaciones automáticas a los contactos de tu agenda.

Nivel de dificultad: Bajo. Solo se requiere registrar un bot en Telegram y en unos minutos vas a saber cómo hacerlo.

Tiempo de implementación: Aproximadamente 15 minutos.

Aclarar que esta guía no es para aprender a programar la hora de envío de un mensaje concreto. Si es lo que necesitas mantén pulsado el botón de enviar el mensaje unos segundos y Telegram te dejará establecer la fecha y hora de envío.


Registrar un bot en Telegram

Independientemente de dónde vayas a publicar los mensajes automáticos, es necesario que en primer lugar registres un bot en Telegram.

Si ya cuentas con uno puedes aprovecharlo para esta guía. Si no es así, registrar un bot es muy sencillo, abre tu aplicación de Telegram y sigue los pasos de este vídeo que dura menos de un minuto.

Conectar el bot a Botize

Necesitas conectar el bot a una aplicación de automatización. Botize.com lleva ya una década en Internet dedicado a la automatización de tareas y además puedes utilizarlo de manera gratuita.

Conectar el bot a Botize te llevará otro minuto y consiste en indicarle el Token que ya recibiste al crear el bot en el paso anterior. En este otro vídeo puedes ver el proceso paso a paso.

¿Qué tipo de contenido puedo enviar automáticamente a Telegram?

Ahora que tienes tu propio bot ya puedes automatizar todas las publicaciones que necesites.

La frecuencia o fechas de envío, el contenido que se enviará automáticamente y el chat o chats a los que irá dirigido, los vamos a especificar dentro de una tarea automática.

La frecuencia y el contenido lo vamos a personalizar una sola vez para simplificar el proceso. Dejaremos puesta una frecuencia de envío de 1 hora que viene por defecto (cada hora se hará una publicación) y como contenido utilizaremos una lista de 3 mensajes. Tú puedes hacer lo mismo o establecer distintas frecuencias y distintos contenidos para cada caso que quieras cubrir.

El contenido no tiene por qué consistir siempre en tres mensajes, ni tan siquiera hace falta que escribas una lista de ellos.

Esta es solo una de las opciones que permite Botize y que utilizaremos aquí para simplificar el proceso, pero puedes configurar la tarea para que el contenido venga directamente de Twitter, una página de Facebook, una carpeta de imágenes de Dropbox, un canal RSS, WordPress y un largo etcétera de aplicaciones y servicios de Internet.

Como contenido puedes enviar a Telegram tanto mensajes de texto, como enlaces, imágenes, archivos de vídeo y ficheros.

Aquí te dejo un listado de algunas aplicaciones compatibles con Botize y que puedes utilizar en las tareas automáticas que vamos a ver en esta guía para enviar contenido directamente a Telegram.

Enviar un mensaje de una lista

Vamos a crear una tarea automática que va a ejecutarse cada hora. El primer paso que llevará a cabo esta tarea será seleccionar un mensaje al azar de una lista que le proporcionemos.

Hecho esto veremos cómo publicar automáticamente el mensaje seleccionado en el chat de un contacto, un grupo, canal o, a nosotros mismos.

En el apartado «Mis tareas» de Botize, haz clic en el botón «Nueva tarea«.

Este es el editor de tareas, donde vamos a diseñar las automatizaciones para nuestro bot.

Arriba a la izquierda viene establecido por defecto la frecuencia de 1 hora, lo que significa que cuando terminemos nuestra tarea se ejecutará una vez cada hora, o lo que es lo mismo, cada hora la tarea seleccionará un mensaje de la lista que le vamos a dar y lo publicará en el chat de Telegram que indiquemos.

Si quieres cambiar la frecuencia puedes hacer un clic en el texto «cada hora» o dejarlo como viene por defecto.

A continuación vamos a seleccionar la aplicación de «mensajes», que nos servirá para crear una lista con todos los mensajes de ejemplo que vamos a poder enviar a los distintos chats de Telegram.

Tal y como puedes ver en la siguiente imágen, si escribes en la caja de búsqueda el texto «mensajes» aparecerá la aplicación y podrás seleccionarla.

A continuación Botize va a mostrarte las distintas operaciones que puedes hacer con la aplicación de mensajes. Para el caso que nos ocupa vamos a seleccionar la opción «Elegir un mensaje de una lista«.

Una vez seleccionada se muestra un formulario donde vas a poder especificar la lista de mensajes. Lo único que tienes que tener en cuenta es que en el campo «Lista de mensajes» puedes escribir tantos como necesites, uno en cada línea.

En mi caso voy a definir 3: «Mensaje 1», «Mensaje 2» y «Mensaje 3», como puedes ver en la siguiente imagen.

Cuando tengas tu lista de mensajes pulsa el botón de «Continuar», dejando así este primer punto listo y dando paso al siguiente.

Así como en el primer paso seleccionamos la aplicación de mensajes, en este segundo paso vamos a seleccionar la aplicación «Telegram Bot», que utilizaremos para completar la tarea con la publicación en un chat concreto.

Haz clic en el icono de Telegram Bot o bien escribe «Telegram» en la caja de búsqueda como hiciste anteriormente.

Botize te muestra ahora las distintas operaciones que puedes realizar, en este caso con Telegram.

Hasta aquí todos los pasos que has dado sirven para publicar automáticamente en cualquier chat, bien sea en el chat de un contacto de tu agenda, un grupo, canal, etc. 

Únicamente tienes que repetirlos cada vez que quieras crear una nueva tarea de este tipo.

Lo que sigue a continuación son los siguientes pasos, ahora ya específicos, para terminar de enviar el mensaje a un chat determinado. Comencemos con el envío a un grupo público de Telegram.

Enviar automáticamente a un grupo público o privado de Telegram

Cuando Botize te muestra las distintas operaciones que puedes realizar con Telegram, selecciona «Enviar un mensaje a un grupo«.

Vamos a conectar tu tarea al grupo de Telegram (tanto público como privado) donde quieras enviar los mensajes automáticos.

Para ello abre tu aplicación móvil o de escritorio de Telegram, entra en el grupo y añade tu bot como si fuera un miembro más. A continuación dale permisos de administrador.

Vuelve al chat del grupo de Telegram y escribe en él el siguiente mensaje: /start

Este es un mensaje que tu Bot es capaz de identificar y le sirve para conectarse al grupo.

Ahora ya puedes volver a la tarea de Botize y hacer clic en el botón «CONECTAR«, como se muestra en la siguiente imagen.

Al pulsar el botón de conectar, aparecerá en el grupo un mensaje enviado por tu bot que dirá «Hi, I’m Botize!».

La conexión se habrá establecido y tu tarea de Botize tendrá ahora este aspecto.

Si no fuese así y no lograses conectar tu tarea con el grupo de Telegram, al final de la guía tienes un sencillo truco para establecer la conexión.

Ya solo queda que hagas clic en el campo «Texto a enviar» y selecciones el tag «Mensaje de la lista«. 

Ahora ya puedes hacer clic en el botón «Guardar cambios» y tu tarea comenzará a publicar automáticamente los mensajes en el grupo cada hora.

En este vídeo tienes todos los pasos que he seguido para completar la tarea de envío automático a un grupo de Telegram. Recuerda, los mismos pasos sirven tanto si es un grupo público como si es privado.

Puedes utilizar esta tarea sin necesidad de crearla de cero utilizando este enlace: https://botize.com/task/5552

Enviar automáticamente a un canal público de Telegram

Para publicar en un canal público de Telegram seguimos los mismos pasos indicados en el apartado «enviar mensajes de una lista» y al llegar a las opciones de Telegram, selecciona esta vez «Enviar un mensaje a un canal público«.

Vamos a conectar tu tarea al canal de Telegram público donde quieras enviar los mensajes automáticos.

Para ello indica en el campo «Nombre de tu canal» el nombre o bien la dirección del canal donde quieres enviar los mensajes.

Entra en tu aplicación de Telegram y accede al canal privado. Deberás incluir el bot que has creado como un miembro más del canal y darle permisos de administrador.

Por último solo queda que hagas clic en el campo «Texto a enviar» y selecciones el tag «Mensaje de la lista«. 

Ahora ya puedes hacer clic en el botón «Guardar cambios» y tu tarea comenzará a publicar automáticamente los mensajes en el canal público cada hora.

En este vídeo tienes todos los pasos que he seguido para completar la tarea de envío automático a un canal público de Telegram.

Enlace a esta tarea automática: https://botize.com/task/5553

Enviar automáticamente a un canal privado de Telegram

Para publicar en un canal privado de Telegram seguimos los mismos pasos indicados en el apartado «enviar mensajes de una lista» y al llegar a las opciones de Telegram, selecciona esta vez «Enviar un mensaje a un canal privado«.

Vamos a conectar tu tarea al canal privado de Telegram donde quieras enviar los mensajes automáticos.

Para ello abre tu aplicación móvil o de escritorio de Telegram, entra en el canal y añade tu bot como si fuera un miembro más. A continuación dale permisos de administrador.

Vuelve al chat del canal de Telegram y escribe en él el siguiente mensaje: /start

Este es un mensaje que tu Bot es capaz de identificar y le sirve para conectarse al grupo.

Ahora ya puedes volver a la tarea de Botize y hacer clic en el botón «CONECTAR«, como se muestra en la siguiente imagen.

Al pulsar el botón de conectar, aparecerá en el canal un mensaje enviado por tu bot que dirá «Hi, I’m Botize!».

Este mensaje es solo una señal de que la conexión se ha establecido correctamente. Puedes borrar el mensaje del chat si lo prefieres, esto no interferirá en el funcionamiento.

Mientras tanto la tarea de Botize tendrá ahora este aspecto.

Si no fuese así y no lograses conectar tu tarea con el canal privado de Telegram, al final de la guía tienes un sencillo truco para establecer la conexión.

Ya solo queda que hagas clic en el campo «Texto a enviar» y selecciones el tag «Mensaje de la lista«. 

Ahora ya puedes hacer clic en el botón «Guardar cambios» y tu tarea comenzará a publicar automáticamente los mensajes en el canal privado cada hora.

En este vídeo tienes todos los pasos que he seguido para completar la tarea de envío automático a un canal privado de Telegram.

Puedes utilizar esta tarea sin necesidad de crearla desde cero utilizando este enlace: https://botize.com/task/5554

Enviar automáticamente a un contacto de Telegram

Para enviar mensajes automáticamente a un contacto de la agenda sigue los mismos pasos indicados en el apartado «enviar mensajes de una lista» y al llegar a las opciones de Telegram, selecciona «Enviar un mensaje a un chat«.

Vamos a conectar tu tarea al chat del contacto de la agenda al que quieras enviar los mensajes automáticos.

Para ello abre tu aplicación móvil o de escritorio de Telegram y entra en el chat de tu bot.

Dentro del chat, haz clic en el botón de adjuntar (clip) y selecciona la opción «CONTACTO».

Opciones de compartir de Telegram

Busca entre tus contactos a la persona que quieres enviar los mensajes automáticos y selecciónala para compartirla en el chat.

Ahora ya puedes volver a la tarea de Botize y hacer clic en el botón «CONECTAR«, como se muestra en la siguiente imagen.

Al pulsar el botón de conectar aparecerán los distintos chats en los que pueda estar presente tu bot y entre ellos el contacto que has compartido con tu bot.

Selecciona el contacto haciendo clic en él y la tarea de Botize pasará a tener este aspecto.

Ya solo queda que hagas clic en el campo «Texto a enviar» y selecciones el tag «Mensaje de la lista«. 

Ahora ya puedes hacer clic en el botón «Guardar cambios» y tu tarea comenzará a publicar automáticamente los mensajes directamente al contacto que has seleccionado.

En este vídeo tienes todos los pasos que he seguido para completar la tarea de envío automático a un contacto de Telegram.

Enlace a esta tarea automática: https://botize.com/task/5556

Enviarte mensajes automáticos a ti mismo

Para enviarte mensajes automáticamente a ti mismo sigue los pasos indicados en el apartado «enviar mensajes de una lista» y al llegar a las opciones de Telegram, selecciona «Enviar un mensaje a un chat«.

Vamos a conectar la tarea con tu usuario de Telegram.

Para ello abre tu aplicación móvil o de escritorio de Telegram y entra en el chat de tu bot.

Dentro del chat, escribe lo siguiente: /start

Este es un mensaje que tu Bot es capaz de identificar y le sirve para conectarse con tu chat.

Ahora ya puedes volver a la tarea de Botize y hacer clic en el botón «CONECTAR«, como se muestra en la siguiente imagen.

Al pulsar el botón de conectar, aparecerá en el chat un mensaje enviado por tu bot que dirá «Hi, I’m Botize!».

La conexión se habrá establecido y tu tarea de Botize tendrá ahora este aspecto.

Ya solo queda que hagas clic en el campo «Texto a enviar» y selecciones el tag «Mensaje de la lista«. 

Ahora ya puedes hacer clic en el botón «Guardar cambios» y tu tarea comenzará a publicar automáticamente los mensajes directamente al contacto que has seleccionado.

En este vídeo tienes todos los pasos que he seguido para completar la tarea de envío automático de mensajes a tu propia cuenta de Telegram.

Puedes utilizar esta tarea automática sin necesidad de configurarla utilizando desde este enlace: https://botize.com/task/5551

¿Problemas conectando un chat a Botize?

Para enlazar tu tarea automática con un chat de Telegram, únicamente se requiere que escribas el comando «/start» dentro del chat que quieres enlazar y a continuación pulses el botón «Buscar chat» de tu tarea de Botize.

Si la conexión no se establece al pulsar el botón de «Buscar chat«, Botize te mostrará una lista de chats a los que tu bot sí está teniendo acceso.

Puedes optar por conectar el bot a cualquiera de ellos pulsando el botón de «Conectar» que aparece a la derecha de cada uno.

Recuerda que si se trata de un grupo o canal, deberás añadir al bot en él y darle permisos de administrador.

¿Cómo desactivar el envío automático de mensajes?

Si quieres desactivar por un tiempo el envío automático es suficiente con que pauses la tarea de Botize. Las tareas de Botize tienen un botón para pausar o reanudarlas según necesites.

Si quieres desactivar el envío definitivamente puedes hacerlo de dos maneras. Bien puedes eliminar la tarea de Botize, en cuyo caso el envío de mensajes terminará en ese mismo instante, o bien puedes desde Telegram, quitarle los permisos de administrador (en caso de Canales o Grupos), eliminar el bot desde Telegram (ten en cuenta que perderías cualquier otra automatización que tuvieses con este bot) o simplemente bloquear el bot si este fuese de otro usuario y no tienes acceso a él.

¿Cómo enviar contenido desde otras fuentes, aplicaciones o servicios y no mensajes predefinidos?

Si quieres algunos ejemplos concretos, aquí te enseño a configurar una tarea automática para enviar contenido directamente de Google Calendar a Telegram y aquí para publicar los artículos de un canal RSS en un canal de Telegram.

Más tareas ya prediseñadas para el envío a grupos, canales y contactos

En este apartado de Botize tienes un listado de fórmulas que puedes personalizar y pasar a utilizar sin necesidad de crearlas desde cero, incluyendo casos de uso como los que hemos comentado y otros aplicados a servicios específicos de Internet como Google Analytics.

https://botize.com/es/app/telegrambot/telegram-post-bot

Guía para obtener las credenciales para automatizar Facebook Groups

En esta guía aprenderás paso a paso cómo obtener tus credenciales de Facebook para automatizar tareas.

PASO 1. Haz clic en el siguiente enlace https://developers.facebook.com/apps. Te llevará directo a tu cuenta de desarrollador de Facebook y te pedirá que inicies sesión.

  • Si es la primera vez que accedes al portal de Facebook para desarrolladores, primero tienes que registrarte. Si ya lo has hecho, saltarte estos pasos y ve al Paso 2.

1.- Clic en Registrarte

2.- Clic en Siguiente

3.- Verifica tu cuenta mediante un mensaje de texto o una llamada. Una vez recibes el código, introdúcelo en la casilla y haz clic en Verificar.

4.- ¿Cuál de las siguientes opciones te describe mejor? Selecciona la opción Desarrollador.

5.- Ya has creado tu cuenta de desarrollador. Recibirás un correo de Facebook dando la bienvenida. Haz clic en Crear primera app o Sigue al Paso 2.

PASO 2. Clic en Mis apps y vamos a crear una nueva app. Clic en Crear app

A continuación Facebook te pedirá indicar el tipo de aplicación que vas a crear. Selecciona la opción Negocios, dado que esta es la opción para administrar Grupos de Facebook.

A continuación haz clic en el botón «Continuar«.

Te pedirá indicar un nombre para mostrar de la app y un correo electrónico de contacto de la app.

En el apartado Propósito de la app selecciona la opción: Tú o tu negocio y finalmente pulsa el botón Crear app.

Marca la casilla No soy un robot y haz clic en Enviar.

Paso 4: Obtén las credenciales de acceso

Dirígete a Menú y haz clic en Herramientas, luego elige Explorador de la API Graph.

Te llevará a una nueva pantalla donde tienes una columna de opciones a la derecha.

Despliega la opción App de Facebook y selecciona la opción que corresponde al nombre de aplicación que has creado.

Despliega la opción Usuario o página y selecciona la opción Obtener token de acceso de usuario.

Se abrirá un pop-up donde te pedirá que inicies sesión con la cuenta de Facebook que vas a conectar a Botize.

Haz clic en el apartado Agregar un permiso y se abrirá una lista de opciones con los distintos permisos a los que puedes tener acceso.

Haz clic en la opción Events Groups Pages y selecciona publish_to_groups

Tras esta operación tienes ahora un total de dos permisos: public_profile y publish_to_groups.

Haz clic en el botón Generate Access Token.

De nuevo te pedirá que hagas login con tu cuenta de Facebook. Haz clic en Continuar.

Haz clic en el icono de información que está al lado de token de acceso y después clic en Abrir en la herramienta de token de acceso.

Se abrirá una nueva pantalla. Haz clic en Ampliar token de acceso. Probablemente te pida poner tu contraseña para continuar. 

¡Lo conseguiste!

Nota Importante: Actualmente los Token de Acceso sólo son válidos durante 2 meses, así que recuerda volver a repetir estos paso dentro de dos meses para refrescar tu token de Facebook.

Para terminar vamos a obtener los dos últimos datos que necesitaremos.

En el menú superior haz clic en Mis Apps y accede a la aplicación que has creado.

En el menú izquierdo haz clic en Configuración y selecciona Básica.

Copia el App Id y el App Secret. Lo necesitarás en el siguiente paso.

Paso 3: Conecta Facebook a Botize

Dirígete al apartado Aplicaciones de Botize y entra en la aplicación Facebook Groups.

Puedes hacerlo desde este enlace:

https://botize.com/es/app/fgroups

Una vez dentro haz click en Comenzar a usarla ahora y a continuación en Conectar a Facebook Groups. Te aparecerá un formulario como el siguiente.

Indica el App Id (Identificador de la aplicación), App Secret (clave secreta) y el Token de acceso que obtuviste en los pasos anteriores.

Por último indica el nombre que le diste a la aplicación (por ejemplo: «miaplicación») y haz clic en Autorizar.

Paso 4: Crea tu primera tarea

Ya puedes poner en funcionamiento tu conexión a Facebook Groups, por ejemplo con esta fórmula para que cada nuevo post que escribas en Facebook Groups se publique automáticamente en Twitter:

https://botize.com/task/5555

¡Enhorabuena! ¡Ya has configurado tu primera tarea con Facebook Groups!

Cómo reenviar mensajes de Telegram automáticamente

Reenviar mensajes entre grupos, republicar mensajes de un usuario en otro grupo o canal e incluso reenviar mensajes de Telegram hacia otras aplicaciones, son tareas que se pueden automatizar de manera muy sencilla, llevan solo unos pocos pasos y te ahorrarán muchísimo trabajo como verás en esta guía.

De acuerdo a las reglas que establece Telegram, un bot puede leer los mensajes de otros usuarios que se dirijan a él, mensajes que se envían a un grupo en el que el bot está incluido y mensajes que se publican en un canal si el bot es miembro de él, exceptuando los mensajes que envían otros bots por el mismo medio.

En esta guía aprenderás la manera de llevar a cabo todas estas operaciones mediante un caso real, paso a paso y compartiré distintos ejemplos de automatizaciones ya prediseñadas para distintos tipos de necesidades, de manera que puedas incorporarlas sin necesidad de crearlas desde cero.

Entre estos ejemplos incluyo además automatizaciones para reenviar y publicar contenido de Telegram hacia otras plataformas y servicios de Internet.

Escenario: Registrar y diseñar un bot de Telegram que automáticamente reenvíe los mensajes de otros usuarios a un canal o grupo de Telegram distinto, sin necesidad de código ni programación.

Nivel de dificultad: Bajo. No se requiere conocimientos de programación.

Tiempo de implementación: Aproximadamente 15 minutos.


Cómo registrar un bot en Telegram

Antes de empezar a diseñar la automatización es necesario contar con un bot. Este proceso pasa por registrar un nombre dentro de Telegram, operación que no te llevará más que unos pocos minutos.

Abre tu aplicación de Telegram y sigue estos sencillos pasos para registrar tu bot.

Una vez registrado vamos a conectarlo a Botize. Esto te permitirá diseñar todo tipo de automatizaciones para tu bot sin necesidad de programar. Además, conectándolo a Botize podrás seguir usando tu bot con otras aplicaciones si lo deseas e incluso desconectarlo cuando gustes.

Conectarlo a Botize es incluso más fácil que registrarlo, como puedes ver en el siguiente vídeo.

Reenviar mensajes a otro grupo o canal automáticamente

Registrado el bot y conectado a Botize podemos proceder con el diseño de la automatización. Como verás todo se hace desde la web de Botize y no necesitas programar nada.

En primer lugar haz clic en el botón «Nueva tarea» para crear la automatización.

Seguidamente Botize te llevará al editor de tareas, donde te mostrará las principales aplicaciones con las que puedes empezar a crear tu automatización.

Simplemente haz clic en el icono de «Telegram Bot«.

Botize te mostrará las distintas operaciones que puedes automatizar con tu bot de Telegram. De entre todas ellas haz clic en la operación «Si un usuario escribe al bot«.

Esta operación nos vale tanto para que nuestra tarea se accione automáticamente cada vez que un usuario le escriba al bot como cada vez que un usuario escriba en un grupo en el que el bot esté presente, e incluso cada vez que se publique un mensaje en un canal donde el bot esté incluido.

A continuación estarás viendo la siguiente pantalla, donde Botize te da la opción de personalizar el bot para que se active siempre que haya un mensaje de un usuario o solo en los casos en los que el mensaje contenga algún tipo de comando o palabra en específico.

En nuestro caso no tocaremos nada, aunque si quieres un ejemplo aplicado a comandos específicos puedes dejarlo en los comentarios y trataré de cubrir este caso con un nuevo artículo.

Para continuar haz clic en el botón de «Siguiente» y con ello habremos completado el primer paso. Lo que llevamos hecho hasta aquí es una tarea que se va a ejecutar cada vez que el bot vea un nuevo mensaje.

Ahora Botize volverá a mostrarte algunas de las aplicaciones que puedes utilizar para enlazar una nueva acción.

Queremos que el mensaje que el bot ha encontrado se publique en otro grupo o canal de Telegram, por lo que volveremos a hacer clic en el icono de «Telegram Bot«.

Esta vez de entre las distintas operaciones que podemos utilizar, podemos elegir entre publicar un mensaje en un grupo o en un canal. Yo elegiré un canal pero puedes marcar la opción que en tu caso más te interese.

Ahora solo tienes que hacer dos cosas.

En el campo «Nombre de tu canal«, escribir la dirección de tu canal de Telegram.

En el campo «Texto a enviar» escribe el mensaje que quieres publicar. Puedes publicar tal cual el mensaje del usuario, o puedes añadirle algo más.

En mi caso me interesa saber el nombre del usuario que escribió el mensaje originalmente, por lo que el mensaje que yo utilizo es «Mensaje del usuario» seguido del nombre del usuario, su mensaje y, en el caso de que lo haya, la URL del archivo o imagen que el usuario pudiera haber enviado.

Ya solo queda pulsar el botón de «Guardar cambios» y tu tarea estará terminada.

En adelante cada vez que un usuario escriba directamente al bot, o en un grupo o canal donde el bot esté presente, tu bot se encargará de tomarlo y republicarlo en el nuevo canal que has indicado.

En el siguiente vídeo puedes ver todos los pasos que hemos seguido.

Si quieres utilizar esta automatización sin necesidad de crearla, aquí tienes la automatización para reenviar mensajes a otro canal, solo necesitas personalizar el link de tu canal y pulsar el botón «Guardar cambios«.

Reenviar mensajes a más de un canal

El reenvío de mensajes no termina aquí y puedes complementarlo con muchas otras opciones, como por ejemplo republicar o difundir los mensajes en dos o más canales de Telegram.

Estas son fórmulas ya prediseñadas de Botize que puedes instalarte en tu bot. Recuerda que si bien ya están diseñadas y te ahorra el trabajo de crearlas por ti mismo, se espera que las personalices, en este caso indicando los nombres de los canales donde quieres que se republiquen los mensajes.

Republicar mensajes en otro grupo de Telegram

En el ejemplo paso a paso hemos utilizado un canal como destino. Si quieres por el contrario republicar los mensajes en un grupo de Telegram, puedes hacer uso de esta otra fórmula de Botize.

Reenviar solo los mensajes que reúnan ciertas condiciones

Hasta el momento los casos que hemos visto aplican a todos los mensajes. Sin embargo, son más frecuentes los casos en los que queremos reenviar solo algunos mensajes.

Esto también es posible y para ello se hace uso de filtros, que no es otra cosa que un paso intermedio en el que descartamos o no los mensajes de acuerdo a una o varias condiciones, como por ejemplo, que provengan de un determinado usuario, que contengan o no ciertas palabras, etc.

Esta fórmula está diseñada para reenviar solo aquellos mensajes que contengan links.

Reenviar hacia otras aplicaciones y servicios de Internet

Una de las opciones más interesantes por la cantidad de combinaciones y posibilidades que ofrece es la de reenviar los mensajes fuera de Telegram.

En el ejemplo anterior, donde reenviamos solo mensajes que contiene enlaces, bien podría tratarse de enlaces a archivos, imágenes o música que queramos guardar. En este caso, al poder redirigir a otras plataformas, podemos por ejemplo hacer que estos archivos vayan a parar directamente a una carpeta de Dropbox con esta fórmula.

Cualquier aplicación que integra Botize puede utilizarse como destino para dar salida a los mensajes de Telegram, desde reenviarlos a Twitter, hasta reenviarlos por email, guardarlos en una hoja de cálculo o que pasen a verse en un canal de Slack, cualquier combinación es posible.

Si estás interesado en alguna en particular o tienes alguna dificultad para llevar a cabo alguna de estas automatizaciones, déjalo en los comentarios y trataré de ayudarte.

Cómo hacer un backup de los tweets de un usuario

Mantener una copia de todos tus tweets o los de una cuenta de Twitter es una tarea sencilla que puedes automatizar.

Twitter ofrece la posibilidad de descargar todos los tweets de tu cuenta de usuario. Si bien no es un proceso inmediato, puedes solicitarlo desde el apartado de Configuración y privacidad de tu cuenta de Twitter.

El proceso requiere de varios días hasta que Twitter reúne todos los datos y se los proporciona en formato ZIP al usuario, mediante de un enlace de descarga enviado a su dirección de correo electrónico.

Además de ser un proceso por el que se debe esperar varios días para obtener los tweets, solo es aplicable al contenido propio del usuario, no siendo posible descargar los tweets de otras cuentas de Twitter.

En esta guía quiero enseñarte cómo he automatizado la descarga periódica tanto de mis tweets como los tweets de otras cuentas de Twitter. La única condición para poder descargar los tweets de otros usuarios es que estos no tengan protegidas sus cuentas o en su defecto dicha cuenta protegida te haya dado acceso para ver sus tweets.

Escenario: Vamos a automatizar una tarea que mensualmente extraerá los tweets que lleva publicados una cuenta de Twitter y los almacenará en Dropbox.

Aprenderás también cómo de manera muy sencilla puedes almacenar los tweets en otros servicios, como S3, FTP, Excel, MySQL, Elasticsearch, Athena, exportarlos a Excel o enviarlos adjuntos por email.

Nivel de dificultad: Bajo (se requiere haber registrado una cuenta de desarrollador en Twitter).

Tiempo de implementación: Aproximadamente 20 minutos.


Ya sabemos que podemos descargar nuestros propios tweets utilizando la opción que nos ofrece Twitter, con la desventaja de que dicho proceso requiere varios días de espera.

Sabemos también que este proceso solo es válido para nuestras propias cuentas de Twitter, no así las de otros usuarios.

Antes de comenzar los pasos para automatizar todo este proceso, tanto con nuestros tweets como con los de otros usuarios de Twitter conviene mencionar las limitaciones, que también existen, para el método que vamos a seguir.

Limitaciones a la hora de descargar Tweets

En primer lugar Twitter solo permite la descarga de los últimos 3200 tweets de un usuario (cómo máximo), incluidos sus retweets y menciones. No así, los tweets que el usuario haya marcado como «Me gusta», que no vendrán incluidos en el resultado.

Esta limitación viene impuesta por Twitter y afecta principalmente a aquellos usuarios con una importante actividad en Twitter. En la mayoría de los casos, 3200 tweets puede abarcar varios años de publicaciones en Twitter, todas las de una cuenta si esta publica con poca frecuencia o si es de reciente creación, o llegar a abarcar tan solo meses si es una cuenta que frecuentemente publica en Twitter.

La solución para minimizar este problema es automatizar la descarga periódica de nuestros tweets, con mayor o menor frecuencia. En la mayoría de los casos automatizar una descarga mensual de los últimos tweets es más que suficiente y es lo que haremos a continuación.

Por último y antes empezar comentar que este método es válido para tu propia cuenta de Twitter o para cuentas de Twitter que no estén protegidas, es decir, todas aquellas que no tengan el candado, a excepción de las cuentas de Twitter protegidas pero que puedes ver desde la tuya porque el propietario te haya dado acceso.

Proceso para automatizar el backup de tweets

Para esta automatización es necesario que cuentes con lo siguiente:

  1. Una cuenta gratuita de Botize
  2. Una cuenta de desarrollador de Twitter y conectarla a Botize (pasos)

Accede a Botize e inicia sesión.

A continuación ve al apartado de aplicaciones y entra en la aplicación de Twitter, o directamente haz clic en este enlace: https://botize.com/es/app/twitter

En Perfiles deberá aparecer tu cuenta de Twitter, en caso contrario significa que aun no la has conectado a Botize. Sigue estos pasos para conectarla si es tu caso.

Haz clic en el botón Crear nueva tarea y te llevará al editor de tareas donde comenzaremos a crear nuestra automatización.

Lo primero que aparece es la aplicación de Twitter y las distintas operaciones que se pueden automatizar. La lista de operaciones que ofrece Botize es extensa pero para el caso que nos ocupa nos centraremos en la opción «Extrae tweets de un usuario«. Haz un clic sobre ella.

Al seleccionar la opción «Extraer tweets de un usuario» nos aparecerá un formulario con las distintas opciones de configuración que existen.

En nuestro caso únicamente necesitamos indicar en el campo Usuario la cuenta de usuario de la que queremos extraer los tweets. Esta puede ser nuestra propia cuenta de Twitter, pero también una cuenta pública de otro usuario o una cuenta privada pero a la cual tengamos acceso.

En el campo «Número de tweets para intentar recuperar» indicaremos el valor 200, pues es el máximo número de Tweets que Twitter nos permite extraer en una única consulta.

En el campo «Devuelve resultados de un Id menor que o igual al Id especificado» no indicaremos nada, de modo que cada vez que se ejecute la tarea extraerá los 200 últimos tweets más recientes de la cuenta.

Por último, si quisiéramos excluir del resultado los tweets que sean menciones a otros usuarios y los Retweets, marcaremos las dos últimas casillas.


El resultado quedará como se muestra en la imagen, indicando la cuenta de usuario de la cual queramos extraer los tweets.

Pulsa el botón de Siguiente para continuar y Botize te mostrará las distintas aplicaciones con las que puedes conectar Twitter.

Aquí seleccionaremos la aplicación donde guardaremos los tweets.

Hay distintas opciones (MySQL, S3, FTP, Google Drive, Google Spreadsheet, Elasticsearch o Athena entre otras) que puedes seleccionar haciendo clic sobre ellas, pero para este ejemplo usaremos Dropbox.

Haz clic sobre el icono de Dropbox y quedará seleccionada dentro de tu tarea.

Ahora Botize mostrará las distintas operaciones que puedes automatizar con Dropbox, de entre las cuales vamos a seleccionar «Guardar un archivo en Dropbox«.

Seleccionada la opción Botize nos muestra las distintas opciones de configuración, esta vez relacionadas con el modo en que podemos guardar los tweets en Dropbox.

En primer lugar haz clic en URL del archivo a guardar.

Como puedes observar, además de poder escribir una URL, podemos seleccionar la etiqueta «Fichero JSON» de Twitter. Haz un clic en la etiqueta para indicarle a Dropbox que el archivo a guardar es el que nos proporciona Twitter.

Seguidamente especificaremos el nombre de la Carpeta donde guardar el archivo y el Nombre con el que se guardará el archivo. Por ejemplo, indicaremos la carpeta «backups» y el archivo será «backup.json».

Por último marca la casilla «Si hay un conflicto de nombres, permitir a Dropbox modificar el nombre del archivo para evitarlo«. Lo que nos ayudará a que cada grupo de 200 tweets se guarden con un nombre distinto y no se solapen unos a otros.

A continuación haz un clic Siguiente para continuar.

Enhorabuena, tu tarea ya está lista, pero antes hagamos un último ajuste.

Como puedes ver a la izquierda de la tarea, esta viene preconfigurada para ejecutarse cada hora. Lo cual para nuestro caso es demasiado, más si la cuenta de Twitter en cuestión no publica decenas y decenas de tweets cada hora, por lo que la modificaremos para que se ejecute, por ejemplo, cada semana.

Para ello haz un clic en el icono del reloj.

Estas son las distintas opciones de configuración que existen. En nuestro caso solo necesitamos hacer un clic en «Frecuencia de ejecución de la tarea» y seleccionar «cada semana».

Por último haz clic en el botón «Guardar cambios» y la tarea quedará guardada.

A partir de este instante la tarea se ejecutará cada semana, extraerá los últimos 200 tweets del usuario y los guardará en la carpeta de Dropbox que has indicado.

Comentar que cuando nos referimos a «tweets» nos estamos refiriendo a toda la información que Twitter dispone de cada tweet, lo cual incluye además del propio mensaje de 280 caracteres, información relativa a la fecha de publicación, número de likes y RTs recibidos, URLs que se hayan indicado, imágenes, usuarios que puedan estar mencionados, etc, etc.

Toda esta información, en el formato original en el que lo entrega Twitter y sin ningún tipo de alteración es lo que se guarda en este caso en Dropbox.

Guardado de Tweets en otros servicios

Puedes reemplazar el servicio de Dropbox por cualquier otro simplemente editando tu tarea. Elimina el icono de Dropbox y en su lugar selecciona otro servicio.

Existen multitud de servicios donde puedes almacenar tus tweets, como Amazon S3, Athena, Elasticsearch, FTP, MySQL, etc.

En la siguiente dirección de Botize puedes encontrar fórmulas ya prediseñadas para almacenar tus tweets en otros servicios. Solo necesitarás hacer un clic sobre la fórmula que quieras utilizar y personalizarla de acuerdo a tus necesidades.

https://botize.com/en/method/twitter/all_tweets_from_user

Modificar la automatización

Si en algún momento necesitas modificar la automatización, bien sea para cambiar la frecuencia a la que se ejecuta, cambiar la carpeta de Dropbox donde se guarda, etc, puedes hacerlo haciendo un clic en la tarea.

Esto te llevará al editor de tareas y podrás modificar cualquier aspecto.

Pausar o eliminar la automatización

En caso de que quieras detener la automatización o eliminarla por completo, puedes hacerlo desde el apartado «Mis tareas» de Botize.

Una vez estés en «Mis tareas» despliegas las opciones de tu tarea haciendo un clic en la flecha situada a la derecha de la tarea.

Entre otras opciones aparecerá la de Pausar y la de Eliminar.

Pausando la tarea conseguirás que esta deje de activarse automáticamente hasta que decidas reactivarla nuevamente, mientras que eliminándola se borrará la tarea de tu panel de Botize pero los backups que lleves realizados en tu cuenta de Dropbox no se perderán.

Tanto si se te presenta algún problema automatizando tus backups de Twitter como si te gustaría que atendiese algún backup hacia otro servicio o plataforma en particular, puedes dejarlo en los comentarios de esta entrada, si está en mis manos te ayudaré a hacerlo.

Por qué introducir pausas en las tareas automáticas

Simular el comportamiento humano es solo una de las muchas aplicaciones que tiene aplicar pausas o esperas en tus tareas automáticas.

Las pausas en una tarea automática actúan como divisores, permitiendo entender una automatización como la suma dos o más partes, donde el tiempo transcurrido entre la ejecución de cada una tiene un propósito determinado.

Escenario: Implementaremos una tarea automática encargada de seleccionar un texto de una lista que proveamos y lo publique en Twitter cada mañana pero después de haber realizado una pausa que variará entre 1 minuto y 2 horas.

Evitaremos de este modo las publicaciones a la misma hora del día, muy propio de los bots y nos acercaremos a un comportamiento más humano, con publicaciones más o menos frecuentes pero nunca a las mismas horas.

Dificultad: Baja. Para seguir este ejemplo no necesitarás programar pero sí una cuenta de desarrollador de Twitter, que puedes conseguir con estos pasos.

Tiempo de implementación: Aproximadamente 15 minutos.


A diferencia de lo que pueda parecer, introducir pausas en una tarea automática no la ralentiza sino que en los contextos adecuados nos puede aportar todo tipo de utilidades.

En el ejemplo que nos ocupa le da un carácter más natural a nuestras publicaciones, las hace más dinámicas, imprevisibles pero sin perder por ello el control, rompiendo el patrón que siguen la mayoría de bots y que los hacen actuar con un piloto automático que nada les favorece en las redes sociales.

Automatización de recordatorios

Pero las pausas no son sólo aplicables a este contexto. Establecer intencionadamente pausas más largas es una manera muy sencilla de automatizar recordatorios, donde la tarea recibe o genera una información, la guarda durante el tiempo que dure la pausa, pudiendo ser de días, semanas o meses y transcurrido ese tiempo nos la envía, la publica o lleva con ella una acción determinada.

Una aplicación podría ser un bot o una cuenta de Twitter capaz de retener mensajes de sus usuarios y devolverlos transcurrido el tiempo que ellos hayan marcado.

Recuperar y reavivar contenido

La velocidad de las redes sociales convierte a nuestro contenido en volátil. Lo que ahora es noticia deja de serlo rápidamente sólo porque es es empujado por el nuevo contenido que se genera continuamente.

Una estrategia de republicar contenido pasado días o incluso semanas puede rescatar y volver a poner en circulación información que quedó olvidada o eclipsada por distintos eventos con los que compitió en su momento.

Publicaciones automáticas en Twitter sin parecer un robot

Veamos paso a paso un ejemplo de pausas aplicadas a tareas automáticas, en este caso para algo tan común como la publicación de contenido en Twitter, con el objetivo de parecer menos robots y simular un comportamiento más humano.

Accede al apartado de aplicaciones de Botize y selecciona la aplicación «Operaciones para la publicación de texto» o directamente haz clic aquí.

Esta es la aplicación de Botize que nos va a servir para crear un listado de tweets, con el objetivo de que se vayan publicando en Twitter uno al día.

Haz clic en el botón «Crear nueva tarea«.

Estás viendo las distintas operaciones que puedes automatizar. En nuestro caso vamos a hacer un clic en la opción «Elige un mensaje de una lista«.

A continuación en el campo «Lista de mensajes» incluiremos los distintos tweets (uno en cada línea) que queremos que se publiquen durante los próximos días.

Una vez tengas tu lista completa, aunque puedes volver aquí y ampliarla en cualquier momento, haz clic en el botón de Siguiente para continuar.

Ya tenemos nuestra lista de tweets y ahora procederíamos a publicarlos en Twitter, sin embargo antes introduciremos una pausa. Para ello haz clic en el icono de «Tareas de Botize«, como se muestra en la siguiente imagen.

Botize nos permite automatizar muchas operaciones relacionadas con nuestras tareas, como detenerlas o activarlas. En nuestro caso haremos clic en la opción «Hacer una pausa«.

Llegamos al punto clave, donde vamos a establecer la duración de la pausa.

El modo en que lo estableceremos será marcando una duración mínima y una máxima, dejando que Botize realice en cada caso una pausa de duración aleatoria dentro del rango indicado.

Suponiendo que en nuestro caso queremos publicar un tweet todas las mañanas, podemos establecer una pausa que dure entre 10 minutos y 3 horas.

Una vez definas el rango más indicado para tu caso, haz clic en el botón de Siguiente.

Haz un clic en el signo «+» que queda a la derecha de «Hacer una pausa» para habilitar espacio para una automatización más.

Habiendo elegido un tweet de nuestra lista y hecho la pausa correspondiente ya solo nos queda proceder con la publicación en Twitter, por lo que el siguiente paso es hacer un clic en el icono de Twitter.

De entre todas las operaciones que se pueden automatizar con Twitter vamos hacer un clic en «Publicar un tweet«.

Ya solo nos queda indicar cuál será el contenido del tweet a publicar. Para ello selecciona la etiqueta «Mensaje de la lista» dentro del campo Tweet.

Nos queda por definir un último detalle. Si te fijas la tarea está configurada por defecto para ejecutarse cada hora, mientras que nuestro objetivo es que lo haga diariamente, por lo que lo modificaremos haciendo un clic en el primer icono donde tenemos el reloj de nuestro temporizador.

En primer lugar modificaremos el campo «Frecuencia de ejecución de la tarea» para seleccionar «cada día» en lugar de cada hora como venía establecido por defecto.

Ahora, cambiaremos la «Hora de inicio» para indicar que la tarea debe ejecutarse exactamente a las 9:00 AM.

Finalmente y no menos importante, seleccionaremos en «Zona horaria» la zona que corresponda con nuestra ubicación.

Ahora sí, todo está listo para activar nuestra automatización.  Pulsa el botón «Guardar cambios» y la tarea se activará a las 9:00 AM.

¿Se publicará un tweet a las 9:00 AM todos los días? No, ese comportamiento propio de un bot automático es justo lo que queríamos evitar.

La tarea se ejecutará a las 9:00 AM, tomará un tweet de nuestra lista y seguidamente hará una pausa, que durará un mínimo de 10 minutos y un máximo de 3 horas. De modo que el tweet, que lo hemos establecido después de la pausa, se terminará publicando en algún momento entre las 9:10 AM y las 12:00 PM.

El resultado por lo tanto será el de un tweet distinto publicado a una de la mañana distinta durante los próximos días.

Si quieres utilizar esta tarea automática sin necesidad de crearla paso a paso tienes el enlace aquí para instalarla o modificar los textos y duración de la pausa a tu gusto: https://botize.com/task/5542

Si por el contrario has seguido cada paso y has tenido algún problema puedes dejarlo en los comentarios.

Cómo descargar automáticamente vídeos en Twitter de otros usuarios, hashtags o palabras clave

Tener una tarea que continuamente busque vídeos relacionados con un tema, usuario o sobre un hashtag y automáticamente los descargue, no solo nos ahorra el tiempo de hacerlo manualmente sino que nos permite tener todo el contenido que se genera alrededor de él sin tener nisiquiera que acceder nosotros a Twitter a buscarlo.

Para descargar vídeos de Twitter es necesario recurrir a una aplicación de terceros al no existir tal funcionalidad en la App o página web de Twitter. Para la descarga automatizada se requiere además de un servicio que permita programar esta operación de acuerdo a reglas que el usuario defina, como la periodicidad a la que se procederá a buscar los vídeos.

Escenario: Crearemos una tarea automática que buscará Tweets con vídeos de acuerdo a reglas que definiremos, de acuerdo a un determinado hashtag o palabra clave, uno o más usuarios de Twitter o palabra clave, de tal modo que al encontrar vídeos proceda a la descarga de estos y los guarde en una carpeta de Dropbox.

Nivel de dificultad: Medio. Se requiere una cuenta de Dropbox y una cuenta desarrollador de Twitter.

Tiempo de implementación: Aproximadamente 20 minutos.


En este blog hemos visto cómo crear desde un bot de Telegram para descargar vídeos de Twitter hasta una automatización capaz de descargar los vídeos contenidos en los tweets que marcamos con Me gusta.

Ambos métodos requieren por nuestra parte que identifiquemos primero el contenido que queremos descargar, pero, ¿y si pudiéramos también automatizar esto? Te adelanto como ya estarás imaginando que sí.

Descargar automáticamente cualquier vídeo que reúna las reglas que establezcamos es una manera de no tener que estar pendiente de Twitter, al menos para esta tarea y al mismo tiempo conseguir que no se nos pase ningún tweet de valor para nosotros.

Las distintas reglas que podemos establecer son tan variadas como necesidades haya, por lo que te mostraré algunas de ellas con el objetivo de que sirvan además para aprender a establecer las tuyas cada vez que lo necesites.

La búsqueda avanzada de Twitter

Aunque pueda parecer complicado, todo lo que vamos a necesitar hacer es utilizar el buscador avanzado de Twitter y puedes encontrar en https://twitter.com/search-advanced

Este buscador permite encontrar tweets de acuerdo a todo tipo de filtros utilizando un sencillo formulario, con la particularidad añadida de que al realizar una búsqueda genera un tipo de consulta que se puede aprovechar dentro de una tarea automática.

Antes de pasar al diseño de la automatización veamos un ejemplo de búsqueda de vídeos.

En primer lugar accede a https://twitter.com/search-advanced para ver el formulario de búsqueda.

Desde filtrar por palabras o hashtags hasta limitar la búsqueda a un idioma o fechas en particular, el buscador ofrece la posibilidad de buscar de acuerdo a multitud de parámetros y de manera sencilla.

Probemos a realizar una búsqueda con él y veamos qué sucede.

He incluido la palabra robots y excluido la palabra cocina.

El resultado como ya esperábamos es una relación de tweets que contienen la la palabra robots y en ninguno de ellos aparece la palabra cocina.

Sin embargo lo que nos interesa para nuestra automatización es la consulta que ha dado como resultado nuestra búsqueda y que podemos ver en la siguiente imagen.

Lo que tenemos es nuestra búsqueda convertida en consulta y esto mismo es lo que vamos a poder copiar y pegar en nuestra automatización para lograr el mismo resultado.

El proceso por lo tanto consistirá en realizar la búsqueda en Twitter, todo lo compleja y completa que necesitemos para luego copiar la consulta que dé como resultado en nuestra tarea.

Búsqueda de vídeos en Twitter

Hay un filtro que el buscador de Twitter no contempla y es la posibilidad de buscar exclusivamente tweets que, además de lo que indiquemos, contengan vídeos.

Algo que necesitaremos para que nuestra automatización no pierda tiempo con tweets donde no haya vídeos que descargar.

El truco para conseguirlo es añadir al final de la consulta lo siguiente: filter:native_videos

Ahora sí el resultado se adecua más a lo que necesitamos.

Y hasta aquí todo lo que necesitas saber con respecto al buscador de Twitter, adaptarlo a tus necesidades y lograr que sólo devuelva vídeos.

Cómo conectar Dropbox a Botize

Saltemos a Dropbox. Si aún no tienes tu cuenta conectada a Botize accede al apartado de aplicaciones de Botize y haz un clic en «Automatizar tareas con Dropbox«.

Al hacer clic te llevará a la sección de Dropbox que tiene Botize. Una vez allí haz clic en el botón «Comenzar a usarla ahora«.

En este momento Botize te redirigirá a Dropbox, donde tendrás que iniciar sesión con la cuenta que quieras utilizar.

Inicia sesión y Dropbox te redirigirá de nuevo a Botize, donde verás que tu perfil ya está conectado.

Ve a tu cuenta de Dropbox y fíjate que por el hecho de haber conectado Botize se ha creado la carpeta Aplicaciones y dentro la carpeta Botize.

Botize solo tiene acceso a esta carpeta y no le es posible ver o trabajar con ningún archivo que esté fuera de ella.

Ahora tu cuenta de Dropbox está conectada a Botize y puedes automatizar tareas con este servicio.

Automatización de la tarea paso a paso

Para comenzar nuestra tarea necesitarás como comentábamos una cuenta de desarrollador de Twitter que puedes conseguir con estos pasos.

Inicia sesión en https://botize.com y en el apartado Mis tareas haz clic en el botón Nueva tarea.

Botize te redirigirá al editor de tareas donde te mostrará en primer lugar algunos de los servicios con los que empezar tu automatización.

Nuestra tarea debe comenzar obteniendo los tweets de acuerdo a la búsqueda que necesitemos, por ello haremos un clic en el icono de Twitter.

Ahora de entre las distintas operaciones que podemos automatizar con Twitter seleccionaremos «Si hay nuevos tweets de una búsqueda«.

Por último solo tenemos que indicar en el campo Buscar la consulta que hemos obtenido del buscador de Twitter.

Pulsamos el botón Siguiente y Botize volverá a mostrarnos un listado de servicios con los que continuar automatizando más acciones.

Lo que queremos hacer a continuación es guardar el vídeo del tweet en una carpeta de Dropbox, por lo que el siguiente servicio que hemos de seleccionar es Dropbox.

De entre las operaciones que podemos automatizar esta vez elegiremos «Guardar un archivo en Dropbox«.

Todo lo que tendremos que hacer es indicar la etiqueta «URL de la imagen/Vídeo» en el campo «URL del archivo a guardar«. En el campo «Carpeta donde guardar el archivo» indicaremos el nombre de la carpeta que hayamos creado y finalmente marcaremos la casilla «Si hay un conflicto de nombres, permitir a Dropbox modificar el nombre del archivo para evitarlo».

Ahora haz clic en el botón «Guardar cambios» y tu tarea estará lista para empezar a trabajar.

A partir de este momento cada hora la tarea se activará, descargará el siguiente posible vídeo que se haya publicado en Twitter y volverá a iniciarse transcurrida otra, así sucesivamente.

Eliminar o pausar la tarea

Cuando lo necesites puedes tanto eliminar como pausar la tarea que acabamos de crear.

Para ello haz clic en el apartado «Mis tareas» del menú superior que tienes en la web de Botize.

En la tarea que has creado haz clic sobre el icono de la flecha que tiene a la derecha y se desplegarán distintas opciones.

Pulsando el botón Pausar la tarea se detendrá pero podrás reanudarla nuevamente o hacerle cualquier ajuste si lo necesitas (cambiar la carpeta donde se guardan los vídeos, reemplazar Dropbox por otro servicio, etc).

Pulsando sobre el botón Eliminar la tarea se eliminará por completo pero los datos, en este caso los vídeos que ya fueron descargados, permanecerán en tu cuenta de Dropbox.

Ahora ya has aprendido a automatizar una tarea que manualmente requiere un tiempo considerable. Recuerda que en cualquier momento puedes editar la tarea y actulizar la consulta de búsqueda si lo necesitas.

Cada vez que guardes los cambios la tarea se reconfigurará para continuar descargando vídeos de acuerdo a las nuevas indicaciones que le hayas dado.

Si se te ha presentado alguna duda o problema puedes dejarlo en los comentarios de esta entrada.

Cómo incluir código PHP dentro de tus tareas automáticas

Incluir tus propios scripts de PHP dentro de una tarea automática, te permite acceder e interactuar con tus datos, alterando el comportamiento de la tarea de acuerdo a tus necesidades.

Para poder ejecutar PHP u otro lenguaje dentro de una tarea es necesario incluir en aquellos puntos de la tarea donde se requiera, llamadas al servidor donde resida el código PHP. Cada una de estas llamadas pueden incluir parámetros e información de la propia tarea, lo que habilita al script a trabajar y responder de acuerdo a ellos, pudiendo incluso alterar el flujo y el resultado final de la tarea.

Escenario: Aprenderás a crear un bot de Telegram que capture los mensajes que recibe de los usuarios, se los envíe a un script tuyo en PHP que podrá calcular el número de caracteres que tiene dicho mensaje y lo responderá el bot.

Nivel de dificultad: Medio. Requiere conocimientos mínimos de PHP, un servidor donde alojar el script que crearemos y haber registrado un bot de Telegram.

Tiempo de implementación: Aproximadamente 30 minutos.

Flujo de la automatización

La automatización que vamos a crear sigue el esquema básico de una tarea, solo que en un punto determinado introduciremos una llamada al script que haremos en PHP. Esta llamada se lleva a cabo como veremos por medio de un Webhook.

Creación de la tarea automática

Inicia sesión en https://Botize.com para crear la tarea. Necesitarás una cuenta gratuita que puedes crear desde https://botize.com/join

Una vez dentro dirígete al apartado de Apps del menú principal y selecciona la aplicación Telegram Bot, o haz clic directamente aquí: https://botize.com/es/app/telegrambot

Como puedes ver en Perfiles ya tengo mi Bot conectado a Botize. Si no es tu caso puedes registrar un bot y conectarlo a Botize siguiendo estos pasos.

Para crear la tarea haz un clic en el botón «Crear nueva tarea» y Botize te redirigirá al editor de tareas.

A continuación Botize mostrará las distintas operaciones que puedes automatizar con Telegram Bot. Elige la opción «Si un usuario escribe al bot«, indicando así que queremos que la tarea se active cada vez que un usuario se dirija a nuestro bot.

Los parámetros que vienen por defecto en la opción que hemos elegido son los correctos para el caso que nos ocupa, por lo que sin necesidad de hacer ningún cambio en esta pantalla haz clic en el botón de Siguiente.

Botize nos muestra ahora algunos de los principales servicios con los que podemos automatizar acciones una vez el usuario escriba al chat.

Lo que necesitamos una vez el usuario nos ha escrito es llamar a nuestro script de PHP, para lo cual usaremos el servicio de Webhooks. Haz un clic por lo tanto en el icono de Webhooks como se muestra en la siguiente imagen.

Esta vez, de entre las distintas operaciones que podemos automatizar, elegiremos la opción «Ejecutar una petición POST» haciendo un clic en ella.

Ahora deberemos indicar en el campo URL la dirección donde se encuentra el script de PHP. Dado que aún no lo hemos creado, hagámoslo lo ahora.

Enviaremos a nuestro código los datos por POST usando la cabecera Content-Type:application/x-www-form-urlencoded, de modo nuestro script va a poder leerlos directamente del array $_POST.

El array siempre contendrá todos los datos que la tarea haya generado durante los pasos anteriores, por lo que en nuestro caso el array contendrá todo lo relacionado con el mensaje que el usuario enviado vía Telegram a nuestro bot.

En concreto el contenido de $_POST que recibirás será el siguiente:

{
"from_id":"1346584704",
"from_name":"David",
"chat_id":"1346584704",
"text":"Hola!"
}

Donde la clave text va a contener el texto que el usuario de Telegram, en esta caso David, haya escrito.

El trabajo de nuestro script por lo tanto será obtener el número de caracteres de $_POST[«text»].

<?php
$text_length = strlen($_POST["text"]);

Una vez obtenido este necesitamos que el script se lo entregue a la tarea. El modo de hacerlo es devolviéndolo dentro una cadena JSON.

La cadena JSON debe tener la siguiente estructura:

{"meta":{"code":200},"data":{}}

En la que code define si se ha producido un error o no (en este caso el código 200 indica que no ha habido ninguno), y el objeto data contendrá todos los datos que queramos enviar a la tarea.

El código resultante queda de esta manera.

<?php
$text_length = strlen($_POST["text"]);
$output = array(
   "meta" => array(
       "code" => 200
   ),
   "data" => array(
       "text_length" => $text_length
   )
);
echo json_encode($output);
?>

Ya solo queda que guardes este script en tu servidor y obtengas la URL del script.

Volviendo a la tarea, copia la URL de tu script en el campo URL.

No necesitas indicar ni modificar nada más. A continuación pulsa el botón de Siguiente.

Pulsa ahora en el icono «+» que queda a la derecha del Webhook para habilitar un nuevo espacio en tu tarea.

Volverán a aparecer entonces las distintas aplicaciones que puedes añadir.

Habiendo recibido el mensaje del usuario y ejecutado nuestro script ya solo nos queda responderle en el chat de Telegram, por lo que nuevamente haremos clic en el icono de Telegram Bot.

Esta vez la opción que elegiremos es «Responder al usuario«. Haz un clic en ella.

Lo único que necesitas hacer ahora es especificar qué mensaje quieres enviarle al usuario. Recuerda que el número de caracteres lo hemos devuelto dentro de la etiqueta text_length por lo que cuando en el texto de respuesta te refieras a este etiqueta solo tienes que escribirla entre llaves dobles: {{text_length}}.

En la siguiente imagen puedes ver el mensaje de respuesta.

Una vez escrito el mensaje ya habrás terminado la tarea. Pulsa el botón de «Guardar cambios» y abre un chat con tu Bot para probarlo.

Enhorabuena, ahora ya sabes cómo conectar tus scripts de PHP a Botize, automatizar tareas y modificar el resultado de acuerdo a tus necesidades.

Como puedes imaginar, el código que hemos utilizado es solo un ejemplo básico, pero es el mismo principio para cualquier otro Bot que se te ocurra, conectarlo a una base de datos, conectarlo a otras APIs e incluso, sustituir Telegram por cualquiera de los múltiples servicios que integra Botize.

Del mismo modo puedes incluir Python en lugar PHP. Aquí tienes una guía paso a paso para añadir Python en tus tareas automáticas, donde además te explico cómo utilizar un hosting de Python gratuito en la nube.

Espero que esta entrada te haya despertado muchas ideas ¡y quieras compartir alguna en los comentarios!