UNPKG

matterbridge-roborock-vacuum-plugin

Version:
39 lines (38 loc) 1.11 kB
import { Protocol } from './protocol.js'; import { randomInt } from 'node:crypto'; export class RequestMessage { messageId; protocol; method; params; secure; timestamp; nonce; constructor(args) { this.messageId = args.messageId ?? randomInt(10000, 32767); this.protocol = args.protocol ?? Protocol.rpc_request; this.method = args.method; this.params = args.params; this.secure = args.secure ?? false; this.nonce = args.nonce ?? randomInt(10000, 32767); this.timestamp = args.timestamp ?? Math.floor(Date.now() / 1000); } toMqttRequest() { return this; } toLocalRequest() { if (this.protocol == Protocol.rpc_request) { return new RequestMessage({ messageId: this.messageId, protocol: Protocol.general_request, method: this.method, params: this.params, secure: this.secure, timestamp: this.timestamp, }); } else { return this; } } }