@jamesgopsill/repetier-server-client
Version:
A Typescript client for Repetier Server
24 lines (23 loc) • 865 B
JavaScript
import WebSocket from "isomorphic-ws";
import { RepetierServerEvents } from "../definitions/enums.js";
export async function connect() {
return new Promise((resolve) => {
const url = `${this.wsUrl}?apiKey=${this.apiKey}`;
console.log(url);
this.ws = new WebSocket(url);
const listener = async () => {
console.log("Connected");
this.ws.removeListener(RepetierServerEvents.OPEN, listener);
clearTimeout(timeout);
resolve(true);
};
const timeout = setTimeout(() => {
this.ws.removeListener(RepetierServerEvents.OPEN, listener);
resolve(false);
}, 1000);
this.ws.on(RepetierServerEvents.OPEN, listener);
this.ws.on(RepetierServerEvents.ERROR, (e) => {
console.log("WebSocket Error", e);
});
});
}