資源簡介
mqtt發布和訂閱,使用方法:1)開始mqtt服務端;2編譯fake_user_publish和fake_user_sub;3運行兩個可執行文件;效果:當fake_user_publish發布一個內容時,fake_user_sub訂閱進程會收到相關的topic和payload。驗證通過!

代碼片段和文件信息
#include?
#include?
#include?
#include?
#define?HOST?“localhost“
#define?PORT??1883
#define?KEEP_ALIVE?60
#define?MSG_MAX_SIZE??512
bool?session?=?true;
int?main()
{
????char?buff[MSG_MAX_SIZE];
????struct?mosquitto?*mosq?=?NULL;
????
????mosquitto_lib_init();
???
????mosq?=?mosquitto_new(NULLsessionNULL);
????if(!mosq){
????????printf(“create?client?failed..\n“);
????????mosquitto_lib_cleanup();
????????return?1;
????}
???
????if(mosquitto_connect(mosq?HOST?PORT?KEEP_ALIVE)){
????????fprintf(stderr?“Unable?to?connect.\n“);
????????return?1;
????}
????
????int?loop?=?mosquitto_loop_start(mosq);
????if(loop?!=?MOSQ_ERR_SUCCESS)
????{
????????printf(“mosquitto?loop?error\n“);
????????return?1;
????}
????while(fgets(buff?MSG_MAX_SIZE?stdin)?!=?NULL)
????{
????????????????/*·¢2???*/
????????????????mosquitto_publish(mosqNULL“Gai:“strlen(buff)+1buff00);
????????????????memset(buff0sizeof(buff));
????}
????mosquitto_destroy(mosq);
????mosquitto_lib_cleanup();
????return?0;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1052??2018-11-28?15:56??mqtt-client\fake_user_publish.c
?????文件???????1987??2018-11-28?15:54??mqtt-client\fake_user_sub.c
?????目錄??????????0??2018-11-29?10:53??mqtt-client
-----------?---------??----------?-----??----
?????????????????3039????????????????????3
- 上一篇:替換圖片名稱中的一部分.zip
- 下一篇:09年電子設計大賽無線識別裝置論文
評論
共有 條評論