PARTE 6 - Ingenieria Inversa Avanzada y Autonomia Tecnologica

Conversión estática desde DOCX. Fuente: /home/sebas/work/projects/ballbox/docs/tcn-maquinas-recibido-2026-05-26/PARTE 6 - Ingenieria Inversa Avanzada y Autonomia Tecnologica.docx

Ballbox

Documentación Maestra De Investigación Y Operación

Parte 6

Ingeniería Inversa Avanzada y Autonomía Tecnológica

Introducción

Hasta este punto la máquina funciona.

Sin embargo BallBox depende todavía de varios terceros:

Tcn

OurVend

EasyCoin

BillWallet

La pregunta estratégica pasa a ser:

¿Qué dependencias podemos eliminar?

Dependencias Actuales

Hardware

Tcn

Actualmente inevitable.

Cloud

OurVend

Actualmente obligatorio.

Pagos

EasyCoin

Actualmente necesario.

Cobro

MercadoPago

Actualmente necesario.

Objetivo Final

Arquitectura deseada:

Usuario

Atc

Backend BallBox

Máquina

Sin depender operativamente de:

OurVend

Investigación De Protocolo

Hallazgo

En logs aparece:

qrc.ourvend.com

puerto 4150

Además aparecen:

TCPClient

socket connect

heartbeat

mensajes JSON

Conclusión

La máquina habla TCP.

Preguntas Abiertas

¿Cómo autentica?

¿Cómo registra máquina?

¿Cómo sincroniza slots?

¿Cómo sincroniza stock?

¿Cómo sincroniza precios?

¿Cómo descarga publicidad?

Captura De Tráfico

Herramienta recomendada:

Wireshark

Procedimiento

Conectar máquina a red controlada.

Capturar tráfico.

Filtrar:

4150

Objetivos

Identificar:

Json

endpoints

autenticación

comandos

Ftp Detectado

Encontrado:

ad.ourvend.com

Usuario:

ysftp

Contraseña exportada.

Preguntas

¿FTP sigue activo?

¿Se puede conectar?

¿Qué directorios existen?

¿Hay carpetas por Machine ID?

¿Hay publicidad?

¿Hay idiomas?

¿Hay skins?

Experimento Ftp

Realizar desde PC.

Intentar conexión.

Objetivo:

listar contenido.

NO modificar nada.

Sólo lectura.

Actualizaciones Ota

Encontrado:

update.xml

Servidor:

tfs.android.tcnvmms.com

Preguntas

¿Qué actualiza?

Apk

Recursos

Idiomas

Configuraciones

Objetivo

Descargar update.xml.

Analizar.

Sistema De Idiomas

Hallazgo:

is_use_language_package=true

Conclusión:

Existe soporte para paquetes externos.

Objetivo

Encontrar:

language package

Posibles ubicaciones:

Text

v3Skins

Android/data

Meta

Traducción completa BallBox.

V3Skins

Hipótesis:

branding.

Posible contenido:

logos

fondos

colores

layouts

Objetivo

Reemplazar identidad china.

Imagegoods

Hipótesis:

imágenes de productos.

Objetivo:

mostrar productos propios.

Sin depender aprobación manual.

Publicidad Remota

Hallazgo:

AdvertRemote=false

Interpretación:

Función existe.

Pregunta:

¿Puede apuntarse a servidor propio?

Escenario Ideal

Servidor BallBox

Publicidad

Máquina

Actualización automática.

Backend Propio

Objetivo mínimo:

Dashboard.

Mostrar:

stock

ventas

conectividad

estado

Objetivo medio

Administrar:

publicidad

productos

precios

Objetivo máximo

Reemplazar OurVend.

Easycoin Como Puente Estratégico

EasyCoin permite:

liberar producto

sin intervención directa de OurVend.

Esto es enorme.

Porque permite:

Atc

EasyCoin

Máquina

aunque OurVend siga existiendo.

Escenario De Membresías

Socio premium.

Beneficio:

1 bebida gratis.

ATC valida.

ATC llama API EasyCoin.

Máquina libera producto.

Sin pago.

Escenario De Torneos

Ganador recibe premio.

Premio digital.

Canje en máquina.

Liberación automática.

Escenario De Cupones

Código promocional.

Canje.

Producto.

Liberación.

Dashboard Ballbox

Fase futura.

Por máquina:

Machine ID

ubicación

ventas

stock

última conexión

temperatura

estado EasyCoin

estado publicidad

Alertas Futuras

Stock bajo.

Temperatura fuera de rango.

Sin internet.

Sin ventas.

Puerta abierta.

Operación A Escala

10 máquinas

Control manual.

50 máquinas

Dashboard necesario.

100 máquinas

Automatización necesaria.

500 máquinas

Centro de operaciones.

Hipótesis Importantes

H1

ImageGoods controla imágenes.

H2

Text controla idiomas.

H3

v3Skins controla branding.

H4

FTP distribuye publicidad.

H5

OTA distribuye recursos.

H6

Protocolo TCP es replicable.

H7

Backend propio es viable.

Orden De Investigación Recomendado

Analizar TrayPreferences completo.

Analizar Text.

Analizar v3Skins.

Analizar Android/data/com.tcn.vending.

Descargar update.xml.

Investigar FTP.

Capturar TCP.

Documentar API EasyCoin.

Probar liberación remota.

Diseñar dashboard BallBox.

Conclusión General De La Parte 6

Seguir leyendo