v1
Dependencies: MQTTSN mbed-http
Diff: Client-AE.cpp
- Revision:
- 15:557d0008dd2d
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Client-AE.cpp Mon Mar 11 07:51:06 2019 +0000
@@ -0,0 +1,94 @@
+#define MQTTSNCLIENT_QOS2 1
+
+#include "mbed.h"
+#include "stdio.h"
+#include "MQTT_server_setting.h"
+#include "MQTTSNUDP.h"
+#include "MQTTSNClient.h"
+#include "MbedJSONValue.h"
+#include "Enumeration.h"
+#include "sensor.h"
+#include "easy-connect.h"
+#include "MQTTSN_func.h"
+#include "registration.h"
+
+NetworkInterface* network = NULL;
+
+int main() {
+
+ float version = 0.47;
+ MQTTSNUDP* ipstack = NULL;
+ MQTTSN::Client<MQTTSNUDP, Countdown> *client = NULL;
+
+ /////////////////////////////////////////////////////////////////////////////////////////
+ printf("Nai binary hai ye theek hai Opening network interface...\r\n");
+ {
+ network = easy_connect(true); // If true, prints out connection details.
+ if (!network) {
+ printf("Unable to open network interface.\r\n");
+ return -1;
+ }
+ }
+ printf("Network interface opened successfully.\r\n");
+ printf("\r\n");
+JUMP:
+ ipstack = new MQTTSNUDP(network);
+ //MQTTSNUDP ipstack = MQTTSNUDP(network);
+
+ const char* Local_IP = network->get_ip_address();
+ printf("IP Address of Device is: %s\n", Local_IP);
+
+ const char* Local_MAC = network->get_mac_address();
+ printf("MAC Address of Device is: %s\n", Local_MAC);
+
+ client = new MQTTSN::Client<MQTTSNUDP, Countdown>(*ipstack);
+ //////////////////////////////////UDP Connect///////////////////////////////////////////
+ printf("Connecting to %s:%d\n", MQTT_SERVER_HOST_NAME, PORT);
+ rc = ipstack->connect(MQTT_SERVER_HOST_NAME, PORT);
+ if (rc != 0)
+ printf("rc from UDP connect is %d\n", rc);
+ else
+ printf("UDP connected\n");
+ //////////////////////////////////MQTT Connect///////////////////////////////////////////
+ attemptConnect(client, ipstack);
+ Registration(client, ipstack);
+ while(1)
+ {
+ // Check connection //
+ if(!client->isConnected()){
+ break;
+ }
+ // Received a control message. //
+ if(isMessageArrived) {
+ isMessageArrived = false;
+ // Just print it out here.
+ //printf("\r\nMessage arrived:\r\n%s\r\n", messageBuffer);
+ //process_msg();
+ //free(messageBuffer);
+ }
+ // Publish data //
+ //PUB_Count++;
+
+ client->yield(4000);
+ //wait(4);
+
+ }
+
+ //if ((rc = client->unsubscribe(topicid2)) != 0)
+ // printf("rc from unsubscribe was %d\n", rc);
+
+ if ((rc = client->disconnect()) != 0)
+ printf("rc from disconnect was %d\n", rc);
+
+ ipstack->disconnect();
+
+ delete ipstack;
+ delete client;
+
+ printf("Version %.2f: finish %d msgs\n", version, arrivedcount);
+ printf("Finishing with %d messages received\n", arrivedcount);
+goto JUMP;
+
+ return 0;
+
+}