DesarrolladoresApps del monorepo
valwisp-agent
Bridge Node.js/TypeScript entre la nube y la LAN del ISP — WebSocket saliente, sin puertos abiertos.
Para la guía de instalación y operación, ver Implementadores → Agente Local. Esta página cubre el ángulo de desarrollo.
Stack
Node.js + TypeScript + socket.io-client + node-routeros + net-snmp.
Estructura del código
src/agent.ts— ciclo de vida de la conexión: auth, heartbeat, reconexión con backoff.src/config.ts— validación de env vars (AGENT_TOKENrequerido, proceso muere si falta).src/drivers/—routeros.driver.ts,snmp.driver.ts,network.driver.ts(másmikrowisp.driver.tsyzte.driver.ts).
Comandos
npm run start:dev # tsx watch src/main.ts
npm run build # tsc → dist/
npm start # node dist/main.jsDocker
docker run -d --network host --restart always \
-e AGENT_TOKEN=xxx -e CLOUD_URL=wss://api.valwisp.com \
--name valwisp-agent valwisp/agentImagen base node:20-alpine + iputils/busybox-extras (para ping/traceroute).
--network host es obligatorio para alcanzar dispositivos de la LAN.
Lado cloud
El contrapunto en la API es el módulo agent-gateway (src/modules/agent-gateway/) —
Socket.io gateway en el path /agent-ws, dispatch de comandos, y el endpoint público
GET /agent/downloads que sirve el manifiesto de instaladores del Agent Desktop.