@alwaysai/device-agent 2.1.0-0 → 2.1.0-1

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 (37) hide show
  1. package/lib/cloud-connection/bootstrap-provision.d.ts +2 -0
  2. package/lib/cloud-connection/bootstrap-provision.d.ts.map +1 -0
  3. package/lib/cloud-connection/bootstrap-provision.js +35 -0
  4. package/lib/cloud-connection/bootstrap-provision.js.map +1 -0
  5. package/lib/cloud-connection/connection-manager.d.ts +6 -18
  6. package/lib/cloud-connection/connection-manager.d.ts.map +1 -1
  7. package/lib/cloud-connection/connection-manager.js +38 -85
  8. package/lib/cloud-connection/connection-manager.js.map +1 -1
  9. package/lib/cloud-connection/device-agent-cloud-connection.d.ts.map +1 -1
  10. package/lib/cloud-connection/device-agent-cloud-connection.js +4 -10
  11. package/lib/cloud-connection/device-agent-cloud-connection.js.map +1 -1
  12. package/lib/cloud-connection/device-agent.d.ts +21 -0
  13. package/lib/cloud-connection/device-agent.d.ts.map +1 -0
  14. package/lib/cloud-connection/{bootstrap-agent.js → device-agent.js} +22 -45
  15. package/lib/cloud-connection/device-agent.js.map +1 -0
  16. package/lib/cloud-connection/passthrough-handler.d.ts.map +1 -1
  17. package/lib/cloud-connection/passthrough-handler.js +46 -49
  18. package/lib/cloud-connection/passthrough-handler.js.map +1 -1
  19. package/lib/cloud-connection/publisher.d.ts +1 -1
  20. package/lib/cloud-connection/publisher.d.ts.map +1 -1
  21. package/lib/cloud-connection/publisher.js +20 -22
  22. package/lib/cloud-connection/publisher.js.map +1 -1
  23. package/lib/util/clean-certs.d.ts +2 -0
  24. package/lib/util/clean-certs.d.ts.map +1 -0
  25. package/lib/util/clean-certs.js +17 -0
  26. package/lib/util/clean-certs.js.map +1 -0
  27. package/package.json +2 -2
  28. package/src/cloud-connection/bootstrap-provision.ts +43 -0
  29. package/src/cloud-connection/connection-manager.ts +51 -151
  30. package/src/cloud-connection/device-agent-cloud-connection.ts +9 -11
  31. package/src/cloud-connection/{bootstrap-agent.ts → device-agent.ts} +35 -68
  32. package/src/cloud-connection/passthrough-handler.ts +56 -60
  33. package/src/cloud-connection/publisher.ts +28 -30
  34. package/src/util/clean-certs.ts +16 -0
  35. package/lib/cloud-connection/bootstrap-agent.d.ts +0 -16
  36. package/lib/cloud-connection/bootstrap-agent.d.ts.map +0 -1
  37. package/lib/cloud-connection/bootstrap-agent.js.map +0 -1
@@ -0,0 +1,2 @@
1
+ export declare function bootstrapProvision(): Promise<void>;
2
+ //# sourceMappingURL=bootstrap-provision.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap-provision.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/bootstrap-provision.ts"],"names":[],"mappings":"AAWA,wBAAsB,kBAAkB,kBA+BvC"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.bootstrapProvision = void 0;
4
+ const device_certificate_1 = require("../infrastructure/device-certificate");
5
+ const urls_1 = require("../infrastructure/urls");
6
+ const clean_certs_1 = require("../util/clean-certs");
7
+ const directories_1 = require("../util/directories");
8
+ const get_device_id_1 = require("../util/get-device-id");
9
+ const logger_1 = require("../util/logger");
10
+ const device_agent_1 = require("./device-agent");
11
+ async function bootstrapProvision() {
12
+ setTimeout(clean_certs_1.rmBootstrapCertsAndClose, 60000);
13
+ const clientId = (0, get_device_id_1.getDeviceUuid)();
14
+ const bootstrapConfig = {
15
+ keyPath: (0, device_certificate_1.getBootstrapPrivateKeyFilePath)(),
16
+ certPath: (0, device_certificate_1.getBootstrapCertificateFilePath)(),
17
+ caPath: directories_1.AWS_ROOT_CERTIFICATE_FILE_PATH,
18
+ clientId,
19
+ host: (0, urls_1.getIoTCoreEndpointUrl)()
20
+ };
21
+ const bootstrapAgent = new device_agent_1.BootstrapAgent(bootstrapConfig);
22
+ await bootstrapAgent.subscribeToAllTopics();
23
+ bootstrapAgent.publishMessage('$aws/certificates/create/json', '');
24
+ bootstrapAgent.device.on('connect', () => {
25
+ logger_1.logger.info('Your device is being provisioned');
26
+ });
27
+ bootstrapAgent.device.on('message', async (topic, payload) => {
28
+ await bootstrapAgent.handleAwsCertificateTopics(topic, payload);
29
+ });
30
+ bootstrapAgent.device.on('packetsend', (packet) => {
31
+ logger_1.logger.debug(`Sending packet: ${JSON.stringify({ packet }, null, 2)}`);
32
+ });
33
+ }
34
+ exports.bootstrapProvision = bootstrapProvision;
35
+ //# sourceMappingURL=bootstrap-provision.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap-provision.js","sourceRoot":"","sources":["../../src/cloud-connection/bootstrap-provision.ts"],"names":[],"mappings":";;;AAAA,6EAG8C;AAC9C,iDAA+D;AAC/D,qDAA+D;AAC/D,qDAAqE;AACrE,yDAAsD;AACtD,2CAAwC;AACxC,iDAAgD;AAEzC,KAAK,UAAU,kBAAkB;IACtC,UAAU,CAAC,sCAAwB,EAAE,KAAK,CAAC,CAAC;IAE5C,MAAM,QAAQ,GAAG,IAAA,6BAAa,GAAE,CAAC;IACjC,MAAM,eAAe,GAAG;QACtB,OAAO,EAAE,IAAA,mDAA8B,GAAE;QACzC,QAAQ,EAAE,IAAA,oDAA+B,GAAE;QAC3C,MAAM,EAAE,4CAA8B;QACtC,QAAQ;QACR,IAAI,EAAE,IAAA,4BAAqB,GAAE;KAC9B,CAAC;IAEF,MAAM,cAAc,GAAG,IAAI,6BAAc,CAAC,eAAe,CAAC,CAAC;IAC3D,MAAM,cAAc,CAAC,oBAAoB,EAAE,CAAC;IAE5C,cAAc,CAAC,cAAc,CAAC,+BAA+B,EAAE,EAAE,CAAC,CAAC;IAEnE,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;QACvC,eAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,cAAc,CAAC,MAAM,CAAC,EAAE,CACtB,SAAS,EACT,KAAK,EAAE,KAAa,EAAE,OAAe,EAAE,EAAE;QACvC,MAAM,cAAc,CAAC,0BAA0B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC,CACF,CAAC;IAEF,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,MAAW,EAAE,EAAE;QACrD,eAAM,CAAC,KAAK,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;AACL,CAAC;AA/BD,gDA+BC"}
@@ -1,31 +1,19 @@
1
- import { mqtt5 } from 'aws-iot-device-sdk-v2';
2
1
  import { MessageDispatcher, MessageHandler } from './message-dispatcher';
3
- export interface DeviceAgentConfigType {
4
- clientId: string;
5
- host: string;
6
- port: number;
7
- keyPath?: string;
8
- certPath?: string;
9
- caPath?: string;
10
- }
11
2
  export declare class ConnectionManager extends MessageDispatcher<any> {
12
3
  private clientId;
13
4
  private host;
14
5
  private port;
15
- private config;
16
- private client;
6
+ private device;
17
7
  private subscribedTopics;
18
8
  private connected;
19
- readonly qos: mqtt5.QoS;
20
- constructor(deviceAgentConfig: DeviceAgentConfigType);
21
- getIoTDevice(): mqtt5.Mqtt5Client;
9
+ constructor(clientId: string, host: string, port: number);
10
+ getIoTDevice(): awsIot.device;
22
11
  isConnected(): boolean;
23
12
  registerHandler(topic: string, handler: MessageHandler): void;
24
- disconnect(): Promise<void>;
25
- subscribe(topic: string): Promise<void>;
26
- unsubscribe(topic: string): Promise<void>;
13
+ disconnect(): void;
14
+ subscribe(topic: string): void;
15
+ unsubscribe(topic: string): void;
27
16
  initConnectionHandlers(connectCallback: () => void): void;
28
- waitForConnection(timeoutMs?: number): Promise<void>;
29
17
  private logConnectionInfo;
30
18
  }
31
19
  //# sourceMappingURL=connection-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"connection-manager.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/connection-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAO,MAAM,uBAAuB,CAAC;AAUnD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAMzE,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,iBAAkB,SAAQ,iBAAiB,CAAC,GAAG,CAAC;IAC3D,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,SAAS,CAAS;IAC1B,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;gBAEZ,iBAAiB,EAAE,qBAAqB;IAgC7C,YAAY;IAIZ,WAAW,IAAI,OAAO;IAItB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc;IAKhD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAO3B,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYvC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY/C,sBAAsB,CAAC,eAAe,EAAE,MAAM,IAAI,GAAG,IAAI;IAkFzD,iBAAiB,CAAC,SAAS,SAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;YA4B5C,iBAAiB;CAoDhC"}
1
+ {"version":3,"file":"connection-manager.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/connection-manager.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAIzE,qBAAa,iBAAkB,SAAQ,iBAAiB,CAAC,GAAG,CAAC;IAC3D,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,SAAS,CAAS;gBAEd,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAgBjD,YAAY;IAIZ,WAAW,IAAI,OAAO;IAItB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc;IAKtD,UAAU,IAAI,IAAI;IAKlB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQ9B,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQhC,sBAAsB,CAAC,eAAe,EAAE,MAAM,IAAI,GAAG,IAAI;YAiDlD,iBAAiB;CAoDhC"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ConnectionManager = void 0;
4
- const aws_iot_device_sdk_v2_1 = require("aws-iot-device-sdk-v2");
4
+ const awsIot = require("aws-iot-device-sdk");
5
5
  const infrastructure_1 = require("alwaysai/lib/infrastructure");
6
6
  const directories_1 = require("../util/directories");
7
7
  const util_1 = require("alwaysai/lib/util");
@@ -9,137 +9,90 @@ const logger_1 = require("../util/logger");
9
9
  const util_2 = require("util");
10
10
  const child_process_1 = require("child_process");
11
11
  const message_dispatcher_1 = require("./message-dispatcher");
12
- const events_1 = require("events");
13
12
  const exec_promise = (0, util_2.promisify)(child_process_1.exec);
14
13
  class ConnectionManager extends message_dispatcher_1.MessageDispatcher {
15
- constructor(deviceAgentConfig) {
14
+ constructor(clientId, host, port) {
16
15
  super();
17
16
  this.subscribedTopics = new Set();
18
17
  this.connected = false;
19
- // Use config values if provided, otherwise use defaults
20
- this.clientId = deviceAgentConfig.clientId;
21
- this.host = deviceAgentConfig.host;
22
- this.port = deviceAgentConfig.port;
23
- this.qos = aws_iot_device_sdk_v2_1.mqtt5.QoS.AtLeastOnce;
24
- const certPath = deviceAgentConfig.certPath || infrastructure_1.DEVICE_CERTIFICATE_FILE_PATH;
25
- const keyPath = deviceAgentConfig.keyPath || infrastructure_1.DEVICE_PRIVATE_KEY_FILE_PATH;
26
- const caPath = deviceAgentConfig.caPath || directories_1.AWS_ROOT_CERTIFICATE_FILE_PATH;
27
- const builder = aws_iot_device_sdk_v2_1.iot.AwsIotMqtt5ClientConfigBuilder.newDirectMqttBuilderWithMtlsFromPath(this.host, certPath, keyPath);
28
- builder.withConnectProperties({
18
+ this.clientId = clientId;
19
+ this.host = host;
20
+ this.port = port;
21
+ this.device = awsIot.device({
22
+ keyPath: infrastructure_1.DEVICE_PRIVATE_KEY_FILE_PATH,
23
+ certPath: infrastructure_1.DEVICE_CERTIFICATE_FILE_PATH,
24
+ caPath: directories_1.AWS_ROOT_CERTIFICATE_FILE_PATH,
29
25
  clientId: this.clientId,
30
- keepAliveIntervalSeconds: 10
26
+ host: this.host,
27
+ port: this.port,
28
+ keepalive: 10 // time before re-connect attempt on dropped connection, default is 400 seconds
31
29
  });
32
- builder.withCertificateAuthorityFromPath(undefined, caPath);
33
- this.config = builder.build();
34
- this.client = new aws_iot_device_sdk_v2_1.mqtt5.Mqtt5Client(this.config);
35
- this.client.start();
36
30
  }
37
31
  getIoTDevice() {
38
- return this.client;
32
+ return this.device;
39
33
  }
40
34
  isConnected() {
41
35
  return this.connected;
42
36
  }
43
37
  registerHandler(topic, handler) {
44
38
  super.registerHandler(topic, handler);
45
- void this.subscribe(topic);
39
+ this.subscribe(topic);
46
40
  }
47
- async disconnect() {
48
- const stopped = (0, events_1.once)(this.client, aws_iot_device_sdk_v2_1.mqtt5.Mqtt5Client.STOPPED);
49
- this.client.stop();
50
- await stopped;
41
+ disconnect() {
42
+ this.device.end();
51
43
  logger_1.logger.debug(`Device Agent has been disconnected from the AWS IoT Core.`);
52
44
  }
53
- async subscribe(topic) {
45
+ subscribe(topic) {
54
46
  if (!this.subscribedTopics.has(topic)) {
55
- const suback = await this.client.subscribe({
56
- subscriptions: [{ qos: aws_iot_device_sdk_v2_1.mqtt5.QoS.AtLeastOnce, topicFilter: topic }]
57
- });
47
+ this.device.subscribe(topic);
58
48
  this.subscribedTopics.add(topic);
59
- logger_1.logger.debug(`Subscribed to topic: ${topic}, result: ${JSON.stringify(suback)}`);
49
+ logger_1.logger.debug(`Subscribed to topic: ${topic}`);
60
50
  }
61
51
  }
62
- async unsubscribe(topic) {
52
+ unsubscribe(topic) {
63
53
  if (this.subscribedTopics.has(topic)) {
64
- const unsuback = await this.client.unsubscribe({
65
- topicFilters: [topic]
66
- });
67
- logger_1.logger.debug(`Unsubscribed from topic: ${topic}, result: ${JSON.stringify(unsuback)}`);
54
+ this.device.unsubscribe(topic);
68
55
  this.subscribedTopics.delete(topic);
56
+ logger_1.logger.debug(`Unsubscribed from topic: ${topic}`);
69
57
  }
70
58
  }
71
59
  initConnectionHandlers(connectCallback) {
72
- this.client.on('attemptingConnect', () => {
73
- logger_1.logger.debug(`Device Agent is attempting connection`);
74
- });
75
- this.client.on('connectionSuccess', (eventData) => {
60
+ this.device.on('connect', (connack) => {
76
61
  logger_1.logger.info('Device Agent has connected to the cloud.');
77
- logger_1.logger.debug(`Connack: ${JSON.stringify(eventData.connack)}`);
78
- logger_1.logger.debug(`Settings: ${JSON.stringify(eventData.settings)}`);
79
62
  this.connected = true;
80
63
  connectCallback();
81
64
  });
82
- this.client.on('disconnection', (eventData) => {
65
+ this.device.on('disconnect', () => {
83
66
  logger_1.logger.warn('Device Agent has been disconnected from the cloud');
84
- logger_1.logger.warn(`Disconnection event: ${eventData.error.toString()}`);
85
- if (eventData.disconnect !== undefined) {
86
- logger_1.logger.debug('Disconnect packet: ' + JSON.stringify(eventData.disconnect));
87
- }
88
67
  this.connected = false;
89
68
  });
90
- this.client.on('connectionFailure', (eventData) => {
91
- logger_1.logger.error(`Error connecting to the AWS IoT Core! Disconnection event: ${eventData.error.toString()}`);
92
- if (eventData.connack) {
93
- logger_1.logger.debug('Disconnect packet: ' + JSON.stringify(eventData.connack));
94
- }
69
+ this.device.on('reconnect', () => {
70
+ logger_1.logger.info(`Device Agent attempting to re-connect ${new Date().toLocaleString()}`);
71
+ });
72
+ this.device.on('error', function (e) {
73
+ logger_1.logger.error(`Error connecting to the AWS IoT Core! Error:\n${(0, util_1.stringifyError)(e)}`);
95
74
  this.connected = false;
96
75
  });
97
- this.client.on('error', (error) => {
98
- logger_1.logger.error(`Error connecting to the AWS IoT Core! Error:\n${(0, util_1.stringifyError)(error)}`);
76
+ this.device.on('close', () => {
77
+ logger_1.logger.warn('Device Agent AWS IoT Core connection closed.');
99
78
  this.connected = false;
100
79
  });
101
- this.client.on('stopped', () => {
102
- logger_1.logger.warn(`Device Agent has stopped ${new Date().toLocaleString()}`);
80
+ this.device.on('offline', () => {
81
+ logger_1.logger.warn(`Device Agent is offline ${new Date().toLocaleString()}`);
103
82
  void this.logConnectionInfo();
104
83
  this.connected = false;
105
84
  });
106
- this.client.on('messageReceived', (eventData) => {
107
- const topic = eventData.message.topicName;
108
- const payloadBuffer = eventData.message.payload;
85
+ this.device.on('message', async (topic, payload) => {
86
+ logger_1.logger.debug(`Message received on topic: ${topic}:\n${payload.toString()}`);
109
87
  try {
110
- const payloadString = payloadBuffer
111
- ? Buffer.from(new Uint8Array(payloadBuffer)).toString('utf-8')
112
- : null;
113
- logger_1.logger.debug(`Message received on topic: ${topic}:\n${payloadString}`);
114
- this.dispatch(eventData.message.topicName, payloadString);
88
+ const jsonPacket = JSON.parse(payload);
89
+ this.dispatch(topic, jsonPacket);
115
90
  }
116
91
  catch (e) {
117
- logger_1.logger.error(`Error parsing message on topic ${eventData.message.topicName}!:\n${(0, util_1.stringifyError)(e)}`);
92
+ logger_1.logger.error(`Error parsing message! Error:\n${(0, util_1.stringifyError)(e)}`);
118
93
  }
119
94
  });
120
95
  }
121
- waitForConnection(timeoutMs = 10000) {
122
- return new Promise((resolve, reject) => {
123
- if (this.connected) {
124
- return resolve(); // already connected
125
- }
126
- const timeout = setTimeout(() => {
127
- reject(new Error('Timed out waiting for MQTT connection'));
128
- }, timeoutMs);
129
- this.client.on('connectionSuccess', () => {
130
- clearTimeout(timeout);
131
- this.connected = true;
132
- resolve();
133
- });
134
- this.client.on('disconnection', (event) => {
135
- const errorString = event.error
136
- ? event.error.toString()
137
- : 'Unknown reason';
138
- logger_1.logger.warn(`Disconnected while waiting for connection: ${errorString}`);
139
- reject(new Error(`Disconnected: ${errorString}`));
140
- });
141
- });
142
- }
143
96
  async logConnectionInfo() {
144
97
  try {
145
98
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"connection-manager.js","sourceRoot":"","sources":["../../src/cloud-connection/connection-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection-manager.js","sourceRoot":"","sources":["../../src/cloud-connection/connection-manager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"device-agent-cloud-connection.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/device-agent-cloud-connection.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAA+B,MAAM,kBAAkB,CAAC;AAQ9E,qBAAa,0BAA0B;IACrC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,kBAAkB,CAAqB;IACxC,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IAE5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAC5C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA2B;IAChD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAQ;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmC;IACjE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CACS;;IAuGtC,WAAW,IAAI,MAAM;IAIrB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIrC,IAAI;IAUJ,iBAAiB;IAMjB,UAAU,CAAC,SAAS,EAAE,MAAM;IAM5B,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG;CAGpD;AAED,wBAAsB,4BAA4B,kBA4BjD"}
1
+ {"version":3,"file":"device-agent-cloud-connection.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/device-agent-cloud-connection.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAA+B,MAAM,kBAAkB,CAAC;AAO9E,qBAAa,0BAA0B;IACrC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,kBAAkB,CAAqB;IACxC,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IAE5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAC5C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA2B;IAChD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAQ;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmC;IACjE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CACS;;IAsGtC,WAAW,IAAI,MAAM;IAIrB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIrC,IAAI;IAUJ,iBAAiB;IAMjB,UAAU,CAAC,SAAS,EAAE,MAAM;IAM5B,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG;CAGpD;AAED,wBAAsB,4BAA4B,kBA2BjD"}
@@ -13,6 +13,7 @@ const check_for_updates_1 = require("../util/check-for-updates");
13
13
  const get_device_id_1 = require("../util/get-device-id");
14
14
  const logger_1 = require("../util/logger");
15
15
  const sleep_1 = require("../util/sleep");
16
+ const bootstrap_provision_1 = require("./bootstrap-provision");
16
17
  const live_updates_handler_1 = require("./live-updates-handler");
17
18
  const passthrough_handler_1 = require("./passthrough-handler");
18
19
  const publisher_1 = require("./publisher");
@@ -21,7 +22,6 @@ const job_handler_1 = require("../jobs/job-handler");
21
22
  const transaction_manager_1 = require("./transaction-manager");
22
23
  const connection_manager_1 = require("./connection-manager");
23
24
  const device_agent_message_handler_1 = require("./device-agent-message-handler");
24
- const bootstrap_agent_1 = require("./bootstrap-agent");
25
25
  class DeviceAgentCloudConnection {
26
26
  constructor() {
27
27
  this.clientId = (0, get_device_id_1.getDeviceUuid)();
@@ -30,12 +30,7 @@ class DeviceAgentCloudConnection {
30
30
  this.toDeviceTopic = (0, device_agent_schemas_1.getToDeviceTopic)(this.clientId);
31
31
  this.secureTunnelHandler = secure_tunneling_1.SecureTunnelHandlerSingleton.getInstance();
32
32
  // Initialize & setup the connection
33
- const deviceAgentConfig = {
34
- clientId: this.clientId,
35
- host: this.host,
36
- port: this.port
37
- };
38
- this.connectionManager = new connection_manager_1.ConnectionManager(deviceAgentConfig);
33
+ this.connectionManager = new connection_manager_1.ConnectionManager(this.clientId, this.host, this.port);
39
34
  this.publisher = new publisher_1.Publisher(this.connectionManager, this.clientId);
40
35
  this.shadowHandler = new shadow_handler_1.ShadowHandler(this.clientId, this.publisher);
41
36
  this.liveUpdatesHandler = new live_updates_handler_1.LiveUpdatesHandler();
@@ -92,7 +87,7 @@ class DeviceAgentCloudConnection {
92
87
  // lost since we aren't waiting for responses so sleep for a short time to
93
88
  // receive them
94
89
  await (0, sleep_1.default)(1000);
95
- await this.connectionManager.disconnect();
90
+ this.connectionManager.disconnect();
96
91
  }
97
92
  // CLI methods
98
93
  async waitForConnection() {
@@ -113,8 +108,7 @@ exports.DeviceAgentCloudConnection = DeviceAgentCloudConnection;
113
108
  async function runDeviceAgentCloudInterface() {
114
109
  logger_1.logger.info(`Starting alwaysAI Device Agent v${await (0, check_for_updates_1.getDeviceAgentVersion)()}`);
115
110
  if ((0, fs_1.existsSync)((0, device_certificate_1.getBootstrapPrivateKeyFilePath)())) {
116
- const bootstrapAgent = new bootstrap_agent_1.BootstrapAgent();
117
- await bootstrapAgent.bootstrapProvision();
111
+ await (0, bootstrap_provision_1.bootstrapProvision)();
118
112
  return;
119
113
  }
120
114
  const filesAlreadyMigrated = await (0, required_config_checks_1.requiredConfigFilesPresentAndValid)();
@@ -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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"}
@@ -0,0 +1,21 @@
1
+ interface DeviceAgentConfigType {
2
+ keyPath: string;
3
+ certPath: string;
4
+ caPath: string;
5
+ clientId: string;
6
+ host: string;
7
+ }
8
+ export declare class DeviceAgent {
9
+ constructor(config: DeviceAgentConfigType);
10
+ deviceType: string;
11
+ device: any;
12
+ hardwareId: () => Promise<string>;
13
+ deviceId: string;
14
+ publishMessage(topic: string, message: string): void;
15
+ }
16
+ export declare class BootstrapAgent extends DeviceAgent {
17
+ subscribeToAllTopics(): Promise<void>;
18
+ handleAwsCertificateTopics(topic: string, payload: any): Promise<void>;
19
+ }
20
+ export {};
21
+ //# sourceMappingURL=device-agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"device-agent.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/device-agent.ts"],"names":[],"mappings":"AAoBA,UAAU,qBAAqB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAYD,qBAAa,WAAW;gBACV,MAAM,EAAE,qBAAqB;IAIlC,UAAU,SAAgB;IAC1B,MAAM,MAAiB;IACvB,UAAU,wBAAwD;IAClE,QAAQ,SAAmB;IAE3B,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAGrD;AAED,qBAAa,cAAe,SAAQ,WAAW;IAChC,oBAAoB;IAepB,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG;CAyDpE"}
@@ -1,44 +1,39 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BootstrapAgent = void 0;
3
+ exports.BootstrapAgent = exports.DeviceAgent = void 0;
4
+ // eslint-disable-next-line
5
+ const awsIot = require('aws-iot-device-sdk');
4
6
  const app_1 = require("alwaysai/lib/core/app");
5
7
  const infrastructure_1 = require("alwaysai/lib/infrastructure");
6
8
  const util_1 = require("alwaysai/lib/util");
7
9
  const device_certificate_1 = require("../infrastructure/device-certificate");
8
10
  const get_device_id_1 = require("../util/get-device-id");
9
11
  const logger_1 = require("../util/logger");
10
- const connection_manager_1 = require("./connection-manager");
11
- const publisher_1 = require("./publisher");
12
- const device_certificate_2 = require("../infrastructure/device-certificate");
13
- const urls_1 = require("../infrastructure/urls");
14
- ``;
15
- const directories_1 = require("../util/directories");
16
12
  // eslint-disable-next-line
17
13
  const process = require('process');
18
- class BootstrapAgent {
19
- constructor() {
20
- this.clientId = (0, get_device_id_1.getDeviceUuid)();
21
- this.host = (0, urls_1.getIoTCoreEndpointUrl)();
22
- this.port = 8883;
14
+ class DeviceAgent {
15
+ constructor(config) {
16
+ this.deviceType = 'aai-device';
17
+ this.device = awsIot.device;
23
18
  this.hardwareId = async () => await (0, app_1.getTargetHardwareUuid)((0, util_1.JsSpawner)());
24
19
  this.deviceId = (0, get_device_id_1.getDeviceUuid)();
25
- this.deviceType = 'aai-device';
26
- // Initialize & setup the connection
27
- const bootstrapAgentConfig = {
28
- clientId: this.clientId,
29
- host: this.host,
30
- port: this.port,
31
- keyPath: (0, device_certificate_2.getBootstrapPrivateKeyFilePath)(),
32
- certPath: (0, device_certificate_2.getBootstrapCertificateFilePath)(),
33
- caPath: directories_1.AWS_ROOT_CERTIFICATE_FILE_PATH
34
- };
35
- this.connectionManager = new connection_manager_1.ConnectionManager(bootstrapAgentConfig);
36
- this.publisher = new publisher_1.Publisher(this.connectionManager, bootstrapAgentConfig.clientId);
20
+ this.device = awsIot.device(config);
37
21
  }
38
22
  publishMessage(topic, message) {
39
- this.publisher.publish(topic, message);
23
+ this.device.publish(topic, message);
24
+ }
25
+ }
26
+ exports.DeviceAgent = DeviceAgent;
27
+ class BootstrapAgent extends DeviceAgent {
28
+ async subscribeToAllTopics() {
29
+ const AWS_CERTIFICATE_ACCEPT_TOPIC = '$aws/certificates/create/json/accepted';
30
+ const PROVISIONING_ACCEPTED_TOPIC = '$aws/provisioning-templates/FleetProvisionTemplate/provision/json/accepted';
31
+ const topics = [AWS_CERTIFICATE_ACCEPT_TOPIC, PROVISIONING_ACCEPTED_TOPIC];
32
+ const resp = this.device.subscribe(topics, function (err, granted) {
33
+ logger_1.logger.debug(`Bootstrap Agent: ${JSON.stringify(granted, null, 2)}`);
34
+ });
40
35
  }
41
- async handle(payload, topic) {
36
+ async handleAwsCertificateTopics(topic, payload) {
42
37
  switch (topic) {
43
38
  case '$aws/certificates/create/json/accepted': {
44
39
  logger_1.logger.debug(`Received Certs: ${JSON.stringify(JSON.parse(payload), null, 2)}`);
@@ -68,24 +63,6 @@ class BootstrapAgent {
68
63
  }
69
64
  }
70
65
  }
71
- async bootstrapProvision() {
72
- const rmBootstrapCertsAndClose = async () => {
73
- const deviceCertificates = new infrastructure_1.LocalDeviceCertificates();
74
- const spawner = (0, util_1.JsSpawner)();
75
- await spawner.rimraf((0, device_certificate_1.getBootstrapCertificateDirectoryPath)());
76
- await spawner.rimraf(deviceCertificates.getCertificateDirectoryPath());
77
- logger_1.logger.error('Could not provision device. Try again.');
78
- process.exit(1);
79
- };
80
- setTimeout(rmBootstrapCertsAndClose, 60000);
81
- this.connectionManager.initConnectionHandlers(() => {
82
- logger_1.logger.info('Your device is being provisioned');
83
- });
84
- await this.connectionManager.waitForConnection();
85
- this.connectionManager.registerHandler('$aws/certificates/create/json/accepted', this);
86
- this.connectionManager.registerHandler('$aws/provisioning-templates/FleetProvisionTemplate/provision/json/accepted', this);
87
- this.publishMessage('$aws/certificates/create/json', '{}');
88
- }
89
66
  }
90
67
  exports.BootstrapAgent = BootstrapAgent;
91
- //# sourceMappingURL=bootstrap-agent.js.map
68
+ //# sourceMappingURL=device-agent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"device-agent.js","sourceRoot":"","sources":["../../src/cloud-connection/device-agent.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"passthrough-handler.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/passthrough-handler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAahC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AASjD,qBAAa,kBAAkB;IACtB,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,EAAE,aAAa,CAAC;IAC7B,UAAU,EAAE,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IACxC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC;IACtB,WAAW,MAAC;gBAEP,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa;YAKhD,yBAAyB;YA4EzB,wBAAwB;YAwExB,8BAA8B;IAetC,GAAG;CAoCV"}
1
+ {"version":3,"file":"passthrough-handler.d.ts","sourceRoot":"","sources":["../../src/cloud-connection/passthrough-handler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAahC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAWjD,qBAAa,kBAAkB;IACtB,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,EAAE,aAAa,CAAC;IAC7B,UAAU,EAAE,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IACxC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC;IACtB,WAAW,MAAC;gBAEP,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa;YAKhD,yBAAyB;YAsEzB,wBAAwB;YAwExB,8BAA8B;IAetC,GAAG;CAoCV"}