WH-Tebex-MicroService
MicroServicio Node.js • Webhook para Discord • Compatible con Tebex • 100% Gratuito
![[IMG]](//proxy.spigotmc.org/bccd4d99a2b0df0dd8ff87484d7fbac41e01392a/68747470733a2f2f692e6962622e636f2f77426d79534b362f696d6167652e706e67)
❯ Comandos Tebex
- !tbxuser <nick|uuid> — Consulta un usuario Tebex, muestra sus pagos con paginación y permite abrir un pago desde el selector.
- !tbxcheck <tbx-id> — Consulta el detalle completo de un pago Tebex por ID de transacción.
❯ Ejemplo rápido
Uso:
- !tbxuser Notch
- !tbxcheck 1234567890
Resultado esperado: el bot responderá con un embed de usuario o con el detalle del pago seleccionado.
❯ Ejemplo de configuración
Renombra el archivo config.example.json a config.json y edita estos valores:
- token — Token secreto de tu bot de Discord.
- shopchannelID — ID del canal donde se publicarán las notificaciones.
- defPort — Puerto en el que escuchará el servidor web (ej: 25500).
- language — Idioma de la aplicación (ej: es, en).
- showServer — Mostrar o no el servidor de compra en el embed (true/false).
- embed.url — URL de tu tienda Tebex.
- embed.url_infooter — Muestra el dominio en el footer del embed.
- embed.color — Color del embed en hex (ej: #0099ff).
- embed.useMCskin — Mostrar la skin de Minecraft del comprador (true/false).
- embed.gifurl — GIF o imagen animada para el embed.
- embed.imageurl — Imagen principal del embed de compra.
- debug — Activa el modo de depuración en consola (true/false).
- tebexCheck.prefix — Prefijo de comandos Tebex, normalmente !.
- tebexCheck.apiKey — Private Key de Tebex para consultar la API.
- tebexCheck.requiredRole — Rol requerido para usar los comandos.
❯ ¿Qué es?
Aplicación de Node.js que actúa como bot de Discord y servidor web simultáneamente. Recibe notificaciones de compra desde Tebex a través de solicitudes POST y las publica automáticamente como embeds en el canal de Discord que configures. También incluye comandos de consulta Tebex por Discord, validación por IP, idempotencia para evitar duplicados y endpoints de salud y métricas.
❯ Características
- Notificaciones de compra en Discord — Envía un embed detallado con el producto, precio, comprador y servidor de compra.
- Comandos Tebex — Consulta usuarios y pagos con `!tbxuser` y `!tbxcheck`.
- Paginación interactiva — Navega entre pagos y abre un pago concreto desde un selector.
- Idempotencia — Evita publicar eventos duplicados si Tebex reintenta el webhook.
- Muestra el servidor de compra — Identifica desde qué servidor se realizó la compra.
- Compatible con Proxy y Cloudflare — Funciona sin problemas detrás de proxies y protección Cloudflare.
- Traducción automática — Integración con la API de Google Translate, soporte para +133 idiomas.
- Skins de Minecraft — Opción para mostrar la skin del comprador en el embed (useMCskin).
- Emojis personalizables — Configura los emojis del título, moneda, reacción y flechas de producto.
- Modo debug — Registro detallado en consola para facilitar la depuración.
- Favicon personalizado — Soporte para favicon de tu tienda Tebex en el embed.
- Health y metrics — Endpoints `GET /healthz` y `GET /metrics` para monitoreo básico.
❯ Novedades actuales
- Comandos nuevos para Tebex por Discord.
- Paginación para pagos de usuario.
- Detalle de pagos al seleccionar un item.
- Idempotencia por transaction_id / order_id.
- Logs con X-Request-Id.
- Endpoint GET /healthz.
- Endpoint GET /metrics.
❯ Tutorial de instalación
❯ Configuración en Tebex
- Crea un DNS apuntando a tu servidor donde alojas el microservicio.
- En tu panel de Tebex, ve a Developers → Webhooks y añade tu DNS con el puerto configurado como punto de acceso.
Ejemplo: tu-servidor.com:25500
- Verifica que el webhook aparezca como validado en Tebex.
- Inicia la aplicación con node index.js y el bot comenzará a recibir notificaciones.
❯ Vista previa
❯ Endpoints
- GET /healthz — Estado básico del servicio.
- GET /metrics — Contadores internos de requests, errores, validaciones y duplicados.
❯ Seguridad y estabilidad
- Verifica IPs oficiales de Tebex.
- Evita duplicados con idempotencia local.
- Cada request tiene un X-Request-Id.
- El sistema expone métricas y salud para monitoreo.
- El modo debug acelera pruebas, pero no está pensado para producción.
❯ Enlaces
⚠ RECURSO COMPLETAMENTE GRATUITO — PROHIBIDA SU REVENTA. PRODUCTO REGISTRADO.
Copyright ⓒ 2025 — vCesar's Company
Mantenido por @vCesar_1 y @Facucarpas