mirror of
https://github.com/eclipse/paho.mqtt-sn.embedded-c.git
synced 2025-12-15 08:26:51 +01:00
@@ -117,7 +117,7 @@ void publishTopic57(void)
|
|||||||
char payload[300];
|
char payload[300];
|
||||||
sprintf(payload, "publish \"ty4tw/topic57\" \n");
|
sprintf(payload, "publish \"ty4tw/topic57\" \n");
|
||||||
uint8_t qos = 0;
|
uint8_t qos = 0;
|
||||||
PUBLISH(topic2,(uint8_t*)payload, strlen(payload), qos);
|
PUBLISH(topic57, (uint8_t* )payload, strlen(payload), qos);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -136,13 +136,13 @@ SUBSCRIBE_LIST =
|
|||||||
*------------------------------------------------------*/
|
*------------------------------------------------------*/
|
||||||
void subscribePredefTopic1(void)
|
void subscribePredefTopic1(void)
|
||||||
{
|
{
|
||||||
SUBSCRIBE(1, on_Topic03, QoS1);
|
SUBSCRIBE_PREDEF(1, on_Topic03, QoS1);
|
||||||
}
|
}
|
||||||
|
|
||||||
void publishTopic1(void)
|
void publishTopic1(void)
|
||||||
{
|
{
|
||||||
char payload[300];
|
char payload[300];
|
||||||
sprintf(payload, "publish \"ty4tw/Topic1\" \n");
|
sprintf(payload, "publish \"ty4tw/topic1\" \n");
|
||||||
PUBLISH(topic1, (uint8_t* )payload, strlen(payload), QoS0);
|
PUBLISH(topic1, (uint8_t* )payload, strlen(payload), QoS0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -162,12 +162,12 @@ void publishTopic4(void)
|
|||||||
|
|
||||||
void subscribeTopic10(void)
|
void subscribeTopic10(void)
|
||||||
{
|
{
|
||||||
SUBSCRIBE(10, on_Topic02, QoS1);
|
SUBSCRIBE_PREDEF(10, on_Topic02, QoS1);
|
||||||
}
|
}
|
||||||
|
|
||||||
void subscribeWildcardTopic(void)
|
void subscribeWildcardTopic(void)
|
||||||
{
|
{
|
||||||
SUBSCRIBE(topic40, on_Topic04, QoS1);
|
SUBSCRIBE(topic50, on_TopicWildcard, QoS1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -239,10 +239,9 @@ TEST_LIST =
|
|||||||
TEST("Step9:subscribe again", subscribechangeCallback),
|
TEST("Step9:subscribe again", subscribechangeCallback),
|
||||||
TEST("Step10:Publish topic2", publishTopic2),
|
TEST("Step10:Publish topic2", publishTopic2),
|
||||||
|
|
||||||
TEST("Step10:Reset Clean Session", CleanSessionOff),
|
//TEST("Step10:Reset Clean Session", CleanSessionOff),
|
||||||
|
|
||||||
// SUBSCRIBE wildcard topic topic4
|
//TEST("Step9:subscribe wildcard topic", subscribechangeCallback),
|
||||||
TEST("Step9:subscribe wildcard topic", subscribechangeCallback),
|
|
||||||
|
|
||||||
TEST("Step11:Sleep ", asleep),
|
TEST("Step11:Sleep ", asleep),
|
||||||
TEST("Step12:Publish topic1", publishTopic1),
|
TEST("Step12:Publish topic1", publishTopic1),
|
||||||
|
|||||||
@@ -687,7 +687,7 @@ void LGwProxy::setAutoConnectMode(bool valid)
|
|||||||
_isAutoConnectMode = valid;
|
_isAutoConnectMode = valid;
|
||||||
}
|
}
|
||||||
|
|
||||||
void LGwProxy::setCleanSession(bool valid)
|
void LGwProxy::setSessionMode(bool valid)
|
||||||
{
|
{
|
||||||
_cleanSession = valid;
|
_cleanSession = valid;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ public:
|
|||||||
void setQoSMinus1Mode(bool valid);
|
void setQoSMinus1Mode(bool valid);
|
||||||
void setPingReqMode(bool valid);
|
void setPingReqMode(bool valid);
|
||||||
void setAutoConnectMode(bool valid);
|
void setAutoConnectMode(bool valid);
|
||||||
void setCleanSession(bool valid);
|
void setSessionMode(bool valid);
|
||||||
void reconnect(void);
|
void reconnect(void);
|
||||||
int writeMsg(const uint8_t* msg);
|
int writeMsg(const uint8_t* msg);
|
||||||
void setPingReqTimer(void);
|
void setPingReqTimer(void);
|
||||||
|
|||||||
@@ -185,9 +185,10 @@ void LMqttsnClient::subscribe(const char* topicName, TopicCallback onPublish, ui
|
|||||||
_subMgr.subscribe(topicName, onPublish, qos);
|
_subMgr.subscribe(topicName, onPublish, qos);
|
||||||
}
|
}
|
||||||
|
|
||||||
void LMqttsnClient::subscribe(uint16_t topicId, TopicCallback onPublish, uint8_t qos)
|
void LMqttsnClient::subscribePredefinedId(uint16_t topicId, TopicCallback onPublish,
|
||||||
|
uint8_t qos)
|
||||||
{
|
{
|
||||||
_subMgr.subscribe(topicId, onPublish, qos);
|
_subMgr.subscribePredefinedId(topicId, onPublish, qos);
|
||||||
}
|
}
|
||||||
|
|
||||||
void LMqttsnClient::unsubscribe(const char* topicName)
|
void LMqttsnClient::unsubscribe(const char* topicName)
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ public:
|
|||||||
void publish(uint16_t topicId, Payload* payload, uint8_t qos, bool retain = false);
|
void publish(uint16_t topicId, Payload* payload, uint8_t qos, bool retain = false);
|
||||||
void publish(uint16_t topicId, uint8_t* payload, uint16_t len, uint8_t qos, bool retain = false);
|
void publish(uint16_t topicId, uint8_t* payload, uint16_t len, uint8_t qos, bool retain = false);
|
||||||
void subscribe(const char* topicName, TopicCallback onPublish, uint8_t qos);
|
void subscribe(const char* topicName, TopicCallback onPublish, uint8_t qos);
|
||||||
void subscribe(uint16_t topicId, TopicCallback onPublish, uint8_t qos);
|
void subscribePredefinedId(uint16_t topicId, TopicCallback onPublish, uint8_t qos);
|
||||||
void unsubscribe(const char* topicName);
|
void unsubscribe(const char* topicName);
|
||||||
void unsubscribe(const uint16_t topicId);
|
void unsubscribe(const uint16_t topicId);
|
||||||
void disconnect(uint16_t sleepInSecs);
|
void disconnect(uint16_t sleepInSecs);
|
||||||
|
|||||||
@@ -90,6 +90,7 @@ typedef enum
|
|||||||
#define CONNECT(...) theClient->getGwProxy()->connect(__VA_ARGS__)
|
#define CONNECT(...) theClient->getGwProxy()->connect(__VA_ARGS__)
|
||||||
#define PUBLISH(...) theClient->publish(__VA_ARGS__)
|
#define PUBLISH(...) theClient->publish(__VA_ARGS__)
|
||||||
#define SUBSCRIBE(...) theClient->subscribe(__VA_ARGS__)
|
#define SUBSCRIBE(...) theClient->subscribe(__VA_ARGS__)
|
||||||
|
#define SUBSCRIBE_PREDEF(...) theClient->subscribePredefinedId(__VA_ARGS__)
|
||||||
#define UNSUBSCRIBE(...) theClient->unsubscribe(__VA_ARGS__)
|
#define UNSUBSCRIBE(...) theClient->unsubscribe(__VA_ARGS__)
|
||||||
#define DISCONNECT(...) theClient->disconnect(__VA_ARGS__)
|
#define DISCONNECT(...) theClient->disconnect(__VA_ARGS__)
|
||||||
#define ONCONNECT() theClient->getSubscribeManager()->onConnect()
|
#define ONCONNECT() theClient->getSubscribeManager()->onConnect()
|
||||||
@@ -110,7 +111,7 @@ typedef enum
|
|||||||
#define SetQoSMinus1Mode(...) theClient->getGwProxy()->setQoSMinus1Mode(__VA_ARGS__)
|
#define SetQoSMinus1Mode(...) theClient->getGwProxy()->setQoSMinus1Mode(__VA_ARGS__)
|
||||||
#define SetAutoConnectMode(...) theClient->setAutoConnectMode(__VA_ARGS__)
|
#define SetAutoConnectMode(...) theClient->setAutoConnectMode(__VA_ARGS__)
|
||||||
#define SetAutoPingReqMode(...) theClient->getGwProxy()->setPingReqMode(__VA_ARGS__)
|
#define SetAutoPingReqMode(...) theClient->getGwProxy()->setPingReqMode(__VA_ARGS__)
|
||||||
#define SetCleanSessionMode(...) theClient->getGwProxy()->setCleanSession(__VA_ARGS__)
|
#define SetCleanSession(...) theClient->getGwProxy()->setSessionMode(__VA_ARGS__)
|
||||||
#ifdef CLIENT_MODE
|
#ifdef CLIENT_MODE
|
||||||
#define DISPLAY(...)
|
#define DISPLAY(...)
|
||||||
#define PROMPT(...)
|
#define PROMPT(...)
|
||||||
|
|||||||
@@ -67,7 +67,9 @@ void LSubscribeManager::onConnect(void)
|
|||||||
{
|
{
|
||||||
if ( theOnPublishList[i].type == MQTTSN_TOPIC_TYPE_PREDEFINED)
|
if ( theOnPublishList[i].type == MQTTSN_TOPIC_TYPE_PREDEFINED)
|
||||||
{
|
{
|
||||||
subscribe(theOnPublishList[i].id, theOnPublishList[i].pubCallback, theOnPublishList[i].qos);
|
subscribePredefinedId(theOnPublishList[i].id,
|
||||||
|
theOnPublishList[i].pubCallback,
|
||||||
|
theOnPublishList[i].qos);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -170,7 +172,7 @@ void LSubscribeManager::subscribe(const char* topicName, TopicCallback onPublish
|
|||||||
send(elm);
|
send(elm);
|
||||||
}
|
}
|
||||||
|
|
||||||
void LSubscribeManager::subscribe(uint16_t topicId, TopicCallback onPublish, uint8_t qos)
|
void LSubscribeManager::subscribePredefinedId(uint16_t topicId, TopicCallback onPublish, uint8_t qos)
|
||||||
{
|
{
|
||||||
SubElement* elm = add(MQTTSN_TYPE_SUBSCRIBE, 0, MQTTSN_TOPIC_TYPE_PREDEFINED, topicId, qos, onPublish);
|
SubElement* elm = add(MQTTSN_TYPE_SUBSCRIBE, 0, MQTTSN_TOPIC_TYPE_PREDEFINED, topicId, qos, onPublish);
|
||||||
send(elm);
|
send(elm);
|
||||||
@@ -263,7 +265,9 @@ void LSubscribeManager::responce(const uint8_t* msg)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
DISPLAY("\033[0m\033[0;31m UNSUBACK Invalid messageId. \033[0m\033[0;37m\n\n");
|
DISPLAY(
|
||||||
|
"\033[0m\033[0;31m UNSUBACK Invalid messageId=%04x. \033[0m\033[0;37m\n\n",
|
||||||
|
msgId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ public:
|
|||||||
~LSubscribeManager();
|
~LSubscribeManager();
|
||||||
void onConnect(void);
|
void onConnect(void);
|
||||||
void subscribe(const char* topicName, TopicCallback onPublish, uint8_t qos);
|
void subscribe(const char* topicName, TopicCallback onPublish, uint8_t qos);
|
||||||
void subscribe(uint16_t topicId, TopicCallback onPublish, uint8_t qos);
|
void subscribePredefinedId(uint16_t topicId, TopicCallback onPublish, uint8_t qos);
|
||||||
void unsubscribe(const char* topicName);
|
void unsubscribe(const char* topicName);
|
||||||
void unsubscribe(uint16_t topicId);
|
void unsubscribe(uint16_t topicId);
|
||||||
void responce(const uint8_t* msg);
|
void responce(const uint8_t* msg);
|
||||||
|
|||||||
Reference in New Issue
Block a user