You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,7 +13,7 @@ The AWS IoT Device SDK for JavaScript v2 connects your JavaScript applications a
13
13
*[Installing from npm](#installing-from-npm)
14
14
*[Getting Started](#getting-started)
15
15
*[Samples](samples)
16
-
*[MQTT5 User Guide](https://github.com/awslabs/aws-crt-nodejs/blob/main/MQTT5-UserGuide.md)
16
+
*[MQTT5 User Guide](./documents/MQTT5_Userguide.md)
17
17
*[Getting Help](#getting-help)
18
18
*[Resources](#resources)
19
19
@@ -23,7 +23,7 @@ The primary purpose of the AWS IoT Device SDK for JavaScript v2 is to simplify t
23
23
24
24
* Integrated service clients for AWS IoT Core services
25
25
* Secure device connections to AWS IoT Core using MQTT protocol including MQTT 5.0
26
-
* Support for [multiple authentication methods and connection types](https://github.com/awslabs/aws-crt-nodejs/blob/main/MQTT5-UserGuide.md#how-to-create-an-mqtt5-client-based-on-desired-connection-method)
26
+
* Support for [multiple authentication methods and connection types](./documents/MQTT5_Userguide.md#how-to-create-an-mqtt5-client-based-on-desired-connection-method)
27
27
28
28
#### Supported AWS IoT Core services
29
29
@@ -63,11 +63,11 @@ To get started with the AWS IoT Device SDK for JavaScript v2:
63
63
64
64
1.**Install the SDK** - See the [Installation](#installation) section for installation details
65
65
66
-
2.**Choose your connection method** - The SDK supports multiple authentication methods including X.509 certificates, AWS credentials, and custom authentication. [MQTT5 User Guide connection section](https://github.com/awslabs/aws-crt-nodejs/blob/main/MQTT5-UserGuide.md#connecting-to-aws-iot-core) provides more guidance
66
+
2.**Choose your connection method** - The SDK supports multiple authentication methods including X.509 certificates, AWS credentials, and custom authentication. [MQTT5 User Guide connection section](./documents/MQTT5_Userguide.md#connecting-to-aws-iot-core) provides more guidance
67
67
68
68
3.**Follow a complete example** - Check out the [samples](samples) directory
69
69
70
-
4.**Learn MQTT5 features** - For advanced usage and configuration options, see the [MQTT5 User Guide](https://github.com/awslabs/aws-crt-nodejs/blob/main/MQTT5-UserGuide.md)
70
+
4.**Learn MQTT5 features** - For advanced usage and configuration options, see the [MQTT5 User Guide](./documents/MQTT5_Userguide.md)
71
71
72
72
The samples provide ready-to-run code with detailed setup instructions for each authentication method and use case.
73
73
@@ -96,7 +96,7 @@ Check out our resources for additional guidance too before opening an issue:
Copy file name to clipboardExpand all lines: documents/FAQ.md
+13Lines changed: 13 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,6 +11,7 @@
11
11
*[Vercel/pkg Support](#vercel/pkg-support)
12
12
*[Where can I find MQTT 311 Samples?](#where-can-i-find-mqtt-311-samples)
13
13
*[Certificate and Private Key Usage Across Different Versions of the SDK on macOS](#certificate-and-private-key-usage-across-different-versions-of-the-sdk-on-macos)
14
+
*[Manual Publish Acknowledgement and QoS 1 Redelivery](#manual-publish-acknowledgement-and-qos-1-redelivery)
14
15
*[I still have more questions about this sdk?](#i-still-have-more-questions-about-this-sdk)
15
16
16
17
### Where should I start?
@@ -131,6 +132,18 @@ The MQTT 311 Samples can be found in the v1.23.0 samples folder [here](https://g
131
132
### Certificate and Private Key Usage Across Different Versions of the SDK on macOS
132
133
A certificate and private key pair cannot be shared on a macOS device between aws-iot-device-sdk-js-v2 v1.24.0 and an earlier version. In the update to v1.24.0 we migrated macOS from using Apple's deprecated Security Framework to SecItem API. In doing so, certificate and private keys are imported in a non-backwards compatible manner into the Apple Keychain.
133
134
135
+
### Manual Publish Acknowledgement and QoS 1 Redelivery
136
+
137
+
When using [manual publish acknowledgement](./MQTT5_Userguide.md#manual-publish-acknowledgement), there are two important behaviors to be aware of regarding QoS 1 message redelivery:
138
+
139
+
**Broker redelivery of unacknowledged publishes**
140
+
141
+
The AWS IoT broker will periodically resend unacknowledged QoS 1 PUBLISH packets. These redeliveries should be treated as duplicates even if the DUP flag in the PUBLISH packet is not set. If the manual publish acknowledgement is not acquired again for a redelivered packet, the acknowledgement will be sent automatically.
142
+
143
+
**Session resumption after disconnect/reconnect**
144
+
145
+
Upon a disconnect and reconnect of the MQTT5 client, if a session is resumed, any previously acquired acknowledgement handle is void. The broker will resend the unacknowledged PUBLISH packet, and the acknowledgement must be reacquired from that resent packet. If the resent packet is not handled for manual acknowledgement, the acknowledgement will be sent automatically.
146
+
134
147
### I still have more questions about this sdk?
135
148
136
149
*[Here](https://docs.aws.amazon.com/iot/latest/developerguide/what-is-aws-iot.html) are the AWS IoT Core docs for more details about IoT Core
For more information, refer to the [Connecting to AWS IoT Core](https://github.com/awslabs/aws-crt-nodejs/blob/main/MQTT5-UserGuide.md#connecting-to-aws-iot-core)
165
+
For more information, refer to the [Connecting to AWS IoT Core](./MQTT5_Userguide.md#connecting-to-aws-iot-core)
166
166
section of the MQTT5 user guide for detailed information and code snippets on each connection type and connection feature.
167
167
168
168
> [!NOTE]
169
169
> Both v1 and v2 SDKs support only SigV4 and Custom authentication in browser environment.
${\Large\color{orange}✔}$<sup>\*</sup> - To get this connection type work in the v1 SDK, you need to extract a private key from a PKCS #12 file.\
183
183
${\Large\color{orange}✔}$<sup>\*\*</sup> - The v1 SDK does not allow specifying HTTP proxy, but it is possible to configure systemwide proxy.
@@ -238,7 +238,7 @@ You can supply a custom callback function via `on` method of the `device` instan
238
238
events callbacks to help determine the state of the MQTT client during operation.
239
239
240
240
The v2 SDK defines its own set of lifecycle events: *AttemptingConnect*, *ConnectionSuccess*, *ConnectionFailure*, *Disconnect*,
241
-
and *Stopped*. For more information, refer to the [MQTT5 user guide](https://github.com/awslabs/aws-crt-nodejs/blob/main/MQTT5-UserGuide.md#client-events).
241
+
and *Stopped*. For more information, refer to the [MQTT5 user guide](./MQTT5_Userguide.md#client-events).
242
242
243
243
#### Example of setting lifecycle events in the v1 SDK
0 commit comments