UNPKG

@kuriousdesign/machine-sdk

Version:

Shared data types and helpers for machine-related repositories

72 lines (64 loc) 2.13 kB
import { DeviceActionRequestData, initialDeviceActionRequestData } from "./Actions"; export interface ApiOpcuaReqData { id: number; // likely use timestamp ms after epoch checkSum: number; actionRequestData: DeviceActionRequestData; sts: number; } export const initialApiOpcuaReqData: ApiOpcuaReqData = { id: 0, checkSum: 0, actionRequestData: initialDeviceActionRequestData, sts: 0 }; export interface ApiOpcuaData { hmiReq: ApiOpcuaReqData; // read by PLC hmiResp: ApiOpcuaReqData; // written by PLC orchReq: ApiOpcuaReqData; // read by PLC orchResp: ApiOpcuaReqData; // written by PLC req: ApiOpcuaReqData; // written by mtac, read by plc resp: ApiOpcuaReqData; // written by plc, read by testand internalReq: ApiOpcuaReqData; // used internally by mtac internalResp: ApiOpcuaReqData; // used internally by mtac } export const initialApiOpcuaData: ApiOpcuaData = { hmiReq: {} as ApiOpcuaReqData, hmiResp: {} as ApiOpcuaReqData, orchReq: {} as ApiOpcuaReqData, orchResp: {} as ApiOpcuaReqData, req: {} as ApiOpcuaReqData, resp: {} as ApiOpcuaReqData, internalReq: {} as ApiOpcuaReqData, internalResp: {} as ApiOpcuaReqData }; export enum ApiReqRespStates { INACTIVE = 0, WRITING = 10, REQUEST_READY = 20, REJECTED_INVALID_CHECKSUM = 30, REJECTED_ACTION_NOT_ACCEPTED = 40, REJECTED_INVALID_SENDERID = 50, ACCEPTED = 1000, // ERROR = 911, // DONE = 1000 } export function apiReqRespStateToString(state: ApiReqRespStates): string { switch (state) { case ApiReqRespStates.INACTIVE: return "INACTIVE"; case ApiReqRespStates.WRITING: return "WRITING"; case ApiReqRespStates.REQUEST_READY: return "REQUEST_READY"; case ApiReqRespStates.REJECTED_INVALID_CHECKSUM: return "REJECTED_INVALID_CHECKSUM"; case ApiReqRespStates.REJECTED_ACTION_NOT_ACCEPTED: return "REJECTED_ACTION_NOT_ACCEPTED"; case ApiReqRespStates.REJECTED_INVALID_SENDERID: return "REJECTED_INVALID_SENDERID"; case ApiReqRespStates.ACCEPTED: return "ACCEPTED"; default: return "UNKNOWN"; } }