123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- /* This work is licensed under a Creative Commons CCZero 1.0 Universal License.
- * See http://creativecommons.org/publicdomain/zero/1.0/ for more information.
- *
- * Copyright 2018 (c) Fraunhofer IOSB (Author: Lukas Meling)
- */
- #ifndef UA_NETWORK_MQTT_H_
- #define UA_NETWORK_MQTT_H_
- #ifdef __cplusplus
- extern "C" {
- #endif
- #include "open62541/plugin/pubsub.h"
- #include "open62541/network_tcp.h"
- /* mqtt network layer specific internal data */
- typedef struct {
- UA_NetworkAddressUrlDataType address;
- UA_UInt32 mqttRecvBufferSize;
- UA_UInt32 mqttSendBufferSize;
- uint8_t *mqttSendBuffer;
- uint8_t *mqttRecvBuffer;
- UA_String *mqttClientId;
- UA_Connection *connection;
- void * mqttClient;
- void (*callback)(UA_ByteString *encodedBuffer, UA_ByteString *topic);
- } UA_PubSubChannelDataMQTT;
- /* TODO:
- * will topic,
- * will message,
- * user name,
- * password,
- * keep alive
- * ssl: cert, flag
- */
- UA_PubSubTransportLayer
- UA_PubSubTransportLayerMQTT(void);
- #ifdef __cplusplus
- } // extern "C"
- #endif
- #endif /* UA_NETWORK_MQTT_H_ */
|