Energía y consola

Controla el estado de ejecución de un servidor y transmite su consola.

Señales de energía

POST /v1/servers/:id/power con una señal de start, stop, restart o kill.

ts
await cloud.servers.power(id, "restart");

Uso de recursos en vivo

GET /v1/servers/:id/resources devuelve los contadores en vivo de CPU, memoria, disco y red del panel, más el estado de energía actual.

ts
const usage = await cloud.servers.resources(id); // usage.attributes.current_state === "running" | "offline" | ...

Enviar comandos

POST /v1/servers/:id/command escribe una línea en la consola del servidor.

ts
await cloud.servers.command(id, "say Server restarting in 5 minutes");

Transmitir la consola

Para una terminal en vivo, obtén credenciales de websocket de corta duración y conéctate desde el navegador:

ts
const { websocket } = await cloud.servers.console(id); // { token, socket } — conectar con el protocolo websocket de Wings const ws = new WebSocket(websocket.socket); ws.onopen = () => ws.send(JSON.stringify({ event: "auth", args: [websocket.token] })); ws.onmessage = (e) => console.log(JSON.parse(e.data));

Las credenciales son de corta duración; solicita nuevas cuando se cierre un socket. Este es el mismo mecanismo que usa la consola del panel consola usa.

Power & console | Enzonic Cloud API