@alwaysai/device-agent 0.2.0 → 1.0.0

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.
Files changed (84) hide show
  1. package/LICENSE +12 -0
  2. package/lib/application-control/config.d.ts.map +1 -1
  3. package/lib/application-control/config.js +6 -1
  4. package/lib/application-control/config.js.map +1 -1
  5. package/lib/application-control/index.d.ts +2 -2
  6. package/lib/application-control/index.d.ts.map +1 -1
  7. package/lib/application-control/index.js +2 -2
  8. package/lib/application-control/index.js.map +1 -1
  9. package/lib/application-control/install.d.ts +2 -2
  10. package/lib/application-control/install.d.ts.map +1 -1
  11. package/lib/application-control/install.js +10 -0
  12. package/lib/application-control/install.js.map +1 -1
  13. package/lib/application-control/status.d.ts +3 -3
  14. package/lib/application-control/status.d.ts.map +1 -1
  15. package/lib/application-control/status.js +4 -4
  16. package/lib/application-control/status.js.map +1 -1
  17. package/lib/cloud-connection/device-agent-cloud-connection.d.ts +7 -7
  18. package/lib/cloud-connection/device-agent-cloud-connection.d.ts.map +1 -1
  19. package/lib/cloud-connection/device-agent-cloud-connection.js +158 -100
  20. package/lib/cloud-connection/device-agent-cloud-connection.js.map +1 -1
  21. package/lib/cloud-connection/live-updates-handler.d.ts +9 -9
  22. package/lib/cloud-connection/live-updates-handler.d.ts.map +1 -1
  23. package/lib/cloud-connection/live-updates-handler.js +45 -42
  24. package/lib/cloud-connection/live-updates-handler.js.map +1 -1
  25. package/lib/cloud-connection/live-updates-handler.test.js +6 -5
  26. package/lib/cloud-connection/live-updates-handler.test.js.map +1 -1
  27. package/lib/cloud-connection/message-builder.d.ts +7 -0
  28. package/lib/cloud-connection/message-builder.d.ts.map +1 -0
  29. package/lib/cloud-connection/message-builder.js +63 -0
  30. package/lib/cloud-connection/message-builder.js.map +1 -0
  31. package/lib/cloud-connection/messages.d.ts +5 -15
  32. package/lib/cloud-connection/messages.d.ts.map +1 -1
  33. package/lib/cloud-connection/messages.js +22 -31
  34. package/lib/cloud-connection/messages.js.map +1 -1
  35. package/lib/cloud-connection/publisher.d.ts +4 -5
  36. package/lib/cloud-connection/publisher.d.ts.map +1 -1
  37. package/lib/cloud-connection/publisher.js +12 -21
  38. package/lib/cloud-connection/publisher.js.map +1 -1
  39. package/lib/cloud-connection/transaction-queue.d.ts +12 -0
  40. package/lib/cloud-connection/transaction-queue.d.ts.map +1 -0
  41. package/lib/cloud-connection/transaction-queue.js +38 -0
  42. package/lib/cloud-connection/transaction-queue.js.map +1 -0
  43. package/lib/cloud-connection/transaction-queue.test.d.ts +2 -0
  44. package/lib/cloud-connection/transaction-queue.test.d.ts.map +1 -0
  45. package/lib/cloud-connection/transaction-queue.test.js +46 -0
  46. package/lib/cloud-connection/transaction-queue.test.js.map +1 -0
  47. package/lib/local-connection/rabbitmq-connection.d.ts.map +1 -1
  48. package/lib/local-connection/rabbitmq-connection.js +5 -1
  49. package/lib/local-connection/rabbitmq-connection.js.map +1 -1
  50. package/lib/subcommands/app/index.d.ts.map +1 -1
  51. package/lib/subcommands/app/index.js +1 -0
  52. package/lib/subcommands/app/index.js.map +1 -1
  53. package/lib/subcommands/app/models.d.ts +5 -0
  54. package/lib/subcommands/app/models.d.ts.map +1 -1
  55. package/lib/subcommands/app/models.js +42 -1
  56. package/lib/subcommands/app/models.js.map +1 -1
  57. package/lib/subcommands/app/status.js +1 -1
  58. package/lib/subcommands/app/status.js.map +1 -1
  59. package/lib/subcommands/app/version.d.ts.map +1 -1
  60. package/lib/subcommands/app/version.js +9 -11
  61. package/lib/subcommands/app/version.js.map +1 -1
  62. package/lib/util/logger.d.ts.map +1 -1
  63. package/lib/util/logger.js +3 -1
  64. package/lib/util/logger.js.map +1 -1
  65. package/package.json +5 -4
  66. package/readme.md +30 -1
  67. package/src/application-control/config.ts +5 -1
  68. package/src/application-control/index.ts +2 -2
  69. package/src/application-control/install.ts +17 -4
  70. package/src/application-control/status.ts +9 -8
  71. package/src/cloud-connection/device-agent-cloud-connection.ts +225 -132
  72. package/src/cloud-connection/live-updates-handler.test.ts +6 -5
  73. package/src/cloud-connection/live-updates-handler.ts +90 -64
  74. package/src/cloud-connection/message-builder.ts +117 -0
  75. package/src/cloud-connection/messages.ts +27 -35
  76. package/src/cloud-connection/publisher.ts +17 -30
  77. package/src/cloud-connection/transaction-queue.test.ts +55 -0
  78. package/src/cloud-connection/transaction-queue.ts +40 -0
  79. package/src/local-connection/rabbitmq-connection.ts +5 -1
  80. package/src/subcommands/app/index.ts +3 -1
  81. package/src/subcommands/app/models.ts +44 -0
  82. package/src/subcommands/app/status.ts +2 -2
  83. package/src/subcommands/app/version.ts +16 -14
  84. package/src/util/logger.ts +5 -1
@@ -22,6 +22,10 @@ const passthrough_handler_1 = require("./passthrough-handler");
22
22
  const environment_1 = require("../environment");
23
23
  const messages_1 = require("./messages");
24
24
  const sleep_1 = require("../util/sleep");
25
+ const backup_1 = require("../application-control/backup");
26
+ const transaction_queue_1 = require("./transaction-queue");
27
+ const message_builder_1 = require("./message-builder");
28
+ const device_agent_schemas_2 = require("@alwaysai/device-agent-schemas");
25
29
  class DeviceAgentCloudConnection {
26
30
  /*=================================================================
27
31
  Public interface
@@ -30,7 +34,7 @@ class DeviceAgentCloudConnection {
30
34
  this.device = awsIot.device;
31
35
  this.clientId = (0, get_device_id_1.getDeviceUuid)();
32
36
  this.host = (0, urls_1.getIoTCoreEndpointUrl)();
33
- this.toDeviceTopic = (0, device_agent_schemas_1.getDeviceTopic)(this.clientId);
37
+ this.toDeviceTopic = (0, device_agent_schemas_1.getToDeviceTopic)(this.clientId);
34
38
  this.secureTunnelNotifyTopic = `$aws/things/${this.clientId}/tunnels/notify`;
35
39
  // FIXME: Add support for multiple simultaneous project updates
36
40
  this.appCfgUpdateQueue = [];
@@ -49,15 +53,18 @@ class DeviceAgentCloudConnection {
49
53
  }
50
54
  return true;
51
55
  };
52
- this.handleAppVersionControl = async (payload) => {
56
+ this.handleAppVersionControl = async (payload, txId) => {
53
57
  switch (payload.baseCommand) {
54
58
  case device_agent_schemas_1.keyMirrors.appVersionControl.install: {
55
59
  const { projectId, appReleaseHash } = payload;
56
- const signedUrlsRequest = { projectId, appReleaseHash };
57
- await this.publishCloudRequest({
58
- messageType: device_agent_schemas_1.keyMirrors.agentMessageType.signed_urls_request,
59
- signedUrlsRequest
60
- });
60
+ const signedUrlsRequestPayload = {
61
+ signedUrlsRequest: {
62
+ projectId,
63
+ appReleaseHash
64
+ }
65
+ };
66
+ const message = await (0, message_builder_1.buildSignedUrlsRequestMessage)(signedUrlsRequestPayload, txId);
67
+ await this.publishCloudRequest(message);
61
68
  return false;
62
69
  }
63
70
  case device_agent_schemas_1.keyMirrors.appVersionControl.uninstall: {
@@ -70,17 +77,8 @@ class DeviceAgentCloudConnection {
70
77
  return true;
71
78
  }
72
79
  };
73
- this.handleAgentCommand = async (message) => {
74
- switch (message.messageType) {
75
- case device_agent_schemas_1.keyMirrors.clientMessageType.live_state_updates:
76
- await this.liveUpdatesHandler.handleToggles(message.liveUpdatesToggles);
77
- break;
78
- default:
79
- logger_1.logger.error(`Invalid agent action message type from message '${message}'`);
80
- }
81
- };
82
- this.handleAppInstallCloudResponse = async (payload) => {
83
- const { projectId, appReleaseHash, appInstallPayload, modelsInstallPayload } = payload.appInstallCloudResponse;
80
+ this.handleAppInstallCloudResponsePayload = async (payload) => {
81
+ const { projectId, appReleaseHash, appInstallPayload, modelsInstallPayload } = payload.appInstallResponse;
84
82
  const signedUrlsPayload = {
85
83
  appInstallPayload,
86
84
  modelsInstallPayload
@@ -88,18 +86,18 @@ class DeviceAgentCloudConnection {
88
86
  await this.atomicApplicationUpdate(application_control_1.installApp, [{ projectId, appReleaseHash, signedUrlsPayload }], projectId);
89
87
  return true;
90
88
  };
91
- this.handleModelsInstallCloudResponse = async (payload) => {
89
+ this.handleModelsInstallCloudResponsePayload = async (payload) => {
92
90
  const update = this.appCfgUpdateQueue.shift();
93
91
  if (update === undefined) {
94
92
  throw new Error('Unknown error while updating models via application config! No config present for model update.');
95
93
  }
96
94
  const { appCfgUpdate, envVarUpdate } = update;
97
- const projectId = payload.modelsInstallCloudResponse.projectId;
95
+ const projectId = payload.modelsInstallResponse.projectId;
98
96
  if (appCfgUpdate) {
99
97
  await this.atomicApplicationUpdate(application_control_1.updateModelsWithPresignedUrls, [
100
98
  {
101
99
  projectId,
102
- modelInstallPayloads: payload.modelsInstallCloudResponse.newModels,
100
+ modelInstallPayloads: payload.modelsInstallResponse.newModels,
103
101
  newAppCfg: appCfgUpdate.newAppCfg
104
102
  }
105
103
  ], projectId);
@@ -109,7 +107,7 @@ class DeviceAgentCloudConnection {
109
107
  }
110
108
  return true;
111
109
  };
112
- this.handleAppConfigUpdates = async (updates) => {
110
+ this.handleAppConfigUpdates = async (updates, txId) => {
113
111
  for (const update of updates) {
114
112
  const { projectId, appCfgUpdate, envVarUpdate } = update;
115
113
  if (appCfgUpdate &&
@@ -118,13 +116,14 @@ class DeviceAgentCloudConnection {
118
116
  // When there are model updates request signed URLs and wait to apply config changes
119
117
  const { updatedModels } = appCfgUpdate;
120
118
  logger_1.logger.debug(`Requesting presigned urls from cloud for model versions: ${JSON.stringify(updatedModels)}`);
121
- this.publisher.publishToCloud({
122
- messageType: device_agent_schemas_1.keyMirrors.agentMessageType.signed_urls_request,
119
+ const modelsOnlyUrlsRequestPayload = {
123
120
  modelsOnlyUrlsRequest: {
124
121
  projectId,
125
122
  models: updatedModels
126
123
  }
127
- });
124
+ };
125
+ const message = await (0, message_builder_1.buildSignedUrlsRequestMessage)(modelsOnlyUrlsRequestPayload, txId);
126
+ this.publisher.publishToCloud(message);
128
127
  this.appCfgUpdateQueue.push(update);
129
128
  return false;
130
129
  }
@@ -154,7 +153,8 @@ class DeviceAgentCloudConnection {
154
153
  this.publisher = new publisher_1.Publisher(this.device, this.clientId);
155
154
  this.shadowHandler = new shadow_handler_1.ShadowHandler(this.clientId, this.publisher);
156
155
  this.cmdStatusMgr = new cmd_status_1.CmdStatusManager();
157
- this.liveUpdatesHandler = new live_updates_handler_1.LiveUpdatesHandler(this.publisher);
156
+ this.liveUpdatesHandler = new live_updates_handler_1.LiveUpdatesHandler(this.publisher, this.clientId);
157
+ this.txnQueue = new transaction_queue_1.TransactionQueue();
158
158
  this.subscribe(this.toDeviceTopic);
159
159
  this.subscribe(this.secureTunnelNotifyTopic);
160
160
  this.subscribe(this.shadowHandler.shadowTopics.projects.getAccepted);
@@ -163,8 +163,8 @@ class DeviceAgentCloudConnection {
163
163
  this.subscribe(this.shadowHandler.shadowTopics.projects.updateAccepted);
164
164
  this.subscribe(this.shadowHandler.shadowTopics.projects.updateRejected);
165
165
  }
166
- async publishCloudRequest(payload) {
167
- this.publisher.publishToCloud(payload);
166
+ async publishCloudRequest(message) {
167
+ this.publisher.publishToCloud(message);
168
168
  }
169
169
  subscribe(topic) {
170
170
  logger_1.logger.info(`Subscribing to ${topic}`);
@@ -182,53 +182,59 @@ class DeviceAgentCloudConnection {
182
182
  }
183
183
  // eslint-disable-next-line
184
184
  async atomicApplicationUpdate(func, args, projectId) {
185
+ // First try to create a backup, so that there is one available if something goes wrong in the next try:catch.
186
+ if (await (0, agent_config_1.AgentConfigFile)().isAppPresent({ projectId })) {
187
+ try {
188
+ await (0, backup_1.createAppBackup)({ projectId });
189
+ }
190
+ catch (e) {
191
+ logger_1.logger.error(`Could not create a backup for the project: ${projectId}:\n${e.message}\n${e.stack}`);
192
+ }
193
+ }
185
194
  try {
186
195
  const out = await func(...args);
187
196
  await this.shadowHandler.updateProjectShadow(projectId);
188
197
  return out;
189
198
  }
190
- catch (e) {
191
- logger_1.logger.error(`Failed to update ${projectId}:\n${e.message}\n${e.stack}`);
192
- // uninstall the failed app to put system back in good state
193
- // TODO: Replace this with rollback
199
+ catch (errorAppUpdate) {
200
+ logger_1.logger.error(`Failed to update ${projectId}:\n${JSON.stringify(errorAppUpdate)}}`);
201
+ // If something goes wrong, first try to rollback
194
202
  try {
195
- await (0, application_control_1.uninstallApp)({ projectId });
203
+ await (0, backup_1.rollbackApp)({ projectId });
204
+ logger_1.logger.error(`Application update failed, rolled back to previous version: ${errorAppUpdate}`);
196
205
  }
197
- finally {
198
- this.shadowHandler.clearAppConfig(projectId);
206
+ catch (errorRollbackApp) {
207
+ // and if that fails, uninstall the app as a last resort.
208
+ try {
209
+ await (0, application_control_1.uninstallApp)({ projectId });
210
+ }
211
+ finally {
212
+ this.shadowHandler.clearAppConfig(projectId);
213
+ }
214
+ logger_1.logger.error(`Application update failed, rolled back to previous version: ${errorAppUpdate}`);
215
+ throw new Error(`Application update and rollback failed, uninstalled the application: ${errorAppUpdate}`);
199
216
  }
200
- throw e;
217
+ throw new Error(`Application update failed, rolled the application back: ${errorAppUpdate}`);
201
218
  }
202
219
  }
203
220
  // eslint-disable-next-line
204
221
  async atomicCmd(props) {
205
- const { func, args, projectId } = props;
206
- let appReleaseHash = props.appReleaseHash;
207
- if (appReleaseHash === undefined) {
208
- try {
209
- appReleaseHash = await (0, agent_config_1.AgentConfigFile)().getAppVersion({
210
- projectId
211
- });
212
- }
213
- catch (e) {
214
- logger_1.logger.warn(`Unable to get app release hash for ${projectId}!`);
215
- appReleaseHash = '';
216
- }
217
- }
222
+ const { func, args, projectId, txId } = props;
218
223
  try {
219
224
  await this.cmdStatusMgr.start(projectId);
220
- await this.liveUpdatesHandler.enableAppInstallStatus({
221
- projectId,
222
- appReleaseHash
225
+ await this.liveUpdatesHandler.enableTransactionStatus({
226
+ txId
223
227
  });
224
228
  const completed = await func(...args);
225
229
  if (completed) {
226
230
  await this.cmdStatusMgr.stop(projectId);
227
- await this.liveUpdatesHandler.disableAppInstallStatus({
228
- projectId
231
+ await this.liveUpdatesHandler.disableTransactionStatus({
232
+ txId
229
233
  });
234
+ const sucessStatusResponsePayload = await (0, messages_1.getStatusResponsePayload)(device_agent_schemas_1.keyMirrors.statusResponse.success, '');
230
235
  // Send final status message
231
- this.publisher.publishToClient(await (0, messages_1.getAppInstallStatusMessage)(device_agent_schemas_1.keyMirrors.appInstallStatus.success, '', appReleaseHash));
236
+ const message = await (0, message_builder_1.buildStatusResponseMessage)(sucessStatusResponsePayload, txId);
237
+ this.publisher.publishToClient(message);
232
238
  }
233
239
  return completed;
234
240
  }
@@ -237,11 +243,14 @@ class DeviceAgentCloudConnection {
237
243
  const message = e.message;
238
244
  // uninstall the failed app to put system back in good state
239
245
  await this.cmdStatusMgr.stop(projectId);
240
- await this.liveUpdatesHandler.disableAppInstallStatus({
241
- projectId
246
+ await this.liveUpdatesHandler.disableTransactionStatus({
247
+ txId
242
248
  });
249
+ const failureStatusResponsePayload = await (0, messages_1.getStatusResponsePayload)(device_agent_schemas_1.keyMirrors.statusResponse.failure, message);
243
250
  // Send final status message
244
- this.publisher.publishToClient(await (0, messages_1.getAppInstallStatusMessage)(device_agent_schemas_1.keyMirrors.appInstallStatus.failure, message, appReleaseHash));
251
+ const failureStatusResponseMessage = await (0, message_builder_1.buildStatusResponseMessage)(failureStatusResponsePayload, txId);
252
+ this.publisher.publishToClient(failureStatusResponseMessage);
253
+ return true;
245
254
  }
246
255
  }
247
256
  getClientId() {
@@ -259,70 +268,109 @@ class DeviceAgentCloudConnection {
259
268
  async updateProjectShadow(projectId) {
260
269
  await this.shadowHandler.updateProjectShadow(projectId);
261
270
  }
262
- async handleClientMessage({ topic, message }) {
263
- const valid = (0, device_agent_schemas_1.validateClientMessage)(message);
271
+ async handleDeviceAgentMessage({ topic, message }) {
272
+ const valid = (0, device_agent_schemas_1.validateToDeviceAgentMessage)(message);
264
273
  if (!valid) {
265
- logger_1.logger.error(`Error validating message: ${JSON.stringify({ topic, message, errors: device_agent_schemas_1.validateClientMessage.errors }, null, 2)}`);
274
+ logger_1.logger.error(`Error validating message: ${JSON.stringify({ topic, message, errors: device_agent_schemas_1.validateToDeviceAgentMessage.errors }, null, 2)}`);
266
275
  // TODO: Send generic error response
267
276
  return;
268
277
  }
269
- const payload = message.payload;
270
- switch (payload.messageType) {
271
- case device_agent_schemas_1.keyMirrors.clientMessageType.app_state_control: {
272
- const projectId = payload.appStateControl.projectId;
273
- await this.atomicCmd({
274
- func: this.handleAppStateControl,
275
- args: [payload.appStateControl],
276
- projectId
277
- });
278
+ const txId = message.txId;
279
+ switch (message.messageType) {
280
+ case device_agent_schemas_1.keyMirrors.toDeviceAgentMessageType.app_state_control: {
281
+ // txId sent from cloud, just need to continue it
282
+ const payload = message.payload;
283
+ const projectId = payload.projectId;
284
+ try {
285
+ this.txnQueue.addTxIdToQueue(txId, projectId);
286
+ const completed = await this.atomicCmd({
287
+ func: this.handleAppStateControl,
288
+ args: [message.payload],
289
+ projectId,
290
+ txId
291
+ });
292
+ if (completed) {
293
+ this.txnQueue.completeTxn(txId);
294
+ }
295
+ }
296
+ catch (e) {
297
+ logger_1.logger.error(`Error processing application state control request: ${e}!`);
298
+ }
278
299
  break;
279
300
  }
280
- case device_agent_schemas_1.keyMirrors.clientMessageType.app_version_control: {
281
- const projectId = payload.appVersionControl.projectId;
282
- const appReleaseHash = payload.appVersionControl.baseCommand ===
283
- device_agent_schemas_1.keyMirrors.appVersionControl.install
284
- ? payload.appVersionControl.appReleaseHash
301
+ case device_agent_schemas_1.keyMirrors.toDeviceAgentMessageType.app_version_control: {
302
+ // txId sent from cloud, just need to continue it
303
+ const payload = message.payload;
304
+ const projectId = payload.projectId;
305
+ const appReleaseHash = payload.baseCommand === device_agent_schemas_1.keyMirrors.appVersionControl.install
306
+ ? payload.appReleaseHash
285
307
  : undefined;
286
- await this.atomicCmd({
287
- func: this.handleAppVersionControl,
288
- args: [payload.appVersionControl],
289
- projectId,
290
- appReleaseHash
291
- });
308
+ try {
309
+ this.txnQueue.addTxIdToQueue(txId, projectId);
310
+ const completed = await this.atomicCmd({
311
+ func: this.handleAppVersionControl,
312
+ args: [payload, txId],
313
+ projectId,
314
+ txId
315
+ });
316
+ if (completed) {
317
+ this.txnQueue.completeTxn(txId);
318
+ }
319
+ }
320
+ catch (e) {
321
+ logger_1.logger.error(`Error processing application install request: ${e}!`);
322
+ }
292
323
  break;
293
324
  }
294
- case device_agent_schemas_1.keyMirrors.clientMessageType.live_state_updates: {
325
+ case device_agent_schemas_1.keyMirrors.toDeviceAgentMessageType.live_state_updates: {
326
+ const payload = message.payload;
295
327
  // TODO: Send response?
296
- await this.handleAgentCommand(payload);
328
+ await this.liveUpdatesHandler.handleToggles(payload, txId);
297
329
  break;
298
330
  }
299
- case device_agent_schemas_1.keyMirrors.clientMessageType.app_install_cloud_response: {
300
- const { projectId, appReleaseHash } = payload.appInstallCloudResponse;
301
- await this.atomicCmd({
302
- func: this.handleAppInstallCloudResponse,
331
+ case device_agent_schemas_1.keyMirrors.toDeviceAgentMessageType.app_install_response: {
332
+ const payload = message.payload;
333
+ const { projectId, appReleaseHash } = payload.appInstallResponse;
334
+ if (txId !== this.txnQueue.getCurrentTxId()) {
335
+ throw new Error(`App install response received a message for a transaction ID ${txId} that is not currently underway (${this.txnQueue.getCurrentTxId()})!`);
336
+ }
337
+ const completed = await this.atomicCmd({
338
+ func: this.handleAppInstallCloudResponsePayload,
303
339
  args: [payload],
304
340
  projectId,
305
- appReleaseHash
341
+ txId
306
342
  });
343
+ if (completed) {
344
+ this.txnQueue.completeTxn(txId);
345
+ }
307
346
  break;
308
347
  }
309
- case device_agent_schemas_1.keyMirrors.clientMessageType.models_install_cloud_response: {
348
+ case device_agent_schemas_1.keyMirrors.toDeviceAgentMessageType.models_install_response: {
310
349
  // This message doesn't have appReleaseHash in it's payload, but
311
350
  // atomicCmd should be able to read it from the installed app
312
- const { projectId } = payload.modelsInstallCloudResponse;
313
- await this.atomicCmd({
314
- func: this.handleModelsInstallCloudResponse,
351
+ const payload = message.payload;
352
+ const { projectId } = payload.modelsInstallResponse;
353
+ if (txId !== this.txnQueue.getCurrentTxId()) {
354
+ throw new Error(`Model install response received a message for a transaction ID ${txId} that is not currently underway (${this.txnQueue.getCurrentTxId()})!`);
355
+ }
356
+ const completed = await this.atomicCmd({
357
+ func: this.handleModelsInstallCloudResponsePayload,
315
358
  args: [payload],
316
- projectId
359
+ projectId,
360
+ txId
317
361
  });
362
+ if (completed) {
363
+ this.txnQueue.completeTxn(txId);
364
+ }
318
365
  break;
319
366
  }
320
367
  default:
321
- logger_1.logger.error(`Invalid client message: '${JSON.stringify({ topic, message }, null, 2)}'`);
368
+ logger_1.logger.error(`Invalid client message: '${JSON.stringify({ topic, message, txId }, null, 2)}'`);
322
369
  }
323
370
  }
324
371
  async handleMessage(topic, message) {
325
372
  logger_1.logger.debug(`Received message: ${JSON.stringify({ topic, message }, null, 2)}`);
373
+ const txId = message.txId || (0, device_agent_schemas_2.generateTxId)(); // txId should be passed in for DeviceAgentMessage messages but shadow updates won't have this
326
374
  switch (topic) {
327
375
  case this.shadowHandler.shadowTopics.projects.getAccepted:
328
376
  case this.shadowHandler.shadowTopics.projects.updateDelta: {
@@ -336,11 +384,21 @@ class DeviceAgentCloudConnection {
336
384
  // so this should be sufficient for now.
337
385
  const projectId = shadowUpdates[0].projectId;
338
386
  try {
339
- await this.atomicCmd({
340
- func: this.handleAppConfigUpdates,
341
- args: [shadowUpdates],
342
- projectId
343
- });
387
+ try {
388
+ this.txnQueue.addTxIdToQueue(txId, projectId);
389
+ const completed = await this.atomicCmd({
390
+ func: this.handleAppConfigUpdates,
391
+ args: [shadowUpdates, txId],
392
+ projectId,
393
+ txId
394
+ });
395
+ if (completed) {
396
+ this.txnQueue.completeTxn(txId);
397
+ }
398
+ }
399
+ catch (e) {
400
+ logger_1.logger.error(`Error processing model update request: ${e}!`);
401
+ }
344
402
  }
345
403
  catch (e) {
346
404
  logger_1.logger.error(`Error handling shadow message: ${e.message}`);
@@ -354,7 +412,7 @@ class DeviceAgentCloudConnection {
354
412
  // Not handling these for now
355
413
  break;
356
414
  case this.toDeviceTopic:
357
- await this.handleClientMessage({
415
+ await this.handleDeviceAgentMessage({
358
416
  topic,
359
417
  message
360
418
  });
@@ -1 +1 @@
1
- {"version":3,"file":"device-agent-cloud-connection.js","sourceRoot":"","sources":["../../src/cloud-connection/device-agent-cloud-connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device-agent-cloud-connection.js","sourceRoot":"","sources":["../../src/cloud-connection/device-agent-cloud-connection.ts"],"names":[],"mappings":"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"}
@@ -1,29 +1,29 @@
1
- import { LiveUpdatesToggles } from '@alwaysai/device-agent-schemas';
1
+ import { LiveStateUpdatesTogglePayload } from '@alwaysai/device-agent-schemas';
2
2
  import { Publisher } from './publisher';
3
3
  export declare class LiveUpdatesHandler {
4
4
  private publisher;
5
+ private clientId;
5
6
  private liveUpdatesTimeout;
6
7
  private liveUpdatesAlive;
7
8
  private liveUpdatesSleepIntervals;
8
9
  private appLogStreams;
9
- private appInstallStatuses;
10
+ private transactionStatuses;
10
11
  private startAppLogStream;
11
12
  private continuePublishing;
12
13
  private getLiveUpdatesInterval;
13
14
  private setLiveUpdates;
14
15
  private restartLiveUpdatesTimeout;
15
16
  private startPublishingLiveUpdates;
16
- constructor(publisher: Publisher);
17
+ constructor(publisher: Publisher, clientId: string);
17
18
  getDeviceStatsLiveUpdates(): boolean;
18
19
  getAppStateLiveUpdates(): boolean;
19
20
  getAppLogsLiveUpdates(): boolean;
20
- enableAppInstallStatus(props: {
21
- projectId: string;
22
- appReleaseHash: string;
21
+ enableTransactionStatus(props: {
22
+ txId: string;
23
23
  }): Promise<void>;
24
- disableAppInstallStatus(props: {
25
- projectId: string;
24
+ disableTransactionStatus(props: {
25
+ txId: string;
26
26
  }): Promise<void>;
27
- handleToggles(toggles: LiveUpdatesToggles): Promise<void>;
27
+ handleToggles(toggles: LiveStateUpdatesTogglePayload, txId: string): Promise<void>;
28
28
  }
29
29
  //# sourceMappingURL=live-updates-handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"live-updates-handler.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/live-updates-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,kBAAkB,EACnB,MAAM,gCAAgC,CAAC;AAIxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAaxC,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,SAAS,CAAY;IAE7B,OAAO,CAAC,kBAAkB,CAAgC;IAC1D,OAAO,CAAC,gBAAgB,CAKtB;IACF,OAAO,CAAC,yBAAyB,CAK/B;IACF,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,kBAAkB,CAAqB;YAEjC,iBAAiB;IAqC/B,OAAO,CAAC,kBAAkB;IAoB1B,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,yBAAyB;YAWnB,0BAA0B;gBA6B5B,SAAS,EAAE,SAAS;IAOzB,yBAAyB;IAIzB,sBAAsB;IAItB,qBAAqB;IAIf,sBAAsB,CAAC,KAAK,EAAE;QACzC,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;KACxB;IAeY,uBAAuB,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE;IASpD,aAAa,CAAC,OAAO,EAAE,kBAAkB;CAwCvD"}
1
+ {"version":3,"file":"live-updates-handler.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/live-updates-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,6BAA6B,EAE9B,MAAM,gCAAgC,CAAC;AAIxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAmBxC,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAO,CAAC,kBAAkB,CAAgC;IAC1D,OAAO,CAAC,gBAAgB,CAKtB;IACF,OAAO,CAAC,yBAAyB,CAK/B;IAEF,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,mBAAmB,CAAqB;YAElC,iBAAiB;IAmC/B,OAAO,CAAC,kBAAkB;IAoB1B,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,yBAAyB;YAWnB,0BAA0B;gBA0C5B,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM;IAQ3C,yBAAyB;IAIzB,sBAAsB;IAItB,qBAAqB;IAIf,uBAAuB,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;IAgB/C,wBAAwB,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;IAShD,aAAa,CACxB,OAAO,EAAE,6BAA6B,EACtC,IAAI,EAAE,MAAM;CA6Cf"}