Added mqtt local session handler to the application class. Also updated the engine to get local session functionality.

This commit is contained in:
Relintai 2021-05-01 20:11:19 +02:00
parent ac472d3336
commit c5694ff6cf
4 changed files with 10 additions and 1 deletions

2
HEADS
View File

@ -1 +1 @@
{"engine": {"master": "09e13d255cee057e788b2acceec896a2e86df615"}}
{"engine": {"master": "06cd3e0f6b6081434af6bd9fcf154553a45941c6"}}

View File

@ -39,6 +39,10 @@ void RDNApplication::setup_middleware() {
void RDNApplication::migrate() {
}
void RDNApplication::mqtt_sensor_callback(const std::string &client_id, const std::vector<uint8_t> &data) {
printf("%s\n", client_id.c_str());
}
RDNApplication::RDNApplication() :
Application() {
}

View File

@ -1,6 +1,8 @@
#ifndef RDN_APPLICATION_H
#define RDN_APPLICATION_H
#include <vector>
#include "core/application.h"
#include "core/object.h"
@ -17,6 +19,8 @@ public:
virtual void migrate();
void mqtt_sensor_callback(const std::string &client_id, const std::vector<uint8_t> &data);
RDNApplication();
~RDNApplication();

View File

@ -83,6 +83,7 @@ int main(int argc, char **argv) {
MQTTServer *mqtt_server = new MQTTServer();
mqtt_server->initialize();
mqtt_server->add_local_session("a/b", [](const std::string &client_id, const std::vector<uint8_t> &data, void* obj){ reinterpret_cast<RDNApplication*>(obj)->mqtt_sensor_callback(client_id, data); }, app);
if (!migrate) {
printf("Initialized!\n");