Integración Web-Backend (Node.js)

Conecta aplicaciones Node.js (Express, Nest, Next.js) directamente al túnel E2EE a través de Node-API (NAPI-C++).

1

Instalación en NPM

A diferencia de los Websockets donde necesitas instalar librerías pesadas como `socket.io`, aquí instalas el motor de Protocolo Orzatty que trae el binario de Rust incrustado. ¡Cero dependencias extra!

Ejecuta esto en tu terminal donde tengas tu `package.json`:

npm install @orzattyholding/po

💡 Para que lo entiendas súper fácil: Es como ir a la tienda y comprar el "Motor Orzatty" ya ensamblado. No tienes que armar nada, solo lo metes en tu bolsa (tu proyecto) y ya puedes usarlo.

2

Escribir o Escuchar Mensajes (El Servidor Node)

Vamos a usar el clásico `async/await` de JavaScript para esperar los mensajes. El motor C++ por debajo se encarga de que tu Node.js no se trabe (Event Loop intacto).

Abre tu archivo `server.js` y escribe esto:

const { PoClient } = require('@orzattyholding/po');

async function iniciarServidor() {
    // 1. Abrimos el puerto 5547
    const server = await PoClient.bind(5547);
    console.log("¡Orzatty Server Node.js Listo!");

    // 2. Nos quedamos escuchando con un ciclo
    while (true) {
        const datos_cifrados_ya_abiertos = await server.recv();
        if (!datos_cifrados_ya_abiertos) break; // Si se cierra, salimos
        
        console.log("Secreto recibido: " + datos_cifrados_ya_abiertos.toString());
    }
}
iniciarServidor();

💡 Para que lo entiendas súper fácil: Imagina que tienes a un secretario mágico (`await server.recv()`). Le dices "avísame cuando llegue una carta sellada". Tú te pones a hacer otras cosas, y cuando la carta llega, el secretario abre el sello mágico y te la lee en voz alta. Si el secretario te dice que no hay más cartas (`!datos`), pides apagar las luces (`break`).

3

Conectarse desde Otro Archivo Node.js

Crear una conexión es igual de fácil. Recuerda que con PO, la seguridad E2EE no necesita certificados TLS comprados a Amazon o GoDaddy. ¡Es seguridad matemática embebida!
const { PoClient } = require('@orzattyholding/po');

async function conectarYEnviar() {
    // 1. Apuntamos a nuestro amigo en su casa (puerto 5547)
    const client = await PoClient.connect("127.0.0.1:5547");
    
    // 2. Transmutamos el texto a Binario (Buffer) y lo enviamos
    let paquete = Buffer.from("Hola servidor de Orzatty");
    await client.send(paquete);
}
conectarYEnviar();

💡 Para que lo entiendas súper fácil: JavaScript usa "Palabras" (Strings). Las redes usan "Electricidad" (Bytes/Buffer). Un `Buffer.from()` es como tomar tus palabras en un papel y convertirlas en aviones de papel antes de lanzarlas por el aire (`client.send()`).

4

sendBatch (Explotando la Aceleración de Hardware)

Si tienes una app como WhatsApp o un juego en tiempo real, no mandes paquete por paquete. Agrúpalos en un `[]` Array de Buffers y dispara `sendBatch`.
const mis_100_mensajes = [];
for(let i=0; i < 100; i++){
    mis_100_mensajes.push(Buffer.from("posición X Y"));
}
// Esto es 5 veces más rápido!
await client.sendBatch(mis_100_mensajes);