#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <mosquitto.h>
#define mqttBroker "10.34.1.159"
struct mosquitto *mosq;
char versionMosquitto[256];
int mq_send(int mid, char *msg) {
return mosquitto_publish(mosq,
&mid, // NULL,
"test",
strlen(msg),
msg,
0, // QoS
0);
}
char *mq_version() {
int major, minor, revision;
mosquitto_lib_version(&major, &minor, &revision);
sprintf(versionMosquitto,
"Mosquitto Ver. %d.%d.%d", major, minor, revision);
return(versionMosquitto);
}
int main(int argc, char *argv[]) {
char payload[43];
int mid=0;
mosquitto_lib_init();
printf("%s\n", mq_version());
mosq = mosquitto_new("clientId", // QoS 2: required
false, // QoS 2: false
NULL);
if(mosquitto_connect(mosq, mqttBroker, 1883, 60)){
fprintf(stderr, "Unable to connect.\n");
exit(1);
}
mq_send(0, mq_version());
for(mid=1; mid<20; mid++) {
sprintf(payload, "%d", mid);
printf("%s\n", payload);
mq_send(mid, payload);
usleep(50000);
}
mosquitto_disconnect(mosq);
mosquitto_destroy(mosq);
mosquitto_lib_cleanup();
printf("Terminating.\n");
}