Azure IoT middleware for FreeRTOS
Data Structures | Macros | Typedefs | Enumerations | Functions
azure_iot_hub_client.h File Reference

The middleware IoT Hub Client used to connect a device to Azure IoT Hub. More...

#include "azure_iot.h"
#include "azure_iot_message.h"
#include "azure_iot_result.h"
#include "azure_iot_mqtt_port.h"
#include "azure_iot_transport_interface.h"
#include "azure/az_core.h"
#include "azure/iot/az_iot_common.h"
#include "azure/iot/az_iot_hub_client.h"
#include "azure/core/_az_cfg_prefix.h"
#include "azure/core/_az_cfg_suffix.h"

Go to the source code of this file.

Data Structures

struct  AzureIoTHubClientCloudToDeviceMessageRequest
 IoT Hub Cloud Message Request struct. More...
 
struct  AzureIoTHubClientCommandRequest
 IoT Hub Command Request struct. More...
 
struct  AzureIoTHubClientPropertiesResponse
 IoT Hub Properties Response struct. More...
 
struct  AzureIoTHubClientReceiveContext
 Receive context to be used internally for the processing of messages. More...
 
struct  AzureIoTHubClientOptions
 Options list for the hub client. More...
 
struct  AzureIoTHubClient
 

Macros

#define azureiothubSUBSCRIBE_FEATURE_COUNT   ( 3 )
 Total number of features which could be subscribed to.
 
#define azureiothubCREATE_COMPONENT(x)   ( AzureIoTHubClientComponent_t ) AZ_SPAN_LITERAL_FROM_STR( x )
 Macro which should be used to create an array of AzureIoTHubClientComponent_t.
 

Typedefs

typedef struct AzureIoTHubClient AzureIoTHubClient_t
 
typedef az_span AzureIoTHubClientComponent_t
 Type for Azure IoT Plug and Play component. The list of component names can be set as an option for the Azure IoT Hub Client.
 
typedef enum AzureIoTHubMessageQoS AzureIoTHubMessageQoS_t
 MQTT quality of service values used for messages.
 
typedef enum AzureIoTHubMessageType AzureIoTHubMessageType_t
 Enumeration to dictate Azure IoT message types.
 
typedef enum AzureIoTHubMessageStatus AzureIoTHubMessageStatus_t
 Status codes for Azure IoT Hub responses.
 
typedef struct AzureIoTHubClientCloudToDeviceMessageRequest AzureIoTHubClientCloudToDeviceMessageRequest_t
 IoT Hub Cloud Message Request struct.
 
typedef struct AzureIoTHubClientCommandRequest AzureIoTHubClientCommandRequest_t
 IoT Hub Command Request struct.
 
typedef struct AzureIoTHubClientPropertiesResponse AzureIoTHubClientPropertiesResponse_t
 IoT Hub Properties Response struct.
 
typedef void(* AzureIoTHubClientCloudToDeviceMessageCallback_t) (AzureIoTHubClientCloudToDeviceMessageRequest_t *pxMessage, void *pvContext)
 Cloud message callback to be invoked when a cloud message is received in the call to AzureIoTHubClient_ProcessLoop(). More...
 
typedef void(* AzureIoTHubClientCommandCallback_t) (AzureIoTHubClientCommandRequest_t *pxMessage, void *pvContext)
 Command callback to be invoked when a command request is received in the call to AzureIoTHubClient_ProcessLoop(). More...
 
typedef void(* AzureIoTHubClientPropertiesCallback_t) (AzureIoTHubClientPropertiesResponse_t *pxMessage, void *pvContext)
 Properties callback to be invoked when a property message is received in the call to AzureIoTHubClient_ProcessLoop(). More...
 
typedef struct AzureIoTHubClientReceiveContext AzureIoTHubClientReceiveContext_t
 Receive context to be used internally for the processing of messages. More...
 
typedef void(* AzureIoTTelemetryAckCallback_t) (uint16_t ulTelemetryPacketID)
 Callback to send notification that puback was received for specific packet ID. More...
 
typedef struct AzureIoTHubClientOptions AzureIoTHubClientOptions_t
 Options list for the hub client.
 

Enumerations

enum  AzureIoTHubMessageQoS { eAzureIoTHubMessageQoS0 = 0 , eAzureIoTHubMessageQoS1 = 1 }
 MQTT quality of service values used for messages. More...
 
enum  AzureIoTHubMessageType {
  eAzureIoTHubCloudToDeviceMessage = 1 , eAzureIoTHubCommandMessage , eAzureIoTHubPropertiesRequestedMessage , eAzureIoTHubPropertiesReportedResponseMessage ,
  eAzureIoTHubPropertiesWritablePropertyMessage
}
 Enumeration to dictate Azure IoT message types. More...
 
enum  AzureIoTHubMessageStatus {
  eAzureIoTStatusUnknown = 0 , eAzureIoTStatusOk = 200 , eAzureIoTStatusAccepted = 202 , eAzureIoTStatusNoContent = 204 ,
  eAzureIoTStatusBadRequest = 400 , eAzureIoTStatusUnauthorized = 401 , eAzureIoTStatusForbidden = 403 , eAzureIoTStatusNotFound = 404 ,
  eAzureIoTStatusNotAllowed = 405 , eAzureIoTStatusNotConflict = 409 , eAzureIoTStatusPreconditionFailed = 412 , eAzureIoTStatusRequestTooLarge = 413 ,
  eAzureIoTStatusUnsupportedType = 415 , eAzureIoTStatusThrottled = 429 , eAzureIoTStatusClientClosed = 499 , eAzureIoTStatusServerError = 500 ,
  eAzureIoTStatusBadGateway = 502 , eAzureIoTStatusServiceUnavailable = 503 , eAzureIoTStatusTimeout = 504
}
 Status codes for Azure IoT Hub responses.
 

Functions

AzureIoTResult_t AzureIoTHubClient_OptionsInit (AzureIoTHubClientOptions_t *pxHubClientOptions)
 Initialize the Azure IoT Hub Options with default values. More...
 
AzureIoTResult_t AzureIoTHubClient_Init (AzureIoTHubClient_t *pxAzureIoTHubClient, const uint8_t *pucHostname, uint16_t ulHostnameLength, const uint8_t *pucDeviceID, uint16_t ulDeviceIDLength, AzureIoTHubClientOptions_t *pxHubClientOptions, uint8_t *pucBuffer, uint32_t ulBufferLength, AzureIoTGetCurrentTimeFunc_t xGetTimeFunction, const AzureIoTTransportInterface_t *pxTransportInterface)
 Initialize the Azure IoT Hub Client. More...
 
void AzureIoTHubClient_Deinit (AzureIoTHubClient_t *pxAzureIoTHubClient)
 Deinitialize the Azure IoT Hub Client. More...
 
AzureIoTResult_t AzureIoTHubClient_SetSymmetricKey (AzureIoTHubClient_t *pxAzureIoTHubClient, const uint8_t *pucSymmetricKey, uint32_t ulSymmetricKeyLength, AzureIoTGetHMACFunc_t xHMACFunction)
 Set the symmetric key to use for authentication. More...
 
AzureIoTResult_t AzureIoTHubClient_Connect (AzureIoTHubClient_t *pxAzureIoTHubClient, bool xCleanSession, bool *pxOutSessionPresent, uint32_t ulTimeoutMilliseconds)
 Connect via MQTT to the IoT Hub endpoint. More...
 
AzureIoTResult_t AzureIoTHubClient_Disconnect (AzureIoTHubClient_t *pxAzureIoTHubClient)
 Disconnect from the IoT Hub endpoint. More...
 
AzureIoTResult_t AzureIoTHubClient_SendTelemetry (AzureIoTHubClient_t *pxAzureIoTHubClient, const uint8_t *pucTelemetryData, uint32_t ulTelemetryDataLength, AzureIoTMessageProperties_t *pxProperties, AzureIoTHubMessageQoS_t xQOS, uint16_t *pusTelemetryPacketID)
 Send telemetry data to IoT Hub. More...
 
AzureIoTResult_t AzureIoTHubClient_ProcessLoop (AzureIoTHubClient_t *pxAzureIoTHubClient, uint32_t ulTimeoutMilliseconds)
 Receive any incoming MQTT messages from and manage the MQTT connection to IoT Hub. More...
 
AzureIoTResult_t AzureIoTHubClient_SubscribeCloudToDeviceMessage (AzureIoTHubClient_t *pxAzureIoTHubClient, AzureIoTHubClientCloudToDeviceMessageCallback_t xCloudToDeviceMessageCallback, void *prvCallbackContext, uint32_t ulTimeoutMilliseconds)
 Subscribe to cloud to device messages. More...
 
AzureIoTResult_t AzureIoTHubClient_UnsubscribeCloudToDeviceMessage (AzureIoTHubClient_t *pxAzureIoTHubClient)
 Unsubscribe from cloud to device messages. More...
 
AzureIoTResult_t AzureIoTHubClient_SubscribeCommand (AzureIoTHubClient_t *pxAzureIoTHubClient, AzureIoTHubClientCommandCallback_t xCommandCallback, void *prvCallbackContext, uint32_t ulTimeoutMilliseconds)
 Subscribe to commands. More...
 
AzureIoTResult_t AzureIoTHubClient_UnsubscribeCommand (AzureIoTHubClient_t *pxAzureIoTHubClient)
 Unsubscribe from commands. More...
 
AzureIoTResult_t AzureIoTHubClient_SendCommandResponse (AzureIoTHubClient_t *pxAzureIoTHubClient, const AzureIoTHubClientCommandRequest_t *pxMessage, uint32_t ulStatus, const uint8_t *pucCommandPayload, uint32_t ulCommandPayloadLength)
 Send a response to a received command message. More...
 
AzureIoTResult_t AzureIoTHubClient_SubscribeProperties (AzureIoTHubClient_t *pxAzureIoTHubClient, AzureIoTHubClientPropertiesCallback_t xPropertiesCallback, void *prvCallbackContext, uint32_t ulTimeoutMilliseconds)
 Subscribe to device properties. More...
 
AzureIoTResult_t AzureIoTHubClient_UnsubscribeProperties (AzureIoTHubClient_t *pxAzureIoTHubClient)
 Unsubscribe from device properties. More...
 
AzureIoTResult_t AzureIoTHubClient_SendPropertiesReported (AzureIoTHubClient_t *pxAzureIoTHubClient, const uint8_t *pucReportedPayload, uint32_t ulReportedPayloadLength, uint32_t *pulRequestID)
 Send reported device properties to Azure IoT Hub. More...
 
AzureIoTResult_t AzureIoTHubClient_RequestPropertiesAsync (AzureIoTHubClient_t *pxAzureIoTHubClient)
 Request to get the device property document. More...
 

Detailed Description

The middleware IoT Hub Client used to connect a device to Azure IoT Hub.

Note
You MUST NOT use any symbols (macros, functions, structures, enums, etc.) prefixed with an underscore ('_') directly in your application code. These symbols are part of Azure SDK's internal implementation; we do not document these symbols and they are subject to change in future versions of the SDK which would break your code.

Typedef Documentation

◆ AzureIoTHubClientCloudToDeviceMessageCallback_t

typedef void( * AzureIoTHubClientCloudToDeviceMessageCallback_t) (AzureIoTHubClientCloudToDeviceMessageRequest_t *pxMessage, void *pvContext)

Cloud message callback to be invoked when a cloud message is received in the call to AzureIoTHubClient_ProcessLoop().

Parameters
[in]pxMessageThe AzureIoTHubClientCloudToDeviceMessageRequest_t associated with the message.
[in]pvContextThe context passed back to the caller.

◆ AzureIoTHubClientCommandCallback_t

typedef void( * AzureIoTHubClientCommandCallback_t) (AzureIoTHubClientCommandRequest_t *pxMessage, void *pvContext)

Command callback to be invoked when a command request is received in the call to AzureIoTHubClient_ProcessLoop().

Parameters
[in]pxMessageThe AzureIoTHubClientCommandRequest_t associated with the message.
[in]pvContextThe context passed back to the caller.

◆ AzureIoTHubClientPropertiesCallback_t

typedef void( * AzureIoTHubClientPropertiesCallback_t) (AzureIoTHubClientPropertiesResponse_t *pxMessage, void *pvContext)

Properties callback to be invoked when a property message is received in the call to AzureIoTHubClient_ProcessLoop().

Parameters
[in]pxMessageThe AzureIoTHubClientPropertiesResponse_t associated with the message.
[in]pvContextThe context passed back to the caller.

◆ AzureIoTHubClientReceiveContext_t

Receive context to be used internally for the processing of messages.

Warning
Used internally.

◆ AzureIoTTelemetryAckCallback_t

typedef void(* AzureIoTTelemetryAckCallback_t) (uint16_t ulTelemetryPacketID)

Callback to send notification that puback was received for specific packet ID.

Parameters
[in]ulTelemetryPacketIDThe packet id for the telemetry message which was received. You may use this to match messages with the optional packet id parameter in AzureIoTHubClient_SendTelemetry().

Enumeration Type Documentation

◆ AzureIoTHubMessageQoS

MQTT quality of service values used for messages.

Enumerator
eAzureIoTHubMessageQoS1 

Delivery at most once.

◆ AzureIoTHubMessageType

Enumeration to dictate Azure IoT message types.

Enumerator
eAzureIoTHubCloudToDeviceMessage 

The message is a cloud message.

eAzureIoTHubCommandMessage 

The message is a command message.

eAzureIoTHubPropertiesRequestedMessage 

The message is a response from a property request (payload contains the property document).

eAzureIoTHubPropertiesReportedResponseMessage 

The message is a reported property status response.

eAzureIoTHubPropertiesWritablePropertyMessage 

The message is a writable property message (incoming from the service).

Function Documentation

◆ AzureIoTHubClient_Connect()

AzureIoTResult_t AzureIoTHubClient_Connect ( AzureIoTHubClient_t pxAzureIoTHubClient,
bool  xCleanSession,
bool *  pxOutSessionPresent,
uint32_t  ulTimeoutMilliseconds 
)

Connect via MQTT to the IoT Hub endpoint.

Parameters
[in]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
[in]xCleanSessionA boolean dictating whether to connect with a clean session or not.
[in]pxOutSessionPresentWhether a previous session was present. Only relevant if not establishing a clean session.
[in]ulTimeoutMillisecondsThe maximum time in milliseconds to wait for a CONNACK.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_Deinit()

void AzureIoTHubClient_Deinit ( AzureIoTHubClient_t pxAzureIoTHubClient)

Deinitialize the Azure IoT Hub Client.

Parameters
pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.

◆ AzureIoTHubClient_Disconnect()

AzureIoTResult_t AzureIoTHubClient_Disconnect ( AzureIoTHubClient_t pxAzureIoTHubClient)

Disconnect from the IoT Hub endpoint.

Parameters
[in]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_Init()

AzureIoTResult_t AzureIoTHubClient_Init ( AzureIoTHubClient_t pxAzureIoTHubClient,
const uint8_t *  pucHostname,
uint16_t  ulHostnameLength,
const uint8_t *  pucDeviceID,
uint16_t  ulDeviceIDLength,
AzureIoTHubClientOptions_t pxHubClientOptions,
uint8_t *  pucBuffer,
uint32_t  ulBufferLength,
AzureIoTGetCurrentTimeFunc_t  xGetTimeFunction,
const AzureIoTTransportInterface_t pxTransportInterface 
)

Initialize the Azure IoT Hub Client.

Parameters
[out]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
[in]pucHostnameThe IoT Hub Hostname.
[in]ulHostnameLengthThe length of the IoT Hub Hostname.
[in]pucDeviceIDThe device ID. If the ID contains any of the following characters, they must be percent-encoded as follows:
  • / : %2F
  • % : %25
  • # : %23
  • & : %26
[in]ulDeviceIDLengthThe length of the device ID.
[in]pxHubClientOptionsThe AzureIoTHubClientOptions_t for the IoT Hub client instance.
[in]pucBufferThe static buffer to use for middleware operations and MQTT messages until AzureIoTHubClient_Deinit is called.
[in]ulBufferLengthThe length of the pucBuffer.
[in]xGetTimeFunctionA function pointer to a function which gives the current epoch time.
[in]pxTransportInterfaceThe AzureIoTTransportInterface_t to use for the MQTT library.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_OptionsInit()

AzureIoTResult_t AzureIoTHubClient_OptionsInit ( AzureIoTHubClientOptions_t pxHubClientOptions)

Initialize the Azure IoT Hub Options with default values.

Parameters
[out]pxHubClientOptionsThe AzureIoTHubClientOptions_t instance to set with default values.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_ProcessLoop()

AzureIoTResult_t AzureIoTHubClient_ProcessLoop ( AzureIoTHubClient_t pxAzureIoTHubClient,
uint32_t  ulTimeoutMilliseconds 
)

Receive any incoming MQTT messages from and manage the MQTT connection to IoT Hub.

Note
This API will receive any messages sent to the device and manage the connection such as sending PING messages.
Parameters
[in]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
[in]ulTimeoutMillisecondsMinimum time (in milliseconds) for the loop to run. If 0 is passed, it will only run once.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_RequestPropertiesAsync()

AzureIoTResult_t AzureIoTHubClient_RequestPropertiesAsync ( AzureIoTHubClient_t pxAzureIoTHubClient)

Request to get the device property document.

Note
AzureIoTHubClient_SubscribeProperties() must be called before calling this function.

The response to the request will be returned via the AzureIoTHubClientPropertiesCallback_t which was passed in the AzureIoTHubClient_SubscribeProperties() call. The type of message will be eAzureIoTHubPropertiesRequestedMessage and the payload (on success) will be the property document.

Parameters
[in]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_SendCommandResponse()

AzureIoTResult_t AzureIoTHubClient_SendCommandResponse ( AzureIoTHubClient_t pxAzureIoTHubClient,
const AzureIoTHubClientCommandRequest_t pxMessage,
uint32_t  ulStatus,
const uint8_t *  pucCommandPayload,
uint32_t  ulCommandPayloadLength 
)

Send a response to a received command message.

Parameters
[in]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
[in]pxMessageThe pointer to the AzureIoTHubClientCommandRequest_t to which a response is being sent.
[in]ulStatusA code that indicates the result of the command, as defined by the user.
[in]pucCommandPayload[nullable] An optional command response payload.
[in]ulCommandPayloadLengthThe length of the command response payload.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_SendPropertiesReported()

AzureIoTResult_t AzureIoTHubClient_SendPropertiesReported ( AzureIoTHubClient_t pxAzureIoTHubClient,
const uint8_t *  pucReportedPayload,
uint32_t  ulReportedPayloadLength,
uint32_t *  pulRequestID 
)

Send reported device properties to Azure IoT Hub.

Note
AzureIoTHubClient_SubscribeProperties() must be called before calling this function.
Parameters
[in]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
[in]pucReportedPayloadThe payload of properly formatted, reported properties.
[in]ulReportedPayloadLengthThe length of the reported property payload.
[out]pulRequestIDPointer to request ID used to send the reported property.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_SendTelemetry()

AzureIoTResult_t AzureIoTHubClient_SendTelemetry ( AzureIoTHubClient_t pxAzureIoTHubClient,
const uint8_t *  pucTelemetryData,
uint32_t  ulTelemetryDataLength,
AzureIoTMessageProperties_t pxProperties,
AzureIoTHubMessageQoS_t  xQOS,
uint16_t *  pusTelemetryPacketID 
)

Send telemetry data to IoT Hub.

Parameters
[in]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
[in]pucTelemetryDataThe pointer to the buffer of telemetry data.
[in]ulTelemetryDataLengthThe length of the buffer to send as telemetry.
[in]pxPropertiesThe property bag to send with the message.
[in]xQOSThe QOS to use for the telemetry. Only QOS 0 and 1 are supported.
[out]pusTelemetryPacketIDThe packet id for the sent telemetry. Can be notified of PUBACK for QOS 1 using the AzureIoTHubClientOptions_t xTelemetryCallback option. If xQOS is eAzureIoTHubMessageQoS0 this value will not be sent on return. Can be NULL.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_SetSymmetricKey()

AzureIoTResult_t AzureIoTHubClient_SetSymmetricKey ( AzureIoTHubClient_t pxAzureIoTHubClient,
const uint8_t *  pucSymmetricKey,
uint32_t  ulSymmetricKeyLength,
AzureIoTGetHMACFunc_t  xHMACFunction 
)

Set the symmetric key to use for authentication.

Note
If using X509 authentication, this is not needed and should not be used.
Parameters
[in]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
[in]pucSymmetricKeyThe symmetric key to use for the connection.
[in]ulSymmetricKeyLengthThe length of the pucSymmetricKey.
[in]xHMACFunctionThe AzureIoTGetHMACFunc_t function pointer to a function which computes the HMAC256 over a set of bytes.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_SubscribeCloudToDeviceMessage()

AzureIoTResult_t AzureIoTHubClient_SubscribeCloudToDeviceMessage ( AzureIoTHubClient_t pxAzureIoTHubClient,
AzureIoTHubClientCloudToDeviceMessageCallback_t  xCloudToDeviceMessageCallback,
void *  prvCallbackContext,
uint32_t  ulTimeoutMilliseconds 
)

Subscribe to cloud to device messages.

Parameters
[in]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
[in]xCloudToDeviceMessageCallbackThe AzureIoTHubClientCloudToDeviceMessageCallback_t to invoke when a CloudToDevice messages arrive.
[in]prvCallbackContextA pointer to a context to pass to the callback.
[in]ulTimeoutMillisecondsTimeout in milliseconds for subscribe operation to complete.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_SubscribeCommand()

AzureIoTResult_t AzureIoTHubClient_SubscribeCommand ( AzureIoTHubClient_t pxAzureIoTHubClient,
AzureIoTHubClientCommandCallback_t  xCommandCallback,
void *  prvCallbackContext,
uint32_t  ulTimeoutMilliseconds 
)

Subscribe to commands.

Parameters
[in]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
[in]xCommandCallbackThe AzureIoTHubClientCommandCallback_t to invoke when command messages arrive.
[in]prvCallbackContextA pointer to a context to pass to the callback.
[in]ulTimeoutMillisecondsTimeout in milliseconds for Subscribe operation to complete.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_SubscribeProperties()

AzureIoTResult_t AzureIoTHubClient_SubscribeProperties ( AzureIoTHubClient_t pxAzureIoTHubClient,
AzureIoTHubClientPropertiesCallback_t  xPropertiesCallback,
void *  prvCallbackContext,
uint32_t  ulTimeoutMilliseconds 
)

Subscribe to device properties.

Parameters
[in]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
[in]xPropertiesCallbackThe AzureIoTHubClientPropertiesCallback_t to invoke when device property messages arrive.
[in]prvCallbackContextA pointer to a context to pass to the callback.
[in]ulTimeoutMillisecondsTimeout in milliseconds for Subscribe operation to complete.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_UnsubscribeCloudToDeviceMessage()

AzureIoTResult_t AzureIoTHubClient_UnsubscribeCloudToDeviceMessage ( AzureIoTHubClient_t pxAzureIoTHubClient)

Unsubscribe from cloud to device messages.

Parameters
[in]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_UnsubscribeCommand()

AzureIoTResult_t AzureIoTHubClient_UnsubscribeCommand ( AzureIoTHubClient_t pxAzureIoTHubClient)

Unsubscribe from commands.

Parameters
[in]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
Returns
An AzureIoTResult_t with the result of the operation.

◆ AzureIoTHubClient_UnsubscribeProperties()

AzureIoTResult_t AzureIoTHubClient_UnsubscribeProperties ( AzureIoTHubClient_t pxAzureIoTHubClient)

Unsubscribe from device properties.

Parameters
[in]pxAzureIoTHubClientThe AzureIoTHubClient_t * to use for this call.
Returns
An AzureIoTResult_t with the result of the operation.