UNPKG

aws-crt

Version:

NodeJS/browser bindings to the aws-c-* libraries

99 lines (96 loc) 2.93 kB
/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ /** * MQTT Quality of Service * [MQTT-4.3] * * @module aws-crt * @category MQTT */ export declare enum QoS { /** * QoS 0 - At most once delivery * The message is delivered according to the capabilities of the underlying network. * No response is sent by the receiver and no retry is performed by the sender. * The message arrives at the receiver either once or not at all. */ AtMostOnce = 0, /** * QoS 1 - At least once delivery * This quality of service ensures that the message arrives at the receiver at least once. */ AtLeastOnce = 1, /** * QoS 2 - Exactly once delivery * This is the highest quality of service, for use when neither loss nor * duplication of messages are acceptable. There is an increased overhead * associated with this quality of service. * Note that, while this client supports QoS 2, the AWS IoT Core service * does not support QoS 2 at time of writing (May 2020). */ ExactlyOnce = 2 } /** * Possible types of data to send via publish or receive via subscription * * @module aws-crt * @category MQTT */ export declare type Payload = String | Object | DataView; /** * Every request sent returns an MqttRequest * * @module aws-crt * @category MQTT */ export interface MqttRequest { /** Packet ID being acknowledged when the request completes */ packet_id?: number; } /** * Subscription SUBACK result * * @module aws-crt * @category MQTT */ export interface MqttSubscribeRequest extends MqttRequest { /** Topic filter of the SUBSCRIBE packet being acknowledged */ topic: string; /** Maximum QoS granted by the server. This may be lower than the requested QoS. */ qos: QoS; /** If an error occurred, the error code */ error_code?: number; } /** * A Will message is published by the server if a client is lost unexpectedly. * * The Will message is stored on the server when a client connects. * It is published if the client connection is lost without the server * receiving a DISCONNECT packet. * * [MQTT - 3.1.2 - 8] * * @module aws-crt * @category MQTT */ export declare class MqttWill { /** Topic to publish Will message on. */ readonly topic: string; /** QoS used when publishing the Will message. */ readonly qos: QoS; /** Content of Will message. */ readonly payload: Payload; /** Whether the Will message is to be retained when it is published. */ readonly retain: boolean; constructor( /** Topic to publish Will message on. */ topic: string, /** QoS used when publishing the Will message. */ qos: QoS, /** Content of Will message. */ payload: Payload, /** Whether the Will message is to be retained when it is published. */ retain?: boolean); }