├── .gitignore ├── DevelopNotes.md ├── LICENSE ├── README.md ├── assets └── img │ └── topicTree.png ├── examples ├── httpServerAndMqttBroker │ └── httpServerAndMqttBroker.ino ├── simple-tcp-MqttBroker │ └── simple-tcp-MqttBroker.ino └── simple-websocket-MqttBroker │ ├── MQTT-WebSocket-Tester.html │ └── simple-websocket-MqttBroker.ino ├── library.properties ├── platformio.ini └── src ├── Actions ├── ActionFactory.cpp ├── DisconnectAction.cpp ├── NoAction.cpp ├── PingResAction.cpp ├── PublishAction.cpp ├── SubscribeAction.cpp └── UnSubscribeAction.cpp ├── ConcurrentTasks └── CheckMqttClientTask.cpp ├── EmbeddedMqttBroker.h ├── MqttBroker ├── MqttBroker.cpp ├── MqttBroker.h └── MqttBrokerFactory.h ├── MqttClient └── MqttClient.cpp ├── MqttMessages ├── AckConnectMqttMessage.cpp ├── AckConnectMqttMessage.h ├── AckSubscriptionMqttMessage.cpp ├── AckSubscriptionMqttMessage.h ├── ConnectMqttMessage.cpp ├── ConnectMqttMessage.h ├── ControlPacketType.h ├── FactoryMqttMessage.cpp ├── FactoryMqttMessages.h ├── MqttMessage.cpp ├── MqttMessage.h ├── MqttMessagesSerealizable.h ├── MqttTocpic.h ├── NotMqttMessage.h ├── PingReqMqttMessage.h ├── PingResMqttMessage.h ├── PublishMqttMessage.cpp ├── PublishMqttMessage.h ├── ReaderMqttPacket.cpp ├── ReaderMqttPacket.h ├── SubscribeMqttMessage.cpp ├── SubscribeMqttMessage.h ├── UnsubscribeMqttMessage.cpp └── UnsubscribeMqttMessage.h ├── TopicTree ├── NodeTrie.cpp └── Trie.cpp └── TransportLayer ├── MqttTransport.h ├── TcpListener.cpp ├── TcpTransport.h ├── WsListener.cpp └── WsTransport.h /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/.gitignore -------------------------------------------------------------------------------- /DevelopNotes.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/DevelopNotes.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/README.md -------------------------------------------------------------------------------- /assets/img/topicTree.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/assets/img/topicTree.png -------------------------------------------------------------------------------- /examples/httpServerAndMqttBroker/httpServerAndMqttBroker.ino: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/examples/httpServerAndMqttBroker/httpServerAndMqttBroker.ino -------------------------------------------------------------------------------- /examples/simple-tcp-MqttBroker/simple-tcp-MqttBroker.ino: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/examples/simple-tcp-MqttBroker/simple-tcp-MqttBroker.ino -------------------------------------------------------------------------------- /examples/simple-websocket-MqttBroker/MQTT-WebSocket-Tester.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/examples/simple-websocket-MqttBroker/MQTT-WebSocket-Tester.html -------------------------------------------------------------------------------- /examples/simple-websocket-MqttBroker/simple-websocket-MqttBroker.ino: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/examples/simple-websocket-MqttBroker/simple-websocket-MqttBroker.ino -------------------------------------------------------------------------------- /library.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/library.properties -------------------------------------------------------------------------------- /platformio.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/platformio.ini -------------------------------------------------------------------------------- /src/Actions/ActionFactory.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/Actions/ActionFactory.cpp -------------------------------------------------------------------------------- /src/Actions/DisconnectAction.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/Actions/DisconnectAction.cpp -------------------------------------------------------------------------------- /src/Actions/NoAction.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/Actions/NoAction.cpp -------------------------------------------------------------------------------- /src/Actions/PingResAction.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/Actions/PingResAction.cpp -------------------------------------------------------------------------------- /src/Actions/PublishAction.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/Actions/PublishAction.cpp -------------------------------------------------------------------------------- /src/Actions/SubscribeAction.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/Actions/SubscribeAction.cpp -------------------------------------------------------------------------------- /src/Actions/UnSubscribeAction.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/Actions/UnSubscribeAction.cpp -------------------------------------------------------------------------------- /src/ConcurrentTasks/CheckMqttClientTask.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/ConcurrentTasks/CheckMqttClientTask.cpp -------------------------------------------------------------------------------- /src/EmbeddedMqttBroker.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/EmbeddedMqttBroker.h -------------------------------------------------------------------------------- /src/MqttBroker/MqttBroker.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttBroker/MqttBroker.cpp -------------------------------------------------------------------------------- /src/MqttBroker/MqttBroker.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttBroker/MqttBroker.h -------------------------------------------------------------------------------- /src/MqttBroker/MqttBrokerFactory.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttBroker/MqttBrokerFactory.h -------------------------------------------------------------------------------- /src/MqttClient/MqttClient.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttClient/MqttClient.cpp -------------------------------------------------------------------------------- /src/MqttMessages/AckConnectMqttMessage.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/AckConnectMqttMessage.cpp -------------------------------------------------------------------------------- /src/MqttMessages/AckConnectMqttMessage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/AckConnectMqttMessage.h -------------------------------------------------------------------------------- /src/MqttMessages/AckSubscriptionMqttMessage.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/AckSubscriptionMqttMessage.cpp -------------------------------------------------------------------------------- /src/MqttMessages/AckSubscriptionMqttMessage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/AckSubscriptionMqttMessage.h -------------------------------------------------------------------------------- /src/MqttMessages/ConnectMqttMessage.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/ConnectMqttMessage.cpp -------------------------------------------------------------------------------- /src/MqttMessages/ConnectMqttMessage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/ConnectMqttMessage.h -------------------------------------------------------------------------------- /src/MqttMessages/ControlPacketType.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/ControlPacketType.h -------------------------------------------------------------------------------- /src/MqttMessages/FactoryMqttMessage.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/FactoryMqttMessage.cpp -------------------------------------------------------------------------------- /src/MqttMessages/FactoryMqttMessages.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/FactoryMqttMessages.h -------------------------------------------------------------------------------- /src/MqttMessages/MqttMessage.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/MqttMessage.cpp -------------------------------------------------------------------------------- /src/MqttMessages/MqttMessage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/MqttMessage.h -------------------------------------------------------------------------------- /src/MqttMessages/MqttMessagesSerealizable.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/MqttMessagesSerealizable.h -------------------------------------------------------------------------------- /src/MqttMessages/MqttTocpic.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/MqttTocpic.h -------------------------------------------------------------------------------- /src/MqttMessages/NotMqttMessage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/NotMqttMessage.h -------------------------------------------------------------------------------- /src/MqttMessages/PingReqMqttMessage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/PingReqMqttMessage.h -------------------------------------------------------------------------------- /src/MqttMessages/PingResMqttMessage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/PingResMqttMessage.h -------------------------------------------------------------------------------- /src/MqttMessages/PublishMqttMessage.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/PublishMqttMessage.cpp -------------------------------------------------------------------------------- /src/MqttMessages/PublishMqttMessage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/PublishMqttMessage.h -------------------------------------------------------------------------------- /src/MqttMessages/ReaderMqttPacket.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/ReaderMqttPacket.cpp -------------------------------------------------------------------------------- /src/MqttMessages/ReaderMqttPacket.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/ReaderMqttPacket.h -------------------------------------------------------------------------------- /src/MqttMessages/SubscribeMqttMessage.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/SubscribeMqttMessage.cpp -------------------------------------------------------------------------------- /src/MqttMessages/SubscribeMqttMessage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/SubscribeMqttMessage.h -------------------------------------------------------------------------------- /src/MqttMessages/UnsubscribeMqttMessage.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/UnsubscribeMqttMessage.cpp -------------------------------------------------------------------------------- /src/MqttMessages/UnsubscribeMqttMessage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/MqttMessages/UnsubscribeMqttMessage.h -------------------------------------------------------------------------------- /src/TopicTree/NodeTrie.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/TopicTree/NodeTrie.cpp -------------------------------------------------------------------------------- /src/TopicTree/Trie.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/TopicTree/Trie.cpp -------------------------------------------------------------------------------- /src/TransportLayer/MqttTransport.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/TransportLayer/MqttTransport.h -------------------------------------------------------------------------------- /src/TransportLayer/TcpListener.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/TransportLayer/TcpListener.cpp -------------------------------------------------------------------------------- /src/TransportLayer/TcpTransport.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/TransportLayer/TcpTransport.h -------------------------------------------------------------------------------- /src/TransportLayer/WsListener.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/TransportLayer/WsListener.cpp -------------------------------------------------------------------------------- /src/TransportLayer/WsTransport.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexCajas/EmbeddedMqttBroker/HEAD/src/TransportLayer/WsTransport.h --------------------------------------------------------------------------------