@ludeo/cloud-common 1.2.174-beta-yahil-1 → 1.2.174-beta-yahil-3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,66 +2,65 @@ import { MachineMode, GameCreationPayload } from '../site-controller/types';
2
2
  import { CloudResourceStatus } from '../pools/resource/status';
3
3
  export declare const AGENT_STRING = "agent";
4
4
  export declare const COMMAND_STRING = "command";
5
- export declare class InitCommandPayload {
5
+ export declare const WILDCARD_MQTT_STRING = "#";
6
+ export declare class BaseCommandPayload {
7
+ machineResourceId: string;
8
+ }
9
+ export declare class InitCommandPayload extends BaseCommandPayload {
6
10
  mode: MachineMode;
7
11
  }
8
- export declare class StartGameCommandPayload {
9
- gameResourceId: string;
12
+ export declare class StartGameCommandPayload extends BaseCommandPayload {
10
13
  payload: GameCreationPayload;
11
14
  }
12
- export declare class TerminateGameCommandPayload {
13
- gameResourceId: string;
14
- }
15
- export declare class ExportLogsCommandPayload {
15
+ export declare class ExportLogsCommandPayload extends BaseCommandPayload {
16
16
  gameResourceId: string;
17
17
  uploadURL: string;
18
18
  }
19
- export declare class ResourceStatusUpdatePayload {
20
- machineResourceId: string;
19
+ export declare class ResourceStatusUpdatePayload extends BaseCommandPayload {
21
20
  gameResourceId?: string;
22
21
  status: CloudResourceStatus;
23
- reason?: string;
22
+ meta?: Record<string, any>;
23
+ }
24
+ export declare class ShutdownCommandPayload extends BaseCommandPayload {
25
+ }
26
+ export declare class TerminateGameCommandPayload extends BaseCommandPayload {
27
+ gameResourceId: string;
24
28
  }
25
29
  export declare class InitCommand {
26
30
  static readonly COMMAND_NAME = "init";
27
- readonly machineResourceId: string;
28
31
  payload: InitCommandPayload;
29
- constructor(machineResourceId: string, payload: InitCommandPayload);
32
+ constructor(payload: InitCommandPayload);
30
33
  getTopic(): string;
31
34
  }
32
35
  export declare class StartGameCommand {
33
36
  static readonly COMMAND_NAME = "start-game";
34
- readonly machineResourceId: string;
35
37
  payload: StartGameCommandPayload;
36
- constructor(machineResourceId: string, payload: StartGameCommandPayload);
38
+ constructor(payload: StartGameCommandPayload);
37
39
  getTopic(): string;
38
40
  }
39
41
  export declare class TerminateGameCommand {
40
42
  static readonly COMMAND_NAME = "terminate-game";
41
- readonly machineResourceId: string;
42
43
  payload: TerminateGameCommandPayload;
43
- constructor(machineResourceId: string, payload: TerminateGameCommandPayload);
44
+ constructor(payload: TerminateGameCommandPayload);
44
45
  getTopic(): string;
45
46
  }
46
47
  export declare class ExportLogsCommand {
47
48
  static readonly COMMAND_NAME = "export-logs";
48
- readonly machineResourceId: string;
49
49
  payload: ExportLogsCommandPayload;
50
- constructor(machineResourceId: string, payload: ExportLogsCommandPayload);
50
+ constructor(payload: ExportLogsCommandPayload);
51
51
  getTopic(): string;
52
52
  }
53
53
  export declare class ShutdownCommand {
54
54
  static readonly COMMAND_NAME = "shutdown";
55
- readonly machineResourceId: string;
56
- payload: {};
57
- constructor(machineResourceId: string);
55
+ payload: ShutdownCommandPayload;
56
+ constructor(payload: ShutdownCommandPayload);
58
57
  getTopic(): string;
59
58
  }
60
59
  export declare class ResourceStatusUpdateCommand {
61
60
  static readonly COMMAND_NAME = "resource-status-update";
62
61
  payload: ResourceStatusUpdatePayload;
63
62
  constructor(payload: ResourceStatusUpdatePayload);
64
- static getTopic(machineResourceId: string): string;
63
+ getTopic(): string;
65
64
  }
66
65
  export declare const RESOURCE_STATUS_SUBSCRIBE_PATTERN: string;
67
66
  export declare const AGENT_COMMAND_SUBSCRIBE_PATTERN = "agent/command/#";
@@ -9,35 +9,32 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.AGENT_COMMAND_SUBSCRIBE_PATTERN = exports.RESOURCE_STATUS_SUBSCRIBE_PATTERN = exports.ResourceStatusUpdateCommand = exports.ShutdownCommand = exports.ExportLogsCommand = exports.TerminateGameCommand = exports.StartGameCommand = exports.InitCommand = exports.ResourceStatusUpdatePayload = exports.ExportLogsCommandPayload = exports.TerminateGameCommandPayload = exports.StartGameCommandPayload = exports.InitCommandPayload = exports.COMMAND_STRING = exports.AGENT_STRING = void 0;
12
+ exports.AGENT_COMMAND_SUBSCRIBE_PATTERN = exports.RESOURCE_STATUS_SUBSCRIBE_PATTERN = exports.ResourceStatusUpdateCommand = exports.ShutdownCommand = exports.ExportLogsCommand = exports.TerminateGameCommand = exports.StartGameCommand = exports.InitCommand = exports.TerminateGameCommandPayload = exports.ShutdownCommandPayload = exports.ResourceStatusUpdatePayload = exports.ExportLogsCommandPayload = exports.StartGameCommandPayload = exports.InitCommandPayload = exports.BaseCommandPayload = exports.WILDCARD_MQTT_STRING = exports.COMMAND_STRING = exports.AGENT_STRING = void 0;
13
13
  const class_validator_1 = require("class-validator");
14
14
  const decorators_1 = require("../../../decorators");
15
15
  const types_1 = require("../site-controller/types");
16
16
  const status_1 = require("../pools/resource/status");
17
17
  exports.AGENT_STRING = 'agent';
18
18
  exports.COMMAND_STRING = 'command';
19
- class InitCommandPayload {
19
+ exports.WILDCARD_MQTT_STRING = '#';
20
+ class BaseCommandPayload {
21
+ }
22
+ exports.BaseCommandPayload = BaseCommandPayload;
23
+ __decorate([
24
+ (0, class_validator_1.IsUUID)(),
25
+ __metadata("design:type", String)
26
+ ], BaseCommandPayload.prototype, "machineResourceId", void 0);
27
+ class InitCommandPayload extends BaseCommandPayload {
20
28
  }
21
29
  exports.InitCommandPayload = InitCommandPayload;
22
30
  __decorate([
23
31
  (0, class_validator_1.IsEnum)(types_1.MachineMode),
24
32
  __metadata("design:type", String)
25
33
  ], InitCommandPayload.prototype, "mode", void 0);
26
- class StartGameCommandPayload {
34
+ class StartGameCommandPayload extends BaseCommandPayload {
27
35
  }
28
36
  exports.StartGameCommandPayload = StartGameCommandPayload;
29
- __decorate([
30
- (0, class_validator_1.IsUUID)(),
31
- __metadata("design:type", String)
32
- ], StartGameCommandPayload.prototype, "gameResourceId", void 0);
33
- class TerminateGameCommandPayload {
34
- }
35
- exports.TerminateGameCommandPayload = TerminateGameCommandPayload;
36
- __decorate([
37
- (0, class_validator_1.IsUUID)(),
38
- __metadata("design:type", String)
39
- ], TerminateGameCommandPayload.prototype, "gameResourceId", void 0);
40
- class ExportLogsCommandPayload {
37
+ class ExportLogsCommandPayload extends BaseCommandPayload {
41
38
  }
42
39
  exports.ExportLogsCommandPayload = ExportLogsCommandPayload;
43
40
  __decorate([
@@ -48,14 +45,11 @@ __decorate([
48
45
  (0, class_validator_1.IsString)(),
49
46
  __metadata("design:type", String)
50
47
  ], ExportLogsCommandPayload.prototype, "uploadURL", void 0);
51
- class ResourceStatusUpdatePayload {
48
+ class ResourceStatusUpdatePayload extends BaseCommandPayload {
52
49
  }
53
50
  exports.ResourceStatusUpdatePayload = ResourceStatusUpdatePayload;
54
51
  __decorate([
55
- (0, class_validator_1.IsUUID)(),
56
- __metadata("design:type", String)
57
- ], ResourceStatusUpdatePayload.prototype, "machineResourceId", void 0);
58
- __decorate([
52
+ (0, class_validator_1.IsOptional)(),
59
53
  (0, class_validator_1.IsUUID)(),
60
54
  __metadata("design:type", String)
61
55
  ], ResourceStatusUpdatePayload.prototype, "gameResourceId", void 0);
@@ -65,106 +59,94 @@ __decorate([
65
59
  ], ResourceStatusUpdatePayload.prototype, "status", void 0);
66
60
  __decorate([
67
61
  (0, class_validator_1.IsOptional)(),
68
- (0, class_validator_1.IsString)(),
62
+ __metadata("design:type", Object)
63
+ ], ResourceStatusUpdatePayload.prototype, "meta", void 0);
64
+ class ShutdownCommandPayload extends BaseCommandPayload {
65
+ }
66
+ exports.ShutdownCommandPayload = ShutdownCommandPayload;
67
+ class TerminateGameCommandPayload extends BaseCommandPayload {
68
+ }
69
+ exports.TerminateGameCommandPayload = TerminateGameCommandPayload;
70
+ __decorate([
71
+ (0, class_validator_1.IsUUID)(),
69
72
  __metadata("design:type", String)
70
- ], ResourceStatusUpdatePayload.prototype, "reason", void 0);
73
+ ], TerminateGameCommandPayload.prototype, "gameResourceId", void 0);
71
74
  class InitCommand {
72
- constructor(machineResourceId, payload) {
73
- this.machineResourceId = machineResourceId;
75
+ constructor(payload) {
74
76
  this.payload = payload;
75
77
  }
76
78
  getTopic() {
77
- return `${exports.AGENT_STRING}/${this.machineResourceId}/${exports.COMMAND_STRING}/${InitCommand.COMMAND_NAME}`;
79
+ return `${exports.AGENT_STRING}/${this.payload.machineResourceId}/${exports.COMMAND_STRING}/${InitCommand.COMMAND_NAME}`;
78
80
  }
79
81
  }
80
82
  exports.InitCommand = InitCommand;
81
83
  InitCommand.COMMAND_NAME = 'init';
82
- __decorate([
83
- (0, class_validator_1.IsUUID)(),
84
- __metadata("design:type", String)
85
- ], InitCommand.prototype, "machineResourceId", void 0);
86
84
  __decorate([
87
85
  (0, decorators_1.ValidateNestedType)(() => InitCommandPayload),
88
86
  __metadata("design:type", InitCommandPayload)
89
87
  ], InitCommand.prototype, "payload", void 0);
90
88
  class StartGameCommand {
91
- constructor(machineResourceId, payload) {
92
- this.machineResourceId = machineResourceId;
89
+ constructor(payload) {
93
90
  this.payload = payload;
94
91
  }
95
92
  getTopic() {
96
- return `${exports.AGENT_STRING}/${this.machineResourceId}/${exports.COMMAND_STRING}/${StartGameCommand.COMMAND_NAME}`;
93
+ return `${exports.AGENT_STRING}/${this.payload.machineResourceId}/${exports.COMMAND_STRING}/${StartGameCommand.COMMAND_NAME}`;
97
94
  }
98
95
  }
99
96
  exports.StartGameCommand = StartGameCommand;
100
97
  StartGameCommand.COMMAND_NAME = 'start-game';
101
- __decorate([
102
- (0, class_validator_1.IsUUID)(),
103
- __metadata("design:type", String)
104
- ], StartGameCommand.prototype, "machineResourceId", void 0);
105
98
  __decorate([
106
99
  (0, decorators_1.ValidateNestedType)(() => StartGameCommandPayload),
107
100
  __metadata("design:type", StartGameCommandPayload)
108
101
  ], StartGameCommand.prototype, "payload", void 0);
109
102
  class TerminateGameCommand {
110
- constructor(machineResourceId, payload) {
111
- this.machineResourceId = machineResourceId;
103
+ constructor(payload) {
112
104
  this.payload = payload;
113
105
  }
114
106
  getTopic() {
115
- return `${exports.AGENT_STRING}/${this.machineResourceId}/${exports.COMMAND_STRING}/${TerminateGameCommand.COMMAND_NAME}`;
107
+ return `${exports.AGENT_STRING}/${this.payload.machineResourceId}/${exports.COMMAND_STRING}/${TerminateGameCommand.COMMAND_NAME}`;
116
108
  }
117
109
  }
118
110
  exports.TerminateGameCommand = TerminateGameCommand;
119
111
  TerminateGameCommand.COMMAND_NAME = 'terminate-game';
120
- __decorate([
121
- (0, class_validator_1.IsUUID)(),
122
- __metadata("design:type", String)
123
- ], TerminateGameCommand.prototype, "machineResourceId", void 0);
124
112
  __decorate([
125
113
  (0, decorators_1.ValidateNestedType)(() => TerminateGameCommandPayload),
126
114
  __metadata("design:type", TerminateGameCommandPayload)
127
115
  ], TerminateGameCommand.prototype, "payload", void 0);
128
116
  class ExportLogsCommand {
129
- constructor(machineResourceId, payload) {
130
- this.machineResourceId = machineResourceId;
117
+ constructor(payload) {
131
118
  this.payload = payload;
132
119
  }
133
120
  getTopic() {
134
- return `${exports.AGENT_STRING}/${this.machineResourceId}/${exports.COMMAND_STRING}/${ExportLogsCommand.COMMAND_NAME}`;
121
+ return `${exports.AGENT_STRING}/${this.payload.machineResourceId}/${exports.COMMAND_STRING}/${ExportLogsCommand.COMMAND_NAME}`;
135
122
  }
136
123
  }
137
124
  exports.ExportLogsCommand = ExportLogsCommand;
138
125
  ExportLogsCommand.COMMAND_NAME = 'export-logs';
139
- __decorate([
140
- (0, class_validator_1.IsUUID)(),
141
- __metadata("design:type", String)
142
- ], ExportLogsCommand.prototype, "machineResourceId", void 0);
143
126
  __decorate([
144
127
  (0, decorators_1.ValidateNestedType)(() => ExportLogsCommandPayload),
145
128
  __metadata("design:type", ExportLogsCommandPayload)
146
129
  ], ExportLogsCommand.prototype, "payload", void 0);
147
130
  class ShutdownCommand {
148
- constructor(machineResourceId) {
149
- this.payload = {};
150
- this.machineResourceId = machineResourceId;
131
+ constructor(payload) {
132
+ this.payload = payload;
151
133
  }
152
134
  getTopic() {
153
- return `${exports.AGENT_STRING}/${this.machineResourceId}/${exports.COMMAND_STRING}/${ShutdownCommand.COMMAND_NAME}`;
135
+ return `${exports.AGENT_STRING}/${this.payload.machineResourceId}/${exports.COMMAND_STRING}/${ShutdownCommand.COMMAND_NAME}`;
154
136
  }
155
137
  }
156
138
  exports.ShutdownCommand = ShutdownCommand;
157
139
  ShutdownCommand.COMMAND_NAME = 'shutdown';
158
140
  __decorate([
159
- (0, class_validator_1.IsUUID)(),
160
- __metadata("design:type", String)
161
- ], ShutdownCommand.prototype, "machineResourceId", void 0);
141
+ (0, decorators_1.ValidateNestedType)(() => ShutdownCommandPayload),
142
+ __metadata("design:type", ShutdownCommandPayload)
143
+ ], ShutdownCommand.prototype, "payload", void 0);
162
144
  class ResourceStatusUpdateCommand {
163
145
  constructor(payload) {
164
146
  this.payload = payload;
165
147
  }
166
- static getTopic(machineResourceId) {
167
- return `agent/resource-status-updates/${machineResourceId}`;
148
+ getTopic() {
149
+ return `${exports.AGENT_STRING}/${ResourceStatusUpdateCommand.COMMAND_NAME}/${this.payload.machineResourceId}`;
168
150
  }
169
151
  }
170
152
  exports.ResourceStatusUpdateCommand = ResourceStatusUpdateCommand;
@@ -173,6 +155,6 @@ __decorate([
173
155
  (0, decorators_1.ValidateNestedType)(() => ResourceStatusUpdatePayload),
174
156
  __metadata("design:type", ResourceStatusUpdatePayload)
175
157
  ], ResourceStatusUpdateCommand.prototype, "payload", void 0);
176
- exports.RESOURCE_STATUS_SUBSCRIBE_PATTERN = `agent/${ResourceStatusUpdateCommand.COMMAND_NAME}/#`;
177
- exports.AGENT_COMMAND_SUBSCRIBE_PATTERN = `agent/command/#`;
158
+ exports.RESOURCE_STATUS_SUBSCRIBE_PATTERN = `${exports.AGENT_STRING}/${ResourceStatusUpdateCommand.COMMAND_NAME}/${exports.WILDCARD_MQTT_STRING}`;
159
+ exports.AGENT_COMMAND_SUBSCRIBE_PATTERN = `${exports.AGENT_STRING}/${exports.COMMAND_STRING}/${exports.WILDCARD_MQTT_STRING}`;
178
160
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/v4/types/mqtt/types.ts"],"names":[],"mappings":";;;;;;;;;;;;AAkBA,qDAAuE;AACvE,oDAAyD;AACzD,oDAA4E;AAC5E,qDAA+D;AASlD,QAAA,YAAY,GAAG,OAAO,CAAC;AACvB,QAAA,cAAc,GAAG,SAAS,CAAA;AAEvC,MAAa,kBAAkB;CAG9B;AAHD,gDAGC;AADC;IADC,IAAA,wBAAM,EAAC,mBAAW,CAAC;;gDACF;AAGpB,MAAa,uBAAuB;CAKnC;AALD,0DAKC;AAHC;IADC,IAAA,wBAAM,GAAE;;+DACc;AAKzB,MAAa,2BAA2B;CAGvC;AAHD,kEAGC;AADC;IADC,IAAA,wBAAM,GAAE;;mEACc;AAGzB,MAAa,wBAAwB;CAMpC;AAND,4DAMC;AAJC;IADC,IAAA,wBAAM,GAAE;;gEACc;AAGvB;IADC,IAAA,0BAAQ,GAAE;;2DACO;AAGpB,MAAa,2BAA2B;CAavC;AAbD,kEAaC;AAXC;IADC,IAAA,wBAAM,GAAE;;sEACiB;AAG1B;IADC,IAAA,wBAAM,GAAE;;mEACe;AAGxB;IADC,IAAA,wBAAM,EAAC,4BAAmB,CAAC;;2DACA;AAI5B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;2DACK;AASlB,MAAa,WAAW;IAStB,YAAY,iBAAyB,EAAE,OAA2B;QAChE,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAGD,QAAQ;QACN,OAAO,GAAG,oBAAY,IAAI,IAAI,CAAC,iBAAiB,IAAI,sBAAc,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC;IACnG,CAAC;;AAjBH,kCAkBC;AAjBiB,wBAAY,GAAG,MAAM,CAAC;AAG7B;IADR,IAAA,wBAAM,GAAE;;sDAC0B;AAGnC;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC;8BACpC,kBAAkB;4CAAC;AAiB9B,MAAa,gBAAgB;IAS3B,YAAY,iBAAyB,EAAE,OAAgC;QACrE,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,oBAAY,IAAI,IAAI,CAAC,iBAAiB,IAAI,sBAAc,IAAI,gBAAgB,CAAC,YAAY,EAAE,CAAC;IACxG,CAAC;;AAhBH,4CAiBC;AAhBiB,6BAAY,GAAG,YAAY,CAAC;AAGnC;IADR,IAAA,wBAAM,GAAE;;2DAC0B;AAGnC;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC;8BACzC,uBAAuB;iDAAC;AAgBnC,MAAa,oBAAoB;IAS/B,YAAY,iBAAyB,EAAE,OAAoC;QACzE,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,oBAAY,IAAI,IAAI,CAAC,iBAAiB,IAAI,sBAAc,IAAI,oBAAoB,CAAC,YAAY,EAAE,CAAC;IAC5G,CAAC;;AAhBH,oDAiBC;AAhBiB,iCAAY,GAAG,gBAAgB,CAAC;AAGvC;IADR,IAAA,wBAAM,GAAE;;+DAC0B;AAGnC;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,2BAA2B,CAAC;8BAC7C,2BAA2B;qDAAC;AAgBvC,MAAa,iBAAiB;IAS5B,YAAY,iBAAyB,EAAE,OAAiC;QACtE,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,oBAAY,IAAI,IAAI,CAAC,iBAAiB,IAAI,sBAAc,IAAI,iBAAiB,CAAC,YAAY,EAAE,CAAC;IACzG,CAAC;;AAhBH,8CAiBC;AAhBiB,8BAAY,GAAG,aAAa,CAAC;AAGpC;IADR,IAAA,wBAAM,GAAE;;4DAC0B;AAGnC;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,wBAAwB,CAAC;8BAC1C,wBAAwB;kDAAC;AAgBpC,MAAa,eAAe;IAQ1B,YAAY,iBAAyB;QAFrC,YAAO,GAAG,EAAE,CAAC;QAGX,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,oBAAY,IAAI,IAAI,CAAC,iBAAiB,IAAI,sBAAc,IAAI,eAAe,CAAC,YAAY,EAAE,CAAC;IACvG,CAAC;;AAdH,0CAeC;AAdiB,4BAAY,GAAG,UAAU,AAAb,CAAc;AAGjC;IADR,IAAA,wBAAM,GAAE;;0DAC0B;AAiBrC,MAAa,2BAA2B;IAMpC,YAAY,OAAoC;QAC5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,iBAAyB;QACrC,OAAO,iCAAiC,iBAAiB,EAAE,CAAC;IAChE,CAAC;;AAZL,kEAaC;AAZmB,wCAAY,GAAG,wBAAwB,CAAC;AAGxD;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,2BAA2B,CAAC;8BAC7C,2BAA2B;4DAAC;AA+B5B,QAAA,iCAAiC,GAAG,SAAS,2BAA2B,CAAC,YAAY,IAAI,CAAC;AAE1F,QAAA,+BAA+B,GAAG,iBAAiB,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/v4/types/mqtt/types.ts"],"names":[],"mappings":";;;;;;;;;;;;AAkBA,qDAAuE;AACvE,oDAAyD;AACzD,oDAA4E;AAC5E,qDAA+D;AASlD,QAAA,YAAY,GAAG,OAAO,CAAC;AACvB,QAAA,cAAc,GAAG,SAAS,CAAA;AAC1B,QAAA,oBAAoB,GAAG,GAAG,CAAC;AAExC,MAAa,kBAAkB;CAG9B;AAHD,gDAGC;AADC;IADC,IAAA,wBAAM,GAAE;;6DACiB;AAG5B,MAAa,kBAAmB,SAAQ,kBAAkB;CAGzD;AAHD,gDAGC;AADC;IADC,IAAA,wBAAM,EAAC,mBAAW,CAAC;;gDACF;AAGpB,MAAa,uBAAwB,SAAQ,kBAAkB;CAE9D;AAFD,0DAEC;AAED,MAAa,wBAAyB,SAAQ,kBAAkB;CAM/D;AAND,4DAMC;AAJC;IADC,IAAA,wBAAM,GAAE;;gEACc;AAGvB;IADC,IAAA,0BAAQ,GAAE;;2DACO;AAGpB,MAAa,2BAA4B,SAAQ,kBAAkB;CAUlE;AAVD,kEAUC;AAPC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;;mEACe;AAGxB;IADC,IAAA,wBAAM,EAAC,4BAAmB,CAAC;;2DACA;AAG5B;IADC,IAAA,4BAAU,GAAE;;yDACc;AAG7B,MAAa,sBAAuB,SAAQ,kBAAkB;CAAG;AAAjE,wDAAiE;AAEjE,MAAa,2BAA4B,SAAQ,kBAAkB;CAGlE;AAHD,kEAGC;AADC;IADC,IAAA,wBAAM,GAAE;;mEACc;AASzB,MAAa,WAAW;IAMtB,YAAY,OAA2B;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAGD,QAAQ;QACN,OAAO,GAAG,oBAAY,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,sBAAc,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC;IAC3G,CAAC;;AAbH,kCAcC;AAbiB,wBAAY,GAAG,MAAM,CAAC;AAGtC;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC;8BACpC,kBAAkB;4CAAC;AAgB9B,MAAa,gBAAgB;IAO3B,YAAY,OAAgC;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,oBAAY,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,sBAAc,IAAI,gBAAgB,CAAC,YAAY,EAAE,CAAC;IAChH,CAAC;;AAbH,4CAcC;AAbiB,6BAAY,GAAG,YAAY,CAAC;AAI5C;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC;8BACzC,uBAAuB;iDAAC;AAenC,MAAa,oBAAoB;IAM/B,YAAY,OAAoC;QAC9C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,oBAAY,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,sBAAc,IAAI,oBAAoB,CAAC,YAAY,EAAE,CAAC;IACpH,CAAC;;AAZH,oDAaC;AAZiB,iCAAY,GAAG,gBAAgB,CAAC;AAGhD;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,2BAA2B,CAAC;8BAC7C,2BAA2B;qDAAC;AAevC,MAAa,iBAAiB;IAM5B,YAAY,OAAiC;QAC3C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,oBAAY,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,sBAAc,IAAI,iBAAiB,CAAC,YAAY,EAAE,CAAC;IACjH,CAAC;;AAZH,8CAaC;AAZiB,8BAAY,GAAG,aAAa,CAAC;AAG7C;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,wBAAwB,CAAC;8BAC1C,wBAAwB;kDAAC;AAepC,MAAa,eAAe;IAO1B,YAAY,OAA+B;QACzC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,oBAAY,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,sBAAc,IAAI,eAAe,CAAC,YAAY,EAAE,CAAC;IAC/G,CAAC;;AAbH,0CAcC;AAbiB,4BAAY,GAAG,UAAU,CAAC;AAG1C;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC;8BACxC,sBAAsB;gDAAC;AAgBlC,MAAa,2BAA2B;IAOpC,YAAY,OAAoC;QAC5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,QAAQ;QACJ,OAAO,GAAG,oBAAY,IAAI,2BAA2B,CAAC,YAAY,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAC3G,CAAC;;AAbL,kEAcC;AAbmB,wCAAY,GAAG,wBAAwB,CAAC;AAIxD;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,2BAA2B,CAAC;8BAC7C,2BAA2B;4DAAC;AA+B5B,QAAA,iCAAiC,GAAG,GAAG,oBAAY,IAAI,2BAA2B,CAAC,YAAY,IAAI,4BAAoB,EAAE,CAAC;AAE1H,QAAA,+BAA+B,GAAG,GAAG,oBAAY,IAAI,sBAAc,IAAI,4BAAoB,EAAE,CAAC"}
@@ -2,12 +2,17 @@ export declare enum MachineMode {
2
2
  Proton = "proton",
3
3
  Android = "android"
4
4
  }
5
- export interface ProtonGameCreationPayload {
5
+ export declare class ProtonGameCreationPayload {
6
6
  exeRelativePath: string;
7
+ machineResourceId: string;
8
+ gameResourceId?: string;
7
9
  additionalEnvironmentVariables?: Record<string, string>;
8
10
  }
9
- export interface AndroidGameCreationPayload {
11
+ export declare class AndroidGameCreationPayload {
10
12
  packageId: string;
13
+ machineResourceId: string;
14
+ gameResourceId?: string;
15
+ additionalEnvironmentVariables?: Record<string, string>;
11
16
  }
12
17
  export type GameCreationPayload = ProtonGameCreationPayload | AndroidGameCreationPayload;
13
18
  export declare enum OperationStatus {
@@ -1,11 +1,63 @@
1
1
  "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OperationStatus = exports.MachineMode = void 0;
12
+ exports.OperationStatus = exports.AndroidGameCreationPayload = exports.ProtonGameCreationPayload = exports.MachineMode = void 0;
13
+ const class_validator_1 = require("class-validator");
4
14
  var MachineMode;
5
15
  (function (MachineMode) {
6
16
  MachineMode["Proton"] = "proton";
7
17
  MachineMode["Android"] = "android";
8
18
  })(MachineMode || (exports.MachineMode = MachineMode = {}));
19
+ class ProtonGameCreationPayload {
20
+ }
21
+ exports.ProtonGameCreationPayload = ProtonGameCreationPayload;
22
+ __decorate([
23
+ (0, class_validator_1.IsString)(),
24
+ __metadata("design:type", String)
25
+ ], ProtonGameCreationPayload.prototype, "exeRelativePath", void 0);
26
+ __decorate([
27
+ (0, class_validator_1.IsUUID)(),
28
+ __metadata("design:type", String)
29
+ ], ProtonGameCreationPayload.prototype, "machineResourceId", void 0);
30
+ __decorate([
31
+ (0, class_validator_1.IsOptional)(),
32
+ (0, class_validator_1.IsUUID)(),
33
+ __metadata("design:type", String)
34
+ ], ProtonGameCreationPayload.prototype, "gameResourceId", void 0);
35
+ __decorate([
36
+ (0, class_validator_1.IsOptional)(),
37
+ (0, class_validator_1.IsObject)(),
38
+ __metadata("design:type", Object)
39
+ ], ProtonGameCreationPayload.prototype, "additionalEnvironmentVariables", void 0);
40
+ class AndroidGameCreationPayload {
41
+ }
42
+ exports.AndroidGameCreationPayload = AndroidGameCreationPayload;
43
+ __decorate([
44
+ (0, class_validator_1.IsString)(),
45
+ __metadata("design:type", String)
46
+ ], AndroidGameCreationPayload.prototype, "packageId", void 0);
47
+ __decorate([
48
+ (0, class_validator_1.IsUUID)(),
49
+ __metadata("design:type", String)
50
+ ], AndroidGameCreationPayload.prototype, "machineResourceId", void 0);
51
+ __decorate([
52
+ (0, class_validator_1.IsUUID)(),
53
+ (0, class_validator_1.IsOptional)(),
54
+ __metadata("design:type", String)
55
+ ], AndroidGameCreationPayload.prototype, "gameResourceId", void 0);
56
+ __decorate([
57
+ (0, class_validator_1.IsOptional)(),
58
+ (0, class_validator_1.IsObject)(),
59
+ __metadata("design:type", Object)
60
+ ], AndroidGameCreationPayload.prototype, "additionalEnvironmentVariables", void 0);
9
61
  var OperationStatus;
10
62
  (function (OperationStatus) {
11
63
  OperationStatus["Success"] = "success";
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/v4/types/site-controller/types.ts"],"names":[],"mappings":";;;AAOA,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,kCAAmB,CAAA;AACrB,CAAC,EAHW,WAAW,2BAAX,WAAW,QAGtB;AAiBD,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,sCAAmB,CAAA;IACnB,kCAAe,CAAA;AACjB,CAAC,EAHW,eAAe,+BAAf,eAAe,QAG1B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/v4/types/site-controller/types.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAyE;AASzE,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,kCAAmB,CAAA;AACrB,CAAC,EAHW,WAAW,2BAAX,WAAW,QAGtB;AAID,MAAa,yBAAyB;CAcrC;AAdD,8DAcC;AAZC;IADC,IAAA,0BAAQ,GAAE;;kEACa;AAGxB;IADC,IAAA,wBAAM,GAAE;;oEACiB;AAI1B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;;iEACe;AAIxB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;iFAC6C;AAG1D,MAAa,0BAA0B;CActC;AAdD,gEAcC;AAZC;IADC,IAAA,0BAAQ,GAAE;;6DACO;AAGlB;IADC,IAAA,wBAAM,GAAE;;qEACiB;AAI1B;IAFC,IAAA,wBAAM,GAAE;IACR,IAAA,4BAAU,GAAE;;kEACW;AAIxB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;kFAC6C;AAO1D,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,sCAAmB,CAAA;IACnB,kCAAe,CAAA;AACjB,CAAC,EAHW,eAAe,+BAAf,eAAe,QAG1B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ludeo/cloud-common",
3
- "version": "1.2.174-beta-yahil-1",
3
+ "version": "1.2.174-beta-yahil-3",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "author": "Yahil Didi",
@@ -30,25 +30,23 @@ import { CloudPoolType } from '../pools/type';
30
30
 
31
31
  export const AGENT_STRING = 'agent';
32
32
  export const COMMAND_STRING = 'command'
33
+ export const WILDCARD_MQTT_STRING = '#';
33
34
 
34
- export class InitCommandPayload {
35
+ export class BaseCommandPayload {
36
+ @IsUUID()
37
+ machineResourceId: string;
38
+ }
39
+
40
+ export class InitCommandPayload extends BaseCommandPayload {
35
41
  @IsEnum(MachineMode)
36
42
  mode: MachineMode;
37
43
  }
38
44
 
39
- export class StartGameCommandPayload {
40
- @IsUUID()
41
- gameResourceId: string;
42
-
45
+ export class StartGameCommandPayload extends BaseCommandPayload {
43
46
  payload: GameCreationPayload;
44
47
  }
45
48
 
46
- export class TerminateGameCommandPayload {
47
- @IsUUID()
48
- gameResourceId: string;
49
- }
50
-
51
- export class ExportLogsCommandPayload {
49
+ export class ExportLogsCommandPayload extends BaseCommandPayload {
52
50
  @IsUUID()
53
51
  gameResourceId: string;
54
52
 
@@ -56,10 +54,8 @@ export class ExportLogsCommandPayload {
56
54
  uploadURL: string;
57
55
  }
58
56
 
59
- export class ResourceStatusUpdatePayload {
60
- @IsUUID()
61
- machineResourceId: string;
62
-
57
+ export class ResourceStatusUpdatePayload extends BaseCommandPayload {
58
+ @IsOptional()
63
59
  @IsUUID()
64
60
  gameResourceId?: string; // Present for game status updates, absent for machine status
65
61
 
@@ -67,8 +63,14 @@ export class ResourceStatusUpdatePayload {
67
63
  status: CloudResourceStatus;
68
64
 
69
65
  @IsOptional()
70
- @IsString()
71
- reason?: string;
66
+ meta?: Record<string, any>;
67
+ }
68
+
69
+ export class ShutdownCommandPayload extends BaseCommandPayload {}
70
+
71
+ export class TerminateGameCommandPayload extends BaseCommandPayload {
72
+ @IsUUID()
73
+ gameResourceId: string;
72
74
  }
73
75
 
74
76
  // ========== Command Classes ==========
@@ -80,20 +82,16 @@ export class ResourceStatusUpdatePayload {
80
82
  export class InitCommand {
81
83
  static readonly COMMAND_NAME = 'init';
82
84
 
83
- @IsUUID()
84
- readonly machineResourceId: string;
85
-
86
85
  @ValidateNestedType(() => InitCommandPayload)
87
86
  payload: InitCommandPayload;
88
87
 
89
- constructor(machineResourceId: string, payload: InitCommandPayload) {
90
- this.machineResourceId = machineResourceId;
88
+ constructor(payload: InitCommandPayload) {
91
89
  this.payload = payload;
92
90
  }
93
-
91
+
94
92
  /** Get topic for publishing this command */
95
93
  getTopic(): string {
96
- return `${AGENT_STRING}/${this.machineResourceId}/${COMMAND_STRING}/${InitCommand.COMMAND_NAME}`;
94
+ return `${AGENT_STRING}/${this.payload.machineResourceId}/${COMMAND_STRING}/${InitCommand.COMMAND_NAME}`;
97
95
  }
98
96
  }
99
97
 
@@ -104,19 +102,16 @@ export class InitCommand {
104
102
  export class StartGameCommand {
105
103
  static readonly COMMAND_NAME = 'start-game';
106
104
 
107
- @IsUUID()
108
- readonly machineResourceId: string;
109
105
 
110
106
  @ValidateNestedType(() => StartGameCommandPayload)
111
107
  payload: StartGameCommandPayload;
112
108
 
113
- constructor(machineResourceId: string, payload: StartGameCommandPayload) {
114
- this.machineResourceId = machineResourceId;
109
+ constructor(payload: StartGameCommandPayload) {
115
110
  this.payload = payload;
116
111
  }
117
112
 
118
113
  getTopic(): string {
119
- return `${AGENT_STRING}/${this.machineResourceId}/${COMMAND_STRING}/${StartGameCommand.COMMAND_NAME}`;
114
+ return `${AGENT_STRING}/${this.payload.machineResourceId}/${COMMAND_STRING}/${StartGameCommand.COMMAND_NAME}`;
120
115
  }
121
116
  }
122
117
 
@@ -127,19 +122,15 @@ export class StartGameCommand {
127
122
  export class TerminateGameCommand {
128
123
  static readonly COMMAND_NAME = 'terminate-game';
129
124
 
130
- @IsUUID()
131
- readonly machineResourceId: string;
132
-
133
125
  @ValidateNestedType(() => TerminateGameCommandPayload)
134
126
  payload: TerminateGameCommandPayload;
135
127
 
136
- constructor(machineResourceId: string, payload: TerminateGameCommandPayload) {
137
- this.machineResourceId = machineResourceId;
128
+ constructor(payload: TerminateGameCommandPayload) {
138
129
  this.payload = payload;
139
130
  }
140
131
 
141
132
  getTopic(): string {
142
- return `${AGENT_STRING}/${this.machineResourceId}/${COMMAND_STRING}/${TerminateGameCommand.COMMAND_NAME}`;
133
+ return `${AGENT_STRING}/${this.payload.machineResourceId}/${COMMAND_STRING}/${TerminateGameCommand.COMMAND_NAME}`;
143
134
  }
144
135
  }
145
136
 
@@ -147,22 +138,18 @@ export class TerminateGameCommand {
147
138
  * Export logs command - Export logs to a specified URL
148
139
  * Topic: agent/{machineResourceId}/command/export-logs
149
140
  */
150
- export class ExportLogsCommand {
141
+ export class ExportLogsCommand {
151
142
  static readonly COMMAND_NAME = 'export-logs';
152
143
 
153
- @IsUUID()
154
- readonly machineResourceId: string;
155
-
156
144
  @ValidateNestedType(() => ExportLogsCommandPayload)
157
145
  payload: ExportLogsCommandPayload;
158
146
 
159
- constructor(machineResourceId: string, payload: ExportLogsCommandPayload) {
160
- this.machineResourceId = machineResourceId;
147
+ constructor(payload: ExportLogsCommandPayload) {
161
148
  this.payload = payload;
162
149
  }
163
150
 
164
151
  getTopic(): string {
165
- return `${AGENT_STRING}/${this.machineResourceId}/${COMMAND_STRING}/${ExportLogsCommand.COMMAND_NAME}`;
152
+ return `${AGENT_STRING}/${this.payload.machineResourceId}/${COMMAND_STRING}/${ExportLogsCommand.COMMAND_NAME}`;
166
153
  }
167
154
  }
168
155
 
@@ -170,20 +157,19 @@ export class ExportLogsCommand {
170
157
  * Shutdown command - Gracefully shutdown the agent
171
158
  * Topic: agent/{machineResourceId}/command/shutdown
172
159
  */
173
- export class ShutdownCommand {
160
+ export class ShutdownCommand {
174
161
  static readonly COMMAND_NAME = 'shutdown';
175
162
 
176
- @IsUUID()
177
- readonly machineResourceId: string;
163
+ @ValidateNestedType(() => ShutdownCommandPayload)
164
+ payload: ShutdownCommandPayload;
178
165
 
179
- payload = {};
180
166
 
181
- constructor(machineResourceId: string) {
182
- this.machineResourceId = machineResourceId;
167
+ constructor(payload: ShutdownCommandPayload) {
168
+ this.payload = payload;
183
169
  }
184
170
 
185
171
  getTopic(): string {
186
- return `${AGENT_STRING}/${this.machineResourceId}/${COMMAND_STRING}/${ShutdownCommand.COMMAND_NAME}`;
172
+ return `${AGENT_STRING}/${this.payload.machineResourceId}/${COMMAND_STRING}/${ShutdownCommand.COMMAND_NAME}`;
187
173
  }
188
174
  }
189
175
 
@@ -194,6 +180,7 @@ export class ShutdownCommand {
194
180
  export class ResourceStatusUpdateCommand {
195
181
  static readonly COMMAND_NAME = 'resource-status-update';
196
182
 
183
+
197
184
  @ValidateNestedType(() => ResourceStatusUpdatePayload)
198
185
  payload: ResourceStatusUpdatePayload;
199
186
 
@@ -201,8 +188,8 @@ export class ResourceStatusUpdateCommand {
201
188
  this.payload = payload;
202
189
  }
203
190
 
204
- static getTopic(machineResourceId: string): string {
205
- return `agent/resource-status-updates/${machineResourceId}`;
191
+ getTopic(): string {
192
+ return `${AGENT_STRING}/${ResourceStatusUpdateCommand.COMMAND_NAME}/${this.payload.machineResourceId}`;
206
193
  }
207
194
  }
208
195
 
@@ -226,7 +213,7 @@ export class ResourceStatusUpdateCommand {
226
213
 
227
214
 
228
215
  /** Pattern for site-controller to subscribe to ALL status updates from ALL agents */
229
- export const RESOURCE_STATUS_SUBSCRIBE_PATTERN = `agent/${ResourceStatusUpdateCommand.COMMAND_NAME}/#`;
216
+ export const RESOURCE_STATUS_SUBSCRIBE_PATTERN = `${AGENT_STRING}/${ResourceStatusUpdateCommand.COMMAND_NAME}/${WILDCARD_MQTT_STRING}`;
230
217
 
231
- export const AGENT_COMMAND_SUBSCRIBE_PATTERN = `agent/command/#`;
218
+ export const AGENT_COMMAND_SUBSCRIBE_PATTERN = `${AGENT_STRING}/${COMMAND_STRING}/${WILDCARD_MQTT_STRING}`;
232
219