sprinklers3/common/sprinklers/websocketData.ts

53 lines
1.2 KiB
TypeScript
Raw Normal View History

import { Response as ResponseData } from "@common/sprinklers/requests";
export interface IError {
type: "error";
message: string;
data: any;
}
2018-06-29 18:16:06 -06:00
export interface IDeviceSubscribeResponse {
type: "deviceSubscribeResponse";
deviceId: string;
result: "success" | "noPermission";
}
2017-10-09 08:09:08 -06:00
export interface IDeviceUpdate {
type: "deviceUpdate";
deviceId: string;
2017-10-09 08:09:08 -06:00
data: any;
}
export interface IDeviceCallResponse {
type: "deviceCallResponse";
2018-06-30 14:49:13 -06:00
requestId: number;
data: ResponseData;
2017-10-09 08:09:08 -06:00
}
2018-06-16 23:54:03 -06:00
export interface IBrokerConnectionUpdate {
type: "brokerConnectionUpdate";
brokerConnected: boolean;
}
2018-06-29 18:16:06 -06:00
export type IServerMessage = IError | IDeviceSubscribeResponse | IDeviceUpdate | IDeviceCallResponse |
IBrokerConnectionUpdate;
2018-06-30 14:49:13 -06:00
export interface IAuthenticateRequest {
type: "authenticateRequest";
accessToken: string;
}
export interface IDeviceSubscribeRequest {
type: "deviceSubscribeRequest";
deviceId: string;
}
2017-10-09 08:09:08 -06:00
export interface IDeviceCallRequest {
type: "deviceCallRequest";
2018-06-30 14:49:13 -06:00
requestId: number;
deviceId: string;
data: any;
2017-10-09 08:09:08 -06:00
}
export type IClientMessage = IDeviceSubscribeRequest | IDeviceCallRequest;