UNPKG

camstreamerlib

Version:

Helper library for CamStreamer ACAP applications.

27 lines (26 loc) 1.01 kB
import { WsEvents } from '../internal/WsEvents'; import { PlaneTrackerWsEvents, planeTrackerUserActionData, ptrEventsSchema, } from '../types/ws/PlaneTrackerEvents'; export class PlaneTrackerEvents extends WsEvents { _apiUser; constructor(ws, _apiUser) { super((data) => { const parsedData = ptrEventsSchema.parse(data); if (parsedData.type === PlaneTrackerWsEvents.USER_ACTION) { const { type, ...actionData } = parsedData; const userAction = planeTrackerUserActionData.parse(actionData); return { ...userAction, type }; } return parsedData; }, ws); this._apiUser = _apiUser; this.ws.onOpen = this.sendInitMsg; } sendInitMsg = () => { this.ws.send(JSON.stringify({ type: 'USER_INFO', userId: this._apiUser.userId, userName: this._apiUser.userName, userPriority: this._apiUser.userPriority, })); }; }