Skip to main content

Introducción

Para desarrollar y alojar un bot de Discord en Square Cloud, es esencial seguir una secuencia estructurada de configuraciones y requisitos previos. Esta guía técnica cubrirá todo el proceso, desde la configuración inicial hasta el despliegue en producción.

Requisitos previos

  • Cuenta de Square Cloud: Regístrate a través de la página de registro usando tu correo electrónico.
  • Plan activo: Garantiza recursos dedicados y un rendimiento optimizado para tu aplicación. Consulta nuestros planes disponibles y elige el más adecuado para tus necesidades.

Crear el proyecto

Necesitas una cuenta de Discord para crear y gestionar bots. Si no tienes una, créala en el sitio oficial de Discord.

Aplicación de bot en Discord

Creación de la aplicación

Accede al Developer Portal y haz clic en “New Application”. Define un nombre para tu bot y haz clic en “Create” para crear la aplicación.
Creando una aplicación de Discord en el Developer Portal

Generación del token de autenticación

Después de crear la aplicación, navega a la pestaña “Bot” y haz clic en “Reset Token” para generar el token de autenticación. Cópialo: lo definirás como variable de entorno en Square Cloud, nunca en tu código.
Generando el token de autenticación del bot de Discord

Activación de los intents privilegiados

El bot de ejemplo lee el texto de los mensajes, así que necesita el Message Content Intent. Permanece en la pestaña “Bot”, desplázate hasta “Privileged Gateway Intents” y activa Message Content Intent. Este ejemplo no necesita los otros dos intents privilegiados (Presence y Server Members).
Habilitando los privileged gateway intents de Discord
Seguridad crítica: Mantén el token de tu bot en absoluto secreto. Este token otorga control total sobre el bot. Nunca lo escribas en tu código ni lo pongas en tu ZIP: los ejemplos de abajo lo leen de la variable de entorno DISCORD_TOKEN.

Desarrollar el proyecto

Ahora que tenemos el token del bot, podemos empezar a programar. Puedes usar tu lenguaje favorito para hacerlo.
Configuración del entorno Node.js
  1. Verifica que Node.js esté instalado en tu sistema. Si no lo está, descárgalo desde el sitio oficial de Node.js.
  2. Inicializa un nuevo proyecto Node.js:
Terminal
  1. Instala la librería Discord.js:
Terminal
  1. Crea un archivo JavaScript (por ejemplo, index.js) y añade el siguiente código para crear un bot de Discord básico:
index.js
El código usa discord.js v14, donde el evento ready es Events.ClientReady ("clientReady"). El antiguo nombre "ready" está obsoleto.

Configurar Square Cloud

Crea un archivo squarecloud.app en la raíz de tu proyecto, junto a tu archivo principal. Le indica a Square Cloud cómo ejecutar tu bot:
  • MAIN es el archivo que ejecuta Square Cloud, y MEMORY es la RAM del bot en MB. Los bots necesitan al menos 256 MB; 512 MB deja margen para crecer.
  • AUTORESTART=true vuelve a iniciar el bot si falla. Consulta cómo funciona el auto restart.
  • No hay SUBDOMAIN: un bot no sirve páginas web.
Tu ZIP contiene el archivo principal, su archivo de dependencias (package.json o requirements.txt) y squarecloud.app. Deja fuera node_modules: Square Cloud instala las dependencias durante el deploy. Cuando subes desde el dashboard, el formulario de subida puede rellenar estos ajustes por ti. Consulta la referencia del archivo de configuración para cada campo.

Definir el token del bot

Tu código lee el token de la variable de entorno DISCORD_TOKEN, así que el token nunca va en tus archivos. Defínelo de una de estas formas:
  • Dashboard: en la página de subida, abre Configuración avanzada y añade una variable llamada DISCORD_TOKEN con tu token como valor. Para un bot que ya está en línea, añádela en la página Variables de entorno de la aplicación y reinicia el bot.
  • CLI: justo después de subir el bot (consulta Deploy), defínela con squarecloud app env set y reinicia el bot:
El bot lee sus variables de entorno al iniciar, así que reinícialo después de cada cambio. Consulta Variables de entorno para ver las demás formas de gestionarlas.
Para ejecutar primero el bot en tu computadora, define la variable en tu terminal: export DISCORD_TOKEN=your_token_here en macOS y Linux, o $env:DISCORD_TOKEN="your_token_here" en PowerShell.

Deploy

Después de preparar los archivos de tu proyecto, ya puedes subirlos a Square Cloud y alojar tu proyecto. Para ello, crea un archivo ZIP que contenga todos los archivos de tu proyecto.

A través del panel

1

Accede a la página de subida

Accede a la página de subida y sube el archivo zip de tu proyecto.
2

Configura tu entorno

Después de subir tu zip, deberás configurar el nombre, el archivo principal o el entorno de ejecución y otros ajustes de tu proyecto.
Si estás subiendo un proyecto web, asegúrate de seleccionar “Publicación Web” y de definir un subdominio para tu proyecto.
3

Despliega tu proyecto

Por último, haz clic en el botón “Deploy” para alojar tu proyecto en Square Cloud.
Tras el despliegue, puedes monitorear el estado y los logs de tu proyecto desde el panel.
Subiendo aplicación a Square Cloud
4

Confirma que tu aplicación esté en vivo

Tu primer despliegue suele tardar menos de un minuto. En el dashboard, espera a que el estado de tu aplicación muestre “running” y revisa los logs por si hay errores de inicio.
Si desplegaste un sitio web o una API, abre https://<tu-subdominio>.squareweb.app en tu navegador: deberías ver tu aplicación respondiendo. Si desplegaste un bot, envíale un comando para confirmar que esté online.
¿La aplicación no inicia? Consulta la guía de solución de problemas para ver las causas y soluciones más comunes.

A través de la CLI

Para usar este método, tu proyecto necesita un archivo de configuración llamado squarecloud.app en su raíz. Le indica a Square Cloud cómo ejecutar tu aplicación.

Guía del archivo de configuración

Aprende a crear el archivo de configuración squarecloud.app que define el entorno de tu aplicación.
1

Instala la CLI

Instala la CLI de Square Cloud. Si ya la tienes, ejecuta el mismo comando para actualizarla:
2

Inicia sesión

Ejecuta el comando de abajo. Abre tu navegador: aprueba el inicio de sesión allí y la CLI queda lista. No hay ninguna clave de API que copiar. Para scripts y CI, consulta autenticación de la CLI.
3

Sube tu proyecto

Desde la carpeta de tu proyecto, ejecuta el comando de abajo. La CLI comprime la carpeta actual en un zip, dejando fuera lo que lista squarecloud.ignore, y lo sube:
Para subir un zip que creaste tú mismo, pásalo con --file:
4

Confirma que tu aplicación esté en vivo

Tu primer despliegue suele tardar menos de un minuto. Revisa el estado y los logs de tu aplicación directamente desde la terminal:
Si desplegaste un sitio web o una API, abre https://<tu-subdominio>.squareweb.app en tu navegador: deberías ver tu aplicación respondiendo. Si desplegaste un bot, envíale un comando para confirmar que esté online.
¿La aplicación no inicia? Consulta la guía de solución de problemas para ver las causas y soluciones más comunes.

Probar el bot

Si seguiste todos los pasos correctamente, el siguiente paso es invitar a tu bot para probarlo. Para ello, sigue estos pasos:
  1. Accede al Developer Portal y selecciona tu bot.
  2. Navega a la pestaña “OAuth2” y ve a “OAuth2 URL Generator”.
  3. En “Scopes”, marca la opción “bot”.
  4. En “Bot Permissions”, marca solo lo que necesita el ejemplo: View Channels, Send Messages y Read Message History. Evita Administrator: los bots rara vez lo necesitan, y un token filtrado controlaría entonces todo tu servidor.
  5. Copia la URL generada, ábrela en tu navegador y añade el bot a tu servidor. La URL se ve así:
68608 es la suma de esos tres permisos. Reemplaza YOUR_CLIENT_ID por el ID de tu aplicación, que aparece en la pestaña “General Information”. Si añades comandos que necesitan más permisos, genera una nueva URL con ellos marcados. Ahora, para probar si todo funciona, ejecuta el siguiente comando en tu servidor: !hello.
Probando el bot de Discord después del deploy

Recursos adicionales

Para más información sobre la creación de bots con discord.py y discord.js, visita la documentación oficial de discord.py y la guía oficial de discord.js. Allí encontrarás guías detalladas, tutoriales y documentación de API para ayudarte a aprovechar al máximo estas librerías.

Próximos pasos

Errores de bots de Discord

Soluciona un token inválido, intents que faltan y otros errores comunes.

Variables de entorno

Gestiona el token de tu bot y otros secretos.

Servidor Lavalink

Aloja un servidor Lavalink para reproducir música en tu bot.

Contáctanos

Si continúas enfrentando dificultades técnicas, nuestro equipo de soporte especializado está disponible para ayudarte. Contáctanos y estaremos encantados de ayudarte a resolver cualquier problema: la calidad del soporte es una gran parte de por qué los desarrolladores califican a Square Cloud con 4.9/5 en 402 reseñas en Google y Trustpilot.