From 84a3da060d843965ae843332c779ed15bdc16c59 Mon Sep 17 00:00:00 2001 From: Bogdan Date: Mon, 19 Dec 2022 08:32:49 +0200 Subject: [PATCH] added callback for incoming lorawan data --- include/NetTransport.h | 2 ++ src/LoRaWANTransport.c | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/include/NetTransport.h b/include/NetTransport.h index 44d828e..ebfe45b 100644 --- a/include/NetTransport.h +++ b/include/NetTransport.h @@ -122,5 +122,7 @@ uint32_t GetUpTime(void); void RegEthReset(void (*eth_rst)(uint8_t level)); void RegGSMReset(void (*gsm_rst)(uint8_t level)); +void regLoRaUserReceiveHandler( + void (*user_handler)(const char *message, int length, int port)); #endif /* MAIN_INCLUDE_NETTRANSPORT_H_ */ diff --git a/src/LoRaWANTransport.c b/src/LoRaWANTransport.c index f937f09..21cd26d 100644 --- a/src/LoRaWANTransport.c +++ b/src/LoRaWANTransport.c @@ -54,6 +54,14 @@ static StaticQueue_t xStaticLoRaMessagesQueue; uint8_t LoRaMessagesQueueStorageArea[LORAWAN_MESSAGE_BUFER_LENTH * sizeof(DATA_SEND_STRUCT)]; +void (*LoRaUserReceiveHandler)(const char *message, int length, int port); +void regLoRaUserReceiveHandler( + void (*user_handler)(const char *message, int length, int port)) +{ + LoRaUserReceiveHandler = user_handler; +} + + esp_err_t LORASendData(DATA_SEND_STRUCT *pdss) { char *ptr = (char*) malloc(MESSAGE_LENGTH);