27 lines
716 B
C
27 lines
716 B
C
#include "mgos.h"
|
|
#include "mgos_mqtt.h"
|
|
|
|
uint32_t mqtt_pub_count=0;
|
|
uint32_t mqtt_sub_count=0;
|
|
|
|
static sub_handler_t s_handler;
|
|
static void *s_handler_ud;
|
|
|
|
void mgos_mqtt_pub(char *t, char *m, int m_len, int flags, bool persist) {
|
|
LOG(LL_INFO, ("Sending topic='%s' msg='%s' persist=%s", t, m, persist?"ON":"OFF"));
|
|
mqtt_pub_count++;
|
|
}
|
|
|
|
void mgos_mqtt_sub(char *t, sub_handler_t cb, void *ud) {
|
|
LOG(LL_INFO, ("Subscribing to topic='%s'", t));
|
|
s_handler = cb;
|
|
s_handler_ud = ud;
|
|
}
|
|
|
|
void mgos_mqtt_inject(char *topic, char *msg) {
|
|
LOG(LL_INFO, ("Injecting topic='%s' msg='%s'", topic, msg));
|
|
mqtt_sub_count++;
|
|
if (s_handler)
|
|
s_handler(NULL, topic, strlen(topic), msg, strlen(msg), s_handler_ud);
|
|
}
|