@alwaysai/device-agent 1.0.0 → 1.3.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 (87) hide show
  1. package/lib/application-control/environment-variables.d.ts +1 -1
  2. package/lib/application-control/environment-variables.d.ts.map +1 -1
  3. package/lib/cloud-connection/device-agent-cloud-connection.d.ts +3 -2
  4. package/lib/cloud-connection/device-agent-cloud-connection.d.ts.map +1 -1
  5. package/lib/cloud-connection/device-agent-cloud-connection.js +81 -59
  6. package/lib/cloud-connection/device-agent-cloud-connection.js.map +1 -1
  7. package/lib/cloud-connection/live-updates-handler.d.ts.map +1 -1
  8. package/lib/cloud-connection/live-updates-handler.js +2 -4
  9. package/lib/cloud-connection/live-updates-handler.js.map +1 -1
  10. package/lib/cloud-connection/live-updates-handler.test.js +1 -1
  11. package/lib/cloud-connection/live-updates-handler.test.js.map +1 -1
  12. package/lib/cloud-connection/messages.js +6 -6
  13. package/lib/cloud-connection/messages.js.map +1 -1
  14. package/lib/cloud-connection/passthrough-handler.d.ts.map +1 -1
  15. package/lib/cloud-connection/passthrough-handler.js +37 -11
  16. package/lib/cloud-connection/passthrough-handler.js.map +1 -1
  17. package/lib/cloud-connection/publisher.d.ts +5 -4
  18. package/lib/cloud-connection/publisher.d.ts.map +1 -1
  19. package/lib/cloud-connection/publisher.js +9 -8
  20. package/lib/cloud-connection/publisher.js.map +1 -1
  21. package/lib/cloud-connection/shadow-handler.d.ts +5 -0
  22. package/lib/cloud-connection/shadow-handler.d.ts.map +1 -1
  23. package/lib/cloud-connection/shadow-handler.js +20 -5
  24. package/lib/cloud-connection/shadow-handler.js.map +1 -1
  25. package/lib/cloud-connection/shadow-handler.test.js +9 -0
  26. package/lib/cloud-connection/shadow-handler.test.js.map +1 -1
  27. package/lib/cloud-connection/transaction-manager.d.ts +10 -0
  28. package/lib/cloud-connection/transaction-manager.d.ts.map +1 -0
  29. package/lib/cloud-connection/transaction-manager.js +41 -0
  30. package/lib/cloud-connection/transaction-manager.js.map +1 -0
  31. package/lib/cloud-connection/transaction-manager.test.d.ts +2 -0
  32. package/lib/cloud-connection/transaction-manager.test.d.ts.map +1 -0
  33. package/lib/cloud-connection/transaction-manager.test.js +63 -0
  34. package/lib/cloud-connection/transaction-manager.test.js.map +1 -0
  35. package/lib/device-control/device-control.d.ts +58 -3
  36. package/lib/device-control/device-control.d.ts.map +1 -1
  37. package/lib/device-control/device-control.js +141 -14
  38. package/lib/device-control/device-control.js.map +1 -1
  39. package/lib/subcommands/app/env-vars.d.ts.map +1 -1
  40. package/lib/subcommands/app/env-vars.js +15 -9
  41. package/lib/subcommands/app/env-vars.js.map +1 -1
  42. package/lib/subcommands/device/clean.d.ts.map +1 -1
  43. package/lib/subcommands/device/clean.js +14 -12
  44. package/lib/subcommands/device/clean.js.map +1 -1
  45. package/lib/subcommands/device/device.d.ts +1 -0
  46. package/lib/subcommands/device/device.d.ts.map +1 -1
  47. package/lib/subcommands/device/device.js +26 -7
  48. package/lib/subcommands/device/device.js.map +1 -1
  49. package/lib/subcommands/device/index.js +1 -1
  50. package/lib/subcommands/device/index.js.map +1 -1
  51. package/lib/util/logger.d.ts.map +1 -1
  52. package/lib/util/logger.js +1 -1
  53. package/lib/util/logger.js.map +1 -1
  54. package/lib/util/safe-rimraf.d.ts +2 -0
  55. package/lib/util/safe-rimraf.d.ts.map +1 -0
  56. package/lib/util/safe-rimraf.js +16 -0
  57. package/lib/util/safe-rimraf.js.map +1 -0
  58. package/package.json +4 -2
  59. package/readme.md +1 -0
  60. package/src/application-control/environment-variables.ts +1 -1
  61. package/src/cloud-connection/device-agent-cloud-connection.ts +125 -80
  62. package/src/cloud-connection/live-updates-handler.test.ts +2 -2
  63. package/src/cloud-connection/live-updates-handler.ts +2 -8
  64. package/src/cloud-connection/messages.ts +9 -9
  65. package/src/cloud-connection/passthrough-handler.ts +43 -10
  66. package/src/cloud-connection/publisher.ts +27 -10
  67. package/src/cloud-connection/shadow-handler.test.ts +9 -0
  68. package/src/cloud-connection/shadow-handler.ts +25 -11
  69. package/src/cloud-connection/transaction-manager.test.ts +73 -0
  70. package/src/cloud-connection/transaction-manager.ts +43 -0
  71. package/src/device-control/device-control.ts +142 -9
  72. package/src/subcommands/app/env-vars.ts +17 -10
  73. package/src/subcommands/device/clean.ts +22 -13
  74. package/src/subcommands/device/device.ts +36 -9
  75. package/src/subcommands/device/index.ts +2 -2
  76. package/src/util/logger.ts +15 -10
  77. package/src/util/safe-rimraf.ts +14 -0
  78. package/lib/cloud-connection/transaction-queue.d.ts +0 -12
  79. package/lib/cloud-connection/transaction-queue.d.ts.map +0 -1
  80. package/lib/cloud-connection/transaction-queue.js +0 -38
  81. package/lib/cloud-connection/transaction-queue.js.map +0 -1
  82. package/lib/cloud-connection/transaction-queue.test.d.ts +0 -2
  83. package/lib/cloud-connection/transaction-queue.test.d.ts.map +0 -1
  84. package/lib/cloud-connection/transaction-queue.test.js +0 -46
  85. package/lib/cloud-connection/transaction-queue.test.js.map +0 -1
  86. package/src/cloud-connection/transaction-queue.test.ts +0 -55
  87. package/src/cloud-connection/transaction-queue.ts +0 -40
@@ -1 +1 @@
1
- {"version":3,"file":"publisher.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/publisher.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,cAAc,EAGf,MAAM,gCAAgC,CAAC;AAExC,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM;IAOlC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAWtC,qBAAqB,CAC1B,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,gBAAgB;IAkB5B,yBAAyB,CAC9B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,eAAe,GAAG,cAAc;IASpC,eAAe,CAAC,OAAO,EAAE,eAAe;IAIxC,cAAc,CAAC,OAAO,EAAE,cAAc;CAI9C"}
1
+ {"version":3,"file":"publisher.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/publisher.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,cAAc,EAGf,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAEnC,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM;IAOlC,OAAO,CACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,YAAY,GAAE,OAAO,CAAC,gBAA+B;IAoBhD,qBAAqB,CAC1B,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,gBAAgB;IAkB5B,yBAAyB,CAC9B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,eAAe,GAAG,cAAc,EACzC,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB;IAM5B,eAAe,CACpB,OAAO,EAAE,eAAe,EACxB,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB;IAK5B,cAAc,CACnB,OAAO,EAAE,cAAc,EACvB,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB;CAKpC"}
@@ -10,8 +10,10 @@ class Publisher {
10
10
  this.toClientTopic = (0, device_agent_schemas_1.getToClientTopic)(this.clientId);
11
11
  this.toCloudTopic = (0, device_agent_schemas_1.getToCloudTopic)(this.clientId);
12
12
  }
13
- publish(topic, payload) {
13
+ publish(topic, payload, customLogger = logger_1.logger.debug) {
14
14
  // TODO: topic validation
15
+ // By default, log the published message at debug level, unless otherwise specified
16
+ customLogger(`Publishing message:\nTopic: ${topic}\nMessage: ${JSON.stringify(JSON.parse(payload), null, 2)}`);
15
17
  this.client.publish(topic, payload, (err) => {
16
18
  if (err) {
17
19
  logger_1.logger.error(`Error publishing message: \nTopic: ${topic}\nMessage: ${payload}\nError: ${err}`);
@@ -31,17 +33,16 @@ class Publisher {
31
33
  }
32
34
  });
33
35
  }
34
- publishDeviceAgentMessage(topic, message) {
36
+ publishDeviceAgentMessage(topic, message, logger) {
35
37
  const messageStr = JSON.stringify(message);
36
- logger_1.logger.debug(`Publishing message:\n${JSON.stringify({ topic, message }, null, 2)}`);
37
- this.publish(topic, messageStr);
38
+ this.publish(topic, messageStr, logger);
38
39
  }
39
- publishToClient(message) {
40
- this.publishDeviceAgentMessage(this.toClientTopic, message);
40
+ publishToClient(message, logger) {
41
+ this.publishDeviceAgentMessage(this.toClientTopic, message, logger);
41
42
  }
42
- publishToCloud(message) {
43
+ publishToCloud(message, logger) {
43
44
  // Can edit topic field in message here if we want
44
- this.publishDeviceAgentMessage(this.toCloudTopic, message);
45
+ this.publishDeviceAgentMessage(this.toCloudTopic, message, logger);
45
46
  }
46
47
  }
47
48
  exports.Publisher = Publisher;
@@ -1 +1 @@
1
- {"version":3,"file":"publisher.js","sourceRoot":"","sources":["../../src/cloud-connection/publisher.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AACxC,yEAKwC;AAExC,MAAa,SAAS;IAMpB,YAAY,MAAW,EAAE,QAAgB;QACvC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,IAAA,uCAAgB,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrD,IAAI,CAAC,YAAY,GAAG,IAAA,sCAAe,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC;IAEM,OAAO,CAAC,KAAa,EAAE,OAAe;QAC3C,yBAAyB;QACzB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,GAAQ,EAAE,EAAE;YAC/C,IAAI,GAAG,EAAE;gBACP,eAAM,CAAC,KAAK,CACV,sCAAsC,KAAK,cAAc,OAAO,YAAY,GAAG,EAAE,CAClF,CAAC;aACH;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,qBAAqB,CAC1B,OAAe,EACf,eAAiC;QAEjC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAQ,EAAE,IAAS,EAAE,EAAE;YACtE,IAAI,GAAG,EAAE;gBACP,eAAM,CAAC,KAAK,CACV,sCAAsC,KAAK,cAAc,OAAO,YAAY,GAAG,EAAE,CAClF,CAAC;gBACF,eAAe,CAAC,KAAK,CAAC,CAAC;aACxB;iBAAM,IAAI,IAAI,EAAE;gBACf,eAAM,CAAC,KAAK,CACV,4CAA4C,KAAK,cAAc,OAAO,EAAE,CACzE,CAAC;gBACF,eAAe,CAAC,IAAI,CAAC,CAAC;aACvB;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,yBAAyB,CAC9B,KAAa,EACb,OAAyC;QAEzC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC3C,eAAM,CAAC,KAAK,CACV,wBAAwB,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CACtE,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IAClC,CAAC;IAEM,eAAe,CAAC,OAAwB;QAC7C,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAEM,cAAc,CAAC,OAAuB;QAC3C,kDAAkD;QAClD,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;CACF;AA/DD,8BA+DC"}
1
+ {"version":3,"file":"publisher.js","sourceRoot":"","sources":["../../src/cloud-connection/publisher.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AACxC,yEAKwC;AAGxC,MAAa,SAAS;IAMpB,YAAY,MAAW,EAAE,QAAgB;QACvC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,IAAA,uCAAgB,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrD,IAAI,CAAC,YAAY,GAAG,IAAA,sCAAe,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC;IAEM,OAAO,CACZ,KAAa,EACb,OAAe,EACf,eAAyC,eAAM,CAAC,KAAK;QAErD,yBAAyB;QACzB,mFAAmF;QACnF,YAAY,CACV,+BAA+B,KAAK,cAAc,IAAI,CAAC,SAAS,CAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EACnB,IAAI,EACJ,CAAC,CACF,EAAE,CACJ,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,GAAQ,EAAE,EAAE;YAC/C,IAAI,GAAG,EAAE;gBACP,eAAM,CAAC,KAAK,CACV,sCAAsC,KAAK,cAAc,OAAO,YAAY,GAAG,EAAE,CAClF,CAAC;aACH;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,qBAAqB,CAC1B,OAAe,EACf,eAAiC;QAEjC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAQ,EAAE,IAAS,EAAE,EAAE;YACtE,IAAI,GAAG,EAAE;gBACP,eAAM,CAAC,KAAK,CACV,sCAAsC,KAAK,cAAc,OAAO,YAAY,GAAG,EAAE,CAClF,CAAC;gBACF,eAAe,CAAC,KAAK,CAAC,CAAC;aACxB;iBAAM,IAAI,IAAI,EAAE;gBACf,eAAM,CAAC,KAAK,CACV,4CAA4C,KAAK,cAAc,OAAO,EAAE,CACzE,CAAC;gBACF,eAAe,CAAC,IAAI,CAAC,CAAC;aACvB;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,yBAAyB,CAC9B,KAAa,EACb,OAAyC,EACzC,MAAiC;QAEjC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;IAEM,eAAe,CACpB,OAAwB,EACxB,MAAiC;QAEjC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACtE,CAAC;IAEM,cAAc,CACnB,OAAuB,EACvB,MAAiC;QAEjC,kDAAkD;QAClD,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACrE,CAAC;CACF;AA/ED,8BA+EC"}
@@ -13,6 +13,9 @@ export interface ShadowTopics {
13
13
  updateRejected: string;
14
14
  delete: string;
15
15
  };
16
+ systemInfo: {
17
+ update: string;
18
+ };
16
19
  }
17
20
  export declare type AppConfigUpdate = {
18
21
  newAppCfg: AppConfig;
@@ -23,6 +26,7 @@ export declare type EnvVarUpdate = {
23
26
  };
24
27
  export declare type ShadowUpdate = {
25
28
  projectId: string;
29
+ txId: string;
26
30
  appCfgUpdate?: AppConfigUpdate;
27
31
  envVarUpdate?: EnvVarUpdate;
28
32
  };
@@ -38,6 +42,7 @@ export declare class ShadowHandler {
38
42
  payload: any;
39
43
  clientToken: string;
40
44
  }): Promise<ShadowUpdate[]>;
45
+ updateSystemInfoShadow(): Promise<void>;
41
46
  updateProjectShadow(projectId: string): Promise<void>;
42
47
  getShadowUpdates(): void;
43
48
  clearAppConfig(projectId: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"shadow-handler.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/shadow-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAEV,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,OAAO,EAA8B,MAAM,wBAAwB,CAAC;AAE7E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,eAAe,EAAuB,MAAM,UAAU,CAAC;AAEhE,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE;QACR,GAAG,EAAE,MAAM,CAAC;QACZ,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED,oBAAY,eAAe,GAAG;IAC5B,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,CAAC,EAAE,eAAe,CAAC;CACjC,CAAC;AAEF,oBAAY,YAAY,GAAG;IACzB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,oBAAY,YAAY,GAAG;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAY;IAC7B,SAAgB,YAAY,EAAE,MAAM,CAAC;IACrC,SAAgB,YAAY,EAAE,YAAY,CAAC;gBAE/B,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS;YAkBpC,uBAAuB;IA2DxB,iBAAiB,CAAC,EAC7B,KAAK,EACL,OAAO,EACP,WAAW,EACZ,EAAE;QACD,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,GAAG,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACrB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAqCd,mBAAmB,CAAC,SAAS,EAAE,MAAM;IAqB3C,gBAAgB;IAWhB,cAAc,CAAC,SAAS,EAAE,MAAM;CAoBxC"}
1
+ {"version":3,"file":"shadow-handler.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/shadow-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAEV,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,OAAO,EAA8B,MAAM,wBAAwB,CAAC;AAE7E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,eAAe,EAAuB,MAAM,UAAU,CAAC;AAIhE,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE;QACR,GAAG,EAAE,MAAM,CAAC;QACZ,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,UAAU,EAAE;QACV,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED,oBAAY,eAAe,GAAG;IAC5B,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,CAAC,EAAE,eAAe,CAAC;CACjC,CAAC;AAEF,oBAAY,YAAY,GAAG;IACzB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,oBAAY,YAAY,GAAG;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAY;IAC7B,SAAgB,YAAY,EAAE,MAAM,CAAC;IACrC,SAAgB,YAAY,EAAE,YAAY,CAAC;gBAE/B,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS;YAqBpC,uBAAuB;IA6DxB,iBAAiB,CAAC,EAC7B,KAAK,EACL,OAAO,EACP,WAAW,EACZ,EAAE;QACD,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,GAAG,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACrB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAqCd,sBAAsB;IAYtB,mBAAmB,CAAC,SAAS,EAAE,MAAM;IAkB3C,gBAAgB;IAQhB,cAAc,CAAC,SAAS,EAAE,MAAM;CAiBxC"}
@@ -5,6 +5,8 @@ const app_configuration_schemas_1 = require("@alwaysai/app-configuration-schemas
5
5
  const application_control_1 = require("../application-control");
6
6
  const logger_1 = require("../util/logger");
7
7
  const shadow_1 = require("./shadow");
8
+ const device_control_1 = require("../device-control/device-control");
9
+ const device_agent_schemas_1 = require("@alwaysai/device-agent-schemas");
8
10
  class ShadowHandler {
9
11
  constructor(clientId, publisher) {
10
12
  this.clientId = clientId;
@@ -20,6 +22,9 @@ class ShadowHandler {
20
22
  updateAccepted: `${this.shadowPrefix}projects/update/accepted`,
21
23
  updateRejected: `${this.shadowPrefix}projects/update/rejected`,
22
24
  delete: `${this.shadowPrefix}projects/delete`
25
+ },
26
+ systemInfo: {
27
+ update: `${this.shadowPrefix}system-info/update`
23
28
  }
24
29
  };
25
30
  }
@@ -28,7 +33,9 @@ class ShadowHandler {
28
33
  const deltaKeys = Object.keys(delta);
29
34
  for (const projectId of deltaKeys) {
30
35
  const projectShadow = delta[projectId];
31
- const shadowUpdate = { projectId };
36
+ // For incoming shadow updates, there will be no TxID, so it needs to be generated here.
37
+ const txId = (0, device_agent_schemas_1.generateTxId)();
38
+ const shadowUpdate = { projectId, txId };
32
39
  if (projectShadow.appConfig) {
33
40
  const newAppCfg = JSON.parse(projectShadow.appConfig);
34
41
  if (!(0, app_configuration_schemas_1.validateAppConfig)(newAppCfg)) {
@@ -70,7 +77,7 @@ class ShadowHandler {
70
77
  switch (topic) {
71
78
  case this.shadowTopics.projects.updateDelta:
72
79
  if (clientToken === this.clientId) {
73
- logger_1.logger.debug(`Ignoring message sent from self: ${JSON.stringify({ topic, payload }, null, 2)}`);
80
+ logger_1.logger.debug(`Ignoring delta caused by Device Agent: ${JSON.stringify({ topic, payload }, null, 2)}`);
74
81
  break;
75
82
  }
76
83
  return await this.handleNamedShadowUpdate({ delta: payload });
@@ -89,6 +96,17 @@ class ShadowHandler {
89
96
  }
90
97
  return [];
91
98
  }
99
+ async updateSystemInfoShadow() {
100
+ const systemInfo = await (0, device_control_1.getSystemInformation)();
101
+ const packet = {
102
+ state: {
103
+ reported: systemInfo
104
+ },
105
+ clientToken: this.clientId
106
+ };
107
+ const topic = this.shadowTopics.systemInfo.update;
108
+ this.publisher.publish(topic, JSON.stringify(packet));
109
+ }
92
110
  async updateProjectShadow(projectId) {
93
111
  const appCfg = await (0, application_control_1.readAppCfgFile)({ projectId });
94
112
  const envVars = await (0, application_control_1.getAllEnvs)({ projectId });
@@ -104,7 +122,6 @@ class ShadowHandler {
104
122
  clientToken: this.clientId
105
123
  };
106
124
  const topic = this.shadowTopics.projects.update;
107
- logger_1.logger.debug(`Publishing message:\n${JSON.stringify({ topic, packet }, null, 2)}`);
108
125
  this.publisher.publish(topic, JSON.stringify(packet));
109
126
  }
110
127
  getShadowUpdates() {
@@ -112,7 +129,6 @@ class ShadowHandler {
112
129
  const packet = {
113
130
  clientToken: this.clientId
114
131
  };
115
- logger_1.logger.debug(`Publishing message:\n${JSON.stringify({ topic, packet }, null, 2)}`);
116
132
  this.publisher.publish(topic, JSON.stringify(packet));
117
133
  }
118
134
  clearAppConfig(projectId) {
@@ -130,7 +146,6 @@ class ShadowHandler {
130
146
  },
131
147
  clientToken: this.clientId
132
148
  };
133
- logger_1.logger.debug(`Publishing message:\n${JSON.stringify({ topic, packet }, null, 2)}`);
134
149
  this.publisher.publish(topic, JSON.stringify(packet));
135
150
  }
136
151
  }
@@ -1 +1 @@
1
- {"version":3,"file":"shadow-handler.js","sourceRoot":"","sources":["../../src/cloud-connection/shadow-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shadow-handler.js","sourceRoot":"","sources":["../../src/cloud-connection/shadow-handler.ts"],"names":[],"mappings":"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"}
@@ -101,6 +101,7 @@ describe('Test Shadow Handler', () => {
101
101
  expect(updates.length).toBe(1);
102
102
  expect(updates[0]).toEqual({
103
103
  projectId: projectId1,
104
+ txId: expect.any(String),
104
105
  appCfgUpdate: {
105
106
  newAppCfg: appCfg1,
106
107
  updatedModels: {
@@ -141,6 +142,7 @@ describe('Test Shadow Handler', () => {
141
142
  expect(updates.length).toBe(1);
142
143
  expect(updates[0]).toEqual({
143
144
  projectId: projectId1,
145
+ txId: expect.any(String),
144
146
  appCfgUpdate: {
145
147
  newAppCfg: appCfg1,
146
148
  updatedModels: {
@@ -203,6 +205,7 @@ describe('Test Shadow Handler', () => {
203
205
  expect(updates.length).toBe(2);
204
206
  expect(updates[0]).toEqual({
205
207
  projectId: projectId1,
208
+ txId: expect.any(String),
206
209
  appCfgUpdate: {
207
210
  newAppCfg: appCfg1,
208
211
  updatedModels: {
@@ -213,6 +216,7 @@ describe('Test Shadow Handler', () => {
213
216
  });
214
217
  expect(updates[1]).toEqual({
215
218
  projectId: projectId2,
219
+ txId: expect.any(String),
216
220
  appCfgUpdate: {
217
221
  newAppCfg: appCfg2,
218
222
  updatedModels: {
@@ -251,6 +255,7 @@ describe('Test Shadow Handler', () => {
251
255
  expect(updates.length).toBe(1);
252
256
  expect(updates[0]).toEqual({
253
257
  projectId: projectId1,
258
+ txId: expect.any(String),
254
259
  appCfgUpdate: {
255
260
  newAppCfg: appCfg1
256
261
  }
@@ -308,6 +313,7 @@ describe('Test Shadow Handler', () => {
308
313
  expect(updates.length).toBe(1);
309
314
  expect(updates[0]).toEqual({
310
315
  projectId: projectId1,
316
+ txId: expect.any(String),
311
317
  envVarUpdate: {
312
318
  envVars: envVars1
313
319
  }
@@ -330,6 +336,7 @@ describe('Test Shadow Handler', () => {
330
336
  expect(updates.length).toBe(1);
331
337
  expect(updates[0]).toEqual({
332
338
  projectId: projectId1,
339
+ txId: expect.any(String),
333
340
  envVarUpdate: {
334
341
  envVars: envVars1
335
342
  }
@@ -358,12 +365,14 @@ describe('Test Shadow Handler', () => {
358
365
  expect(updates.length).toBe(2);
359
366
  expect(updates[0]).toEqual({
360
367
  projectId: projectId1,
368
+ txId: expect.any(String),
361
369
  envVarUpdate: {
362
370
  envVars: envVars1
363
371
  }
364
372
  });
365
373
  expect(updates[1]).toEqual({
366
374
  projectId: projectId2,
375
+ txId: expect.any(String),
367
376
  envVarUpdate: {
368
377
  envVars: envVars2
369
378
  }
@@ -1 +1 @@
1
- {"version":3,"file":"shadow-handler.test.js","sourceRoot":"","sources":["../../src/cloud-connection/shadow-handler.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shadow-handler.test.js","sourceRoot":"","sources":["../../src/cloud-connection/shadow-handler.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export declare class TransactionManager {
2
+ private txToProject;
3
+ private projectToTx;
4
+ constructor();
5
+ addTransaction(txId: string, projectId: string): void;
6
+ getTransactionFromProject(projectId: string): string;
7
+ getProjectFromTransaction(txId: string): string;
8
+ completeTransaction(txId: string): void;
9
+ }
10
+ //# sourceMappingURL=transaction-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction-manager.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/transaction-manager.ts"],"names":[],"mappings":"AAAA,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,WAAW,CAA8B;IACjD,OAAO,CAAC,WAAW,CAA8B;;IAO1C,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAoB9C,yBAAyB,CAAC,SAAS,EAAE,MAAM;IAI3C,yBAAyB,CAAC,IAAI,EAAE,MAAM;IAItC,mBAAmB,CAAC,IAAI,EAAE,MAAM;CAKxC"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TransactionManager = void 0;
4
+ class TransactionManager {
5
+ constructor() {
6
+ this.txToProject = {};
7
+ this.projectToTx = {};
8
+ this.txToProject = {};
9
+ this.projectToTx = {};
10
+ }
11
+ addTransaction(txId, projectId) {
12
+ // Check if the Transaction already exists
13
+ if (this.txToProject[txId]) {
14
+ throw new Error(`Transaction ID ${txId} already exists for this projectId ${projectId}!`);
15
+ }
16
+ else {
17
+ // Check if there is any ongoing Transactions for Project ID
18
+ if (this.projectToTx[projectId]) {
19
+ throw new Error(`This Project ID ${projectId} already has an ongoing transaction!`);
20
+ }
21
+ else {
22
+ // Map the Transaction ID with Project ID
23
+ this.txToProject[txId] = projectId;
24
+ this.projectToTx[projectId] = txId;
25
+ }
26
+ }
27
+ }
28
+ getTransactionFromProject(projectId) {
29
+ return this.projectToTx[projectId];
30
+ }
31
+ getProjectFromTransaction(txId) {
32
+ return this.txToProject[txId];
33
+ }
34
+ completeTransaction(txId) {
35
+ const projectId = this.txToProject[txId];
36
+ delete this.txToProject[txId];
37
+ delete this.projectToTx[projectId];
38
+ }
39
+ }
40
+ exports.TransactionManager = TransactionManager;
41
+ //# sourceMappingURL=transaction-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction-manager.js","sourceRoot":"","sources":["../../src/cloud-connection/transaction-manager.ts"],"names":[],"mappings":";;;AAAA,MAAa,kBAAkB;IAI7B;QAHQ,gBAAW,GAA2B,EAAE,CAAC;QACzC,gBAAW,GAA2B,EAAE,CAAC;QAG/C,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;IACxB,CAAC;IAEM,cAAc,CAAC,IAAY,EAAE,SAAiB;QACnD,0CAA0C;QAC1C,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;YAC1B,MAAM,IAAI,KAAK,CACb,kBAAkB,IAAI,sCAAsC,SAAS,GAAG,CACzE,CAAC;SACH;aAAM;YACL,4DAA4D;YAC5D,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE;gBAC/B,MAAM,IAAI,KAAK,CACb,mBAAmB,SAAS,sCAAsC,CACnE,CAAC;aACH;iBAAM;gBACL,yCAAyC;gBACzC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;gBACnC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;aACpC;SACF;IACH,CAAC;IAEM,yBAAyB,CAAC,SAAiB;QAChD,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;IAEM,yBAAyB,CAAC,IAAY;QAC3C,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAEM,mBAAmB,CAAC,IAAY;QACrC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;CACF;AA1CD,gDA0CC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=transaction-manager.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction-manager.test.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/transaction-manager.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const device_agent_schemas_1 = require("@alwaysai/device-agent-schemas");
4
+ const transaction_manager_1 = require("./transaction-manager");
5
+ const uuid_1 = require("uuid");
6
+ describe('Test Transaction Manager', () => {
7
+ let txnMgr;
8
+ beforeEach(() => {
9
+ txnMgr = new transaction_manager_1.TransactionManager();
10
+ jest.clearAllMocks();
11
+ });
12
+ function generateRandomProjectId() {
13
+ return (0, uuid_1.v4)();
14
+ }
15
+ test('Add a new transaction', async () => {
16
+ const txId = (0, device_agent_schemas_1.generateTxId)();
17
+ const projectId = generateRandomProjectId();
18
+ txnMgr.addTransaction(txId, projectId);
19
+ expect(txnMgr.getProjectFromTransaction(txId)).toEqual(projectId);
20
+ expect(txnMgr.getTransactionFromProject(projectId)).toEqual(txId);
21
+ });
22
+ test('Add multiple transactions to different projects', async () => {
23
+ const numTransactions = 3;
24
+ const projectTxIdList = [];
25
+ for (let i = 0; i < numTransactions; i++) {
26
+ const txId = (0, device_agent_schemas_1.generateTxId)();
27
+ const projectId = generateRandomProjectId();
28
+ txnMgr.addTransaction(txId, projectId);
29
+ projectTxIdList.push({ projectId, txId });
30
+ }
31
+ projectTxIdList.forEach(({ txId, projectId }) => {
32
+ expect(txnMgr.getProjectFromTransaction(txId)).toEqual(projectId);
33
+ expect(txnMgr.getTransactionFromProject(projectId)).toEqual(txId);
34
+ });
35
+ });
36
+ test('Attempt to add existing transaction to a project, results in failure', async () => {
37
+ const txId = (0, device_agent_schemas_1.generateTxId)();
38
+ const projectId = generateRandomProjectId();
39
+ txnMgr.addTransaction(txId, projectId);
40
+ expect(() => txnMgr.addTransaction(txId, projectId)).toThrow(`Transaction ID ${txId} already exists for this projectId ${projectId}!`);
41
+ expect(txnMgr.getTransactionFromProject(projectId)).toEqual(txId);
42
+ expect(txnMgr.getProjectFromTransaction(txId)).toEqual(projectId);
43
+ });
44
+ test('Attempt to add a transaction to a project with an ongoing transaction, results in failure', async () => {
45
+ const txId = (0, device_agent_schemas_1.generateTxId)();
46
+ const txId2 = (0, device_agent_schemas_1.generateTxId)();
47
+ const projectId = generateRandomProjectId();
48
+ txnMgr.addTransaction(txId, projectId);
49
+ expect(() => txnMgr.addTransaction(txId2, projectId)).toThrow(`This Project ID ${projectId} already has an ongoing transaction!`);
50
+ expect(txnMgr.getTransactionFromProject(projectId)).toEqual(txId);
51
+ expect(txnMgr.getProjectFromTransaction(txId)).toEqual(projectId);
52
+ expect(txnMgr.getProjectFromTransaction(txId2)).toBeUndefined();
53
+ });
54
+ test('Test remove transaction from queue', async () => {
55
+ const txId = (0, device_agent_schemas_1.generateTxId)();
56
+ const projectId = generateRandomProjectId();
57
+ txnMgr.addTransaction(txId, projectId);
58
+ txnMgr.completeTransaction(txId);
59
+ expect(txnMgr.getTransactionFromProject(projectId)).toBeUndefined();
60
+ expect(txnMgr.getProjectFromTransaction(txId)).toBeUndefined();
61
+ });
62
+ });
63
+ //# sourceMappingURL=transaction-manager.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction-manager.test.js","sourceRoot":"","sources":["../../src/cloud-connection/transaction-manager.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,59 @@
1
- export declare function getCpuUtil(): Promise<number>;
2
- export declare function getDiskUtil(): Promise<number>;
3
- export declare function getMemUtil(): Promise<number>;
1
+ import { SystemInformationPayload } from '@alwaysai/device-agent-schemas';
2
+ export declare function getCpuDetails(): Promise<{
3
+ usedPerc: number;
4
+ temperature: number;
5
+ }>;
6
+ export declare function getDiskDetails(): Promise<{
7
+ usedGb: number;
8
+ freeGb: number;
9
+ }>;
10
+ export declare function getMemDetails(): Promise<{
11
+ usedMb: number;
12
+ freeMb: number;
13
+ }>;
14
+ export declare function getOsInfo(): Promise<{
15
+ platform: string;
16
+ distro: string;
17
+ release: string;
18
+ kernel: string;
19
+ architecture: string;
20
+ hostname: string;
21
+ }>;
22
+ export declare function getCpuInfo(): Promise<{
23
+ manufacturer: string;
24
+ brand: string;
25
+ vendor: string;
26
+ model: string;
27
+ cores: number;
28
+ physicalCores: number;
29
+ efficiencyCores: number | undefined;
30
+ processors: number;
31
+ }>;
32
+ export declare function getDiskInfo(): Promise<{
33
+ drives: {
34
+ device: string;
35
+ type: string;
36
+ name: string;
37
+ vendor: string;
38
+ size: number;
39
+ }[];
40
+ }>;
41
+ export declare function getDeviceInfo(): Promise<{
42
+ manufacturer: string;
43
+ model: string;
44
+ version: string;
45
+ serial: string | undefined;
46
+ virtual: boolean;
47
+ }>;
48
+ export declare function getNetworkInfo(): Promise<{
49
+ ipv4Address: string;
50
+ ipv6Address: string;
51
+ macAddress: string;
52
+ }>;
53
+ export declare function getPackageVersions(): Promise<{
54
+ agent: any;
55
+ deviceAgentSchemas: any;
56
+ }>;
57
+ export declare function getSystemInformation(): Promise<SystemInformationPayload>;
58
+ export declare function reboot(): Promise<void>;
4
59
  //# sourceMappingURL=device-control.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"device-control.d.ts","sourceRoot":"","sources":["../../src/device-control/device-control.ts"],"names":[],"mappings":"AAGA,wBAAsB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAGlD;AAED,wBAAsB,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,CAGnD;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAGlD"}
1
+ {"version":3,"file":"device-control.d.ts","sourceRoot":"","sources":["../../src/device-control/device-control.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAU1E,wBAAsB,aAAa;;;GAOlC;AAED,wBAAsB,cAAc;;;GAQnC;AAED,wBAAsB,aAAa;;;GAMlC;AAGD,wBAAsB,SAAS;;;;;;;GAU9B;AAED,wBAAsB,UAAU;;;;;;;;;GAY/B;AAED,wBAAsB,WAAW;;;;;;;;GAWhC;AAED,wBAAsB,aAAa;;;;;;GAYlC;AAED,wBAAsB,cAAc;;;;GAWnC;AAED,wBAAsB,kBAAkB;;;GASvC;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,wBAAwB,CAAC,CAe9E;AAED,wBAAsB,MAAM,kBAiB3B"}