UNPKG

@wppconnect-team/wppconnect

Version:

WPPConnect is an open source project developed by the JavaScript community with the aim of exporting functions from WhatsApp Web to the node, which can be used to support the creation of any interaction, such as customer service, media sending, intelligen

46 lines (45 loc) 1.49 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.WebSocketTransport = void 0; const ws_1 = __importDefault(require("ws")); class WebSocketTransport { static create(url, timeout) { return new Promise((resolve, reject) => { const ws = new ws_1.default(url, [], { perMessageDeflate: false, maxPayload: 256 * 1024 * 1024, // 256Mb handshakeTimeout: timeout, }); ws.addEventListener('open', () => resolve(new WebSocketTransport(ws))); ws.addEventListener('error', reject); }); } _ws; onmessage; onclose; constructor(ws) { this._ws = ws; this._ws.addEventListener('message', (event) => { if (this.onmessage) this.onmessage.call(null, event.data); }); this._ws.addEventListener('close', () => { if (this.onclose) this.onclose.call(null); }); // Silently ignore all errors - we don't know what to do with them. this._ws.addEventListener('error', () => { }); this.onmessage = null; this.onclose = null; } send(message) { this._ws.send(message); } close() { this._ws.close(); } } exports.WebSocketTransport = WebSocketTransport;