精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

在鴻蒙系統上使用MQTT編程

系統
文章由鴻蒙社區產出,想要了解更多內容請前往:51CTO和華為官方戰略合作共建的鴻蒙技術社區https://harmonyos.51cto.com/#zz

[[353642]]

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com/#zz

我們使用的是paho mqtt軟件包,這里介紹一下怎么使用mqtt協議編程。關于鴻蒙系統的mqtt移植好的軟件包,相關github鏈接如下:

https://gitee.com/qidiyun/harmony_mqtt

這里提供一個簡單的編程示例:

這里我們使用MQTTClient編程模型,他支持多任務多線程,非常適合用在鴻蒙系統上。

1. 網絡初始化

這里定義一個 Network 結構體,然后指定我們的MQTT服務器的IP和端口號。

  1. Network n; 
  2.    //初始化結構體 
  3.  NetworkInit(&n); 
  4.  //連接到指定的MQTT服務器IP、端口號 
  5.  NetworkConnect(&n, “XXX.XXX.XXX.XXX”, XXXX); 

 2. 設置MQTT緩存和啟動MQTT線程

我們這里使用的是MQTT線程功能。

  1. MQTTClientInit(&c, &n, 1000, buf, 100, readbuf, 100); 
  2.  MQTTStartTask(&c); 

 3. 設置MQTT相關參數

接下來我們設置MQTT的相關參數,包括版本號、客戶端ID、賬戶密碼等

  1. MQTTPacket_connectData data = MQTTPacket_connectData_initializer;  
  2.  data.willFlag = 0; 
  3.  //MQTT版本為 v3 
  4.  data.MQTTVersion = 3; 
  5.  //設置客戶端ID 
  6.  data.clientID.cstring = opts.clientid; 
  7.  //設置客戶端賬戶 
  8.  data.username.cstring = opts.username; 
  9.  //設置客戶端密碼 
  10.  data.password.cstring = opts.password
  11.  data.keepAliveInterval = 10; 
  12.  data.cleansession = 1; 
  13.  
  14.  //連接到MQTT服務器 
  15.  rc = MQTTConnect(&c, &data); 

 4. 訂閱主題和接收消息

訂閱主題可以使用如下函數

  1. MQTTSubscribe(&c, topic, opts.qos, messageArrived); 

它的函數原型如下:

  1. DLLExport int MQTTSubscribe(MQTTClient* client, const char* topicFilter, enum QoS, messageHandler); 

其中:

  1. void messageArrived(MessageData* md) 
  2.  MQTTMessage* message = md->message; 
  3.  //打印接收到的消息的長度、和消息內容 
  4.  printf("%.*s", (int)message->payloadlen, (char*)message->payload); 

 5. 發送消息

發送消息也比較簡單,我們只需要設置好我們的主題和消息內容即可

  1. memset(&pubmsg, '\0', sizeof(pubmsg)); 
  2.  //消息內容為 hello harmonyOS ! 
  3.    pubmsg.payload = (void*)"hello harmonyOS !"
  4.  //消息長度 
  5.    pubmsg.payloadlen = strlen((char*)pubmsg.payload); 
  6.    pubmsg.qos = QOS0; 
  7.    pubmsg.retained = 0; 
  8.    pubmsg.dup = 0; 
  9.  
  10.  //推送消息,主題為 pubtest 
  11.  MQTTPublish(&c, "pubtest", &pubmsg); 

 完整源碼如下: 

  1. #include <stdio.h> 
  2.  
  3. #include <unistd.h> 
  4.  
  5. #include "ohos_init.h" 
  6. #include "cmsis_os2.h" 
  7.  
  8. #include <unistd.h> 
  9. #include "hi_wifi_api.h" 
  10. //#include "wifi_sta.h" 
  11. #include "lwip/ip_addr.h" 
  12. #include "lwip/netifapi.h" 
  13.  
  14. #include "lwip/sockets.h" 
  15.  
  16. #include "MQTTClient.h" 
  17.  
  18. /** 
  19.  * MQTT URI farmat: 
  20.  * domain mode 
  21.  * tcp://iot.eclipse.org:1883 
  22.  * 
  23.  * ipv4 mode 
  24.  * tcp://192.168.10.1:1883 
  25.  * ssl://192.168.10.1:1884 
  26.  * 
  27.  * ipv6 mode 
  28.  * tcp://[fe80::20c:29ff:fe9a:a07e]:1883 
  29.  * ssl://[fe80::20c:29ff:fe9a:a07e]:1884 
  30.  */ 
  31. #define MQTT_URI                "tcp://106.13.62.194:1883" 
  32.  
  33. struct opts_struct 
  34.     char* clientid; 
  35.     int nodelimiter; 
  36.     char* delimiter; 
  37.     enum QoS qos; 
  38.     char* username; 
  39.     charpassword
  40.     char* host; 
  41.     int port; 
  42.     int showtopics; 
  43. } opts = 
  44.     (char*)"stdout-subscriber", 0, (char*)"\n", QOS2, NULLNULL, (char*)"106.13.62.194", 1883, 1 
  45. }; 
  46.  
  47.  
  48. void messageArrived(MessageData* md) 
  49.     MQTTMessage* message = md->message; 
  50.  
  51.     if (opts.showtopics) 
  52.         printf("%.*s\t", md->topicName->lenstring.len, md->topicName->lenstring.data); 
  53.     if (opts.nodelimiter) 
  54.         printf("%.*s", (int)message->payloadlen, (char*)message->payload); 
  55.     else 
  56.         printf("%.*s%s", (int)message->payloadlen, (char*)message->payload, opts.delimiter); 
  57.     //fflush(stdout); 
  58.  
  59.  
  60. unsigned char buf[100]; 
  61. unsigned char readbuf[100]; 
  62.  
  63. int mqtt_test(void) 
  64.     int rc = 0; 
  65.      
  66.     MQTTMessage pubmsg; 
  67.  
  68.      
  69.     char* topic = "test"
  70.  
  71.     if (strchr(topic, '#') || strchr(topic, '+')) 
  72.         opts.showtopics = 1; 
  73.     if (opts.showtopics) 
  74.         printf("topic is %s\n", topic); 
  75.  
  76.     Network n; 
  77.     MQTTClient c; 
  78.  
  79.     NetworkInit(&n); 
  80.     NetworkConnect(&n, opts.host, opts.port); 
  81.      
  82.     MQTTClientInit(&c, &n, 1000, buf, 100, readbuf, 100); 
  83.     MQTTStartTask(&c); 
  84.  
  85.     MQTTPacket_connectData data = MQTTPacket_connectData_initializer;        
  86.     data.willFlag = 0; 
  87.     data.MQTTVersion = 3; 
  88.     data.clientID.cstring = opts.clientid; 
  89.     data.username.cstring = opts.username; 
  90.     data.password.cstring = opts.password
  91.  
  92.     data.keepAliveInterval = 10; 
  93.     data.cleansession = 1; 
  94.     printf("Connecting to %s %d\n", opts.host, opts.port); 
  95.      
  96.     rc = MQTTConnect(&c, &data); 
  97.     printf("Connected %d\n", rc); 
  98.      
  99.      
  100.  
  101.     printf("Subscribing to %s\n", topic); 
  102.     rc = MQTTSubscribe(&c, topic, opts.qos, messageArrived); 
  103.     printf("Subscribed %d\n", rc); 
  104.  
  105.     memset(&pubmsg, '\0', sizeof(pubmsg)); 
  106.     pubmsg.payload = (void*)"hello harmonyOS !"
  107.     pubmsg.payloadlen = strlen((char*)pubmsg.payload); 
  108.     pubmsg.qos = QOS0; 
  109.     pubmsg.retained = 0; 
  110.     pubmsg.dup = 0; 
  111.  
  112.      
  113.  
  114.     while (1) 
  115.     { 
  116.         MQTTPublish(&c, "pubtest", &pubmsg); 
  117.         sleep(1);    
  118.     } 
  119.      
  120.     printf("Stopping\n"); 
  121.  
  122.     MQTTDisconnect(&c); 
  123.     NetworkDisconnect(&n); 
  124.  
  125.     return 0; 

 想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com/#zz

 

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2023-04-20 17:26:40

FreeDOSC 語言

2020-11-19 10:25:24

MQTT

2020-10-27 10:00:26

鴻蒙開發板物聯網

2021-01-22 14:03:34

Flutter系統鴻蒙

2011-07-07 16:00:15

iPhone OpenCV

2011-03-22 10:06:27

LinuxZFS

2019-12-05 10:30:17

LinuxMultitail

2020-11-18 11:36:35

鴻蒙系統

2020-12-07 12:47:22

MQTT鴻蒙hi3861

2020-08-25 19:56:43

MinGWWindowsGNU

2011-03-01 11:23:37

Chrome ActiveX

2011-03-25 11:21:36

NagiosLinux

2021-03-22 08:45:30

異步編程Java

2023-08-25 09:17:38

2022-09-14 09:18:52

SubversionLinux系統

2011-05-05 14:24:02

Android NDKAndroid NDKNDK

2020-04-10 09:56:12

at命令Linux安排任務

2019-10-29 16:30:10

FedoraSSH端口Linux

2020-10-26 12:30:23

LinuxyumZFS

2021-08-19 18:28:22

FedoraLinuxOpenCV
點贊
收藏

51CTO技術棧公眾號

色老太综合网| 日本一区高清| 亚洲国产精品第一区二区| 日韩国产一区三区| 污版视频在线观看| 欧美1—12sexvideos| 91美女精品福利| 国产日韩在线观看av| 国产精品成人av久久| 欧美男gay| 日韩视频一区二区三区在线播放| 波多野结衣乳巨码无在线| 91最新在线| 成人高清视频在线观看| 国产精品伦子伦免费视频| 国产在线视频你懂的| 欧美精品色图| 日韩经典第一页| 精品视频一区三区九区| 国产精品一区三区在线观看| 日本黄色一级视频| 国产a级片网站| 欧美日韩国产乱码电影| 国产欧美va欧美va香蕉在线| 国产精品theporn动漫| 色婷婷色综合| 国产丝袜高跟一区| 国产人妻精品午夜福利免费| 九九热这里有精品| 欧美性猛交xxxx黑人| 亚洲色婷婷久久精品av蜜桃| 国产精品毛片一区二区三区四区| 丁香一区二区三区| 成人国产精品久久久久久亚洲| 五月婷婷色丁香| 狠久久av成人天堂| 久久久999精品免费| 日韩视频在线观看免费视频| 日韩超碰人人爽人人做人人添| 日韩一区二区免费高清| 午夜视频在线网站| 成人在线视频观看| 欧美性xxxx极品hd满灌| 性一交一乱一伧国产女士spa| 国产精品刘玥久久一区| 国产精品久久久久桃色tv| 亚洲高清在线观看一区| 国产中文在线视频| 久久九九99视频| 久久综合入口| 欧美日本韩国一区二区| 久久伊人中文字幕| 欧美精品一区二区三区久久| 无码精品人妻一区二区| 成人av午夜电影| 国产区二精品视| 人妻精品一区二区三区| 不卡一卡二卡三乱码免费网站| 国产福利不卡| 日本人妻丰满熟妇久久久久久| 成人激情综合网站| 国产精品自拍首页| 无码国产精品高潮久久99| 97国产一区二区| 久久国产精品一区二区三区| 日韩a在线看| 久久久影院官网| 好吊色欧美一区二区三区 | 欧美性猛交xxxx乱大交极品| 国产精品无码av在线播放| 伊人色综合一区二区三区影院视频| 欧美日韩午夜激情| 一本久道中文无码字幕av| 欧美日韩女优| 欧美一区二区在线视频| 亚洲女则毛耸耸bbw| 日韩av三区| 亚洲人在线观看| 成人18视频免费69| 午夜国产精品视频免费体验区| 久久久久久久久久国产精品| 日本一级片免费看| 日韩高清欧美激情| 成人在线小视频| 色一情一乱一区二区三区| 91亚洲精品久久久蜜桃| 亚洲欧美日韩国产yyy| 成人看片免费| 欧美日韩国产在线看| 在线观看av网页| 第一区第二区在线| 亚洲一二在线观看| 欧美一区二区三区爽爽爽| 99国产精品久久久久久久成人热 | 2023国产一二三区日本精品2022| 日韩三级电影网站| 青青青草视频在线| 欧美综合色免费| 99国产精品免费视频| 奇米狠狠一区二区三区| 欧美成人高清视频| 五月婷婷激情视频| 国产精品456露脸| 欧美日韩一区在线播放| 在线中文字幕第一页| 色婷婷国产精品| 无套白嫩进入乌克兰美女| 一区二区导航| 久久久久久有精品国产| 伊人亚洲综合网| 99九九99九九九视频精品| 欧美aaa在线观看| 一个人www视频在线免费观看| 欧美精品久久久久久久多人混战| 一区二区三区少妇| 欧美 亚欧 日韩视频在线| 国产成人综合精品| 色wwwwww| 亚洲欧美成aⅴ人在线观看| 韩国一区二区av| 澳门精品久久国产| 久久夜精品香蕉| 国语对白做受69按摩| av一二三不卡影片| 日韩免费在线观看av| 日韩一区二区三区四区五区| 亚洲日韩第一页| 97人人澡人人爽人人模亚洲| 国产馆精品极品| 亚洲永久激情精品| 超碰这里只有精品| 亚洲欧洲偷拍精品| 日韩欧美三级视频| 成人教育av在线| 高清无码视频直接看| av在线精品| 精品国产一区二区三区四区在线观看| 麻豆精品久久久久久久99蜜桃| 不卡视频在线观看| 久久手机在线视频| 亚洲精品在线播放| 九九精品在线观看| 精品久久久久中文慕人妻| 亚洲色图在线播放| 天天做天天干天天操| 四虎国产精品免费观看| 国产精品入口尤物| 最新国产在线观看| 欧美日韩视频第一区| 毛片aaaaaa| 美腿丝袜在线亚洲一区| 亚洲一卡二卡三卡| 婷婷激情成人| 久久九九免费视频| 精品国自产在线观看| 亚洲午夜视频在线| 美女扒开腿免费视频| 在线成人欧美| 免费一区二区三区在在线视频| 日韩脚交footjobhd| 亚洲精品一区二区三区婷婷月| 日韩毛片一区二区三区| 国产欧美一区二区精品婷婷 | 欧美日韩精品亚洲精品| 国产成人精品亚洲午夜麻豆| av一区二区三区免费观看| 精品女人视频| 青草青草久热精品视频在线观看| 国产在线视频福利| 欧美日产在线观看| 欧美日韩免费做爰视频| www.日韩在线| 欧美日韩亚洲一二三| 成人在线视频免费观看| 91欧美日韩一区| wwwww亚洲| 国产香蕉一区二区三区在线视频| 中文字幕一区2区3区| 一个色综合av| 免费a级黄色片| 免费黄网站欧美| 日韩黄色片在线| 色婷婷av一区二区三区丝袜美腿| 国产国产精品人在线视| av毛片在线看| 亚洲精品视频免费在线观看| 亚洲一区二区三区高清视频| 亚洲国产中文字幕| 国产人妻大战黑人20p| 激情综合五月婷婷| 欧美不卡在线播放| 日韩综合在线| 国产欧美亚洲日本| 热久久久久久| 538国产精品一区二区在线| 麻豆系列在线观看| 日韩二区三区在线| 国产美女www爽爽爽视频| 精品久久久久久中文字幕一区奶水| 精品无码在线观看| 国产不卡视频在线播放| 亚洲精品一二三四五区| 伊人精品成人久久综合软件| 亚洲欧美在线网| 牛牛影视久久网| 91久久在线观看| 日本不卡一二三| 欧美黑人视频一区| 夜级特黄日本大片_在线 | 国产大片在线免费观看| 精品日韩99亚洲| 岳乳丰满一区二区三区| 欧美日韩国产精品专区| 深夜福利影院在线观看| 国产人成一区二区三区影院| 精品影片一区二区入口| 国产一区二区三区美女| mm1313亚洲国产精品无码试看| 激情另类综合| 无码毛片aaa在线| 日韩精品欧美激情一区二区| 九九九热999| 91精品尤物| 91在线观看免费观看| 123成人网| 日韩女在线观看| 黄色在线观看www| 欧美黑人一级爽快片淫片高清| 免费a级毛片在线播放| 一本色道久久88综合亚洲精品ⅰ | 一区二区三区黄色| 欧美精品少妇| 国产婷婷色综合av蜜臀av| 日韩一区免费视频| 精品国产乱码久久久久久浪潮 | 99精品一区二区| 国产chinesehd精品露脸| 国产综合色精品一区二区三区| 亚洲xxxx2d动漫1| 日韩成人免费电影| 国产三级三级三级看三级| 久久大逼视频| 欧美成人xxxxx| 亚洲综合另类| 欧美韩国日本在线| 翔田千里一区二区| 777精品久无码人妻蜜桃| 99热免费精品| 久久久999视频| 久久久久99| 亚洲中文字幕久久精品无码喷水| 亚洲精品影视| 日韩精品一区二区三区久久| 欧美资源在线| 韩国一区二区av| 麻豆国产91在线播放| 欧美在线aaa| 久久av老司机精品网站导航| 亚洲免费成人在线视频| 激情久久五月天| 精品人妻一区二区乱码| 成人精品电影在线观看| 9.1成人看片免费版| 中文字幕精品三区| 国产精品白丝喷水在线观看| 亚洲一区二区欧美日韩| 亚洲综合一二三| 日本乱人伦一区| 伊人色综合久久久| 日韩欧美一级片| 亚洲 欧美 激情 另类| 亚洲欧美制服丝袜| 免费av不卡| 久久久久久久一| 你懂得影院夜精品a| 成人在线精品视频| 老司机aⅴ在线精品导航| 欧美一区二区三区四区夜夜大片| 日本欧美国产| 成年人看的毛片| 日日夜夜一区二区| 日本黄色www| 99re这里只有精品6| 日本人亚洲人jjzzjjz| 亚洲欧美日韩中文字幕一区二区三区 | 日韩av手机在线观看| 日本欧美在线| 黑人另类av| 99久久.com| 玩弄中年熟妇正在播放| 美女一区二区久久| 女同性恋一区二区三区| 国产精品毛片大码女人| 日本一区二区三区免费视频| 欧美三级电影精品| 日本高清视频www| 日韩网站在线观看| 亚洲v.com| 999国产视频| 欧美偷拍综合| 成人免费观看cn| 国产一区二区三区免费看| 免费观看av网站| 亚洲自拍另类综合| 中文在线资源天堂| 亚洲级视频在线观看免费1级| 日本美女高清在线观看免费| 欧美在线观看网站| 日韩一区二区三区高清在线观看| 日韩av图片| av不卡在线| 少妇献身老头系列| 中文字幕中文字幕一区二区 | 日韩主播视频在线| 午夜免费福利影院| 亚洲免费电影在线| 亚洲视频久久久| 亚洲乱亚洲乱妇无码| 成年网站在线视频网站| 成人午夜一级二级三级| 凹凸成人精品亚洲精品密奴| 日韩av片在线看| 99国产欧美另类久久久精品| 欧美交换国产一区内射| 欧美日韩二区三区| 在线观看av的网站| 日本视频久久久| 亚洲国产欧美日韩在线观看第一区| 激情六月天婷婷| 韩国成人精品a∨在线观看| youjizz亚洲女人| 色视频欧美一区二区三区| 日韩在线无毛| 97av在线视频| 高清日韩欧美| 久久久久久久久久伊人| 国产一区二区三区香蕉| 久久噜噜色综合一区二区| 欧美日韩小视频| 色多多视频在线观看| 国产一区香蕉久久| 久久视频在线| 手机免费av片| 亚洲天堂a在线| 国产免费福利视频| 久久av在线播放| 欧美一区在线观看视频| 屁屁影院ccyy国产第一页| 国产精品白丝av| 加勒比av在线播放| 亚洲福利影片在线| 亚洲天堂av在线| 日本一区二区精品| 免费高清在线视频一区·| 欧美日韩生活片| 91精品在线一区二区| caoporm免费视频在线| 国产91免费视频| 亚洲精选久久| 亚洲人成人无码网www国产 | 天堂av手机在线| 一区二区三区四区中文字幕| 亚洲伦理在线观看| 91成人在线播放| av影片在线一区| 中文字幕第22页| 亚洲高清免费观看| 欧美成人综合在线| 国产日韩欧美自拍| 欧美日韩视频| 国产精品久久久久久久久免费看| 免费看91的网站| 亚洲成aⅴ人片久久青草影院| 91精品综合久久久久久| 欧美三级在线观看视频| 在线视频婷婷| 欧美人与z0zoxxxx视频| 日韩一区二区三区不卡| 热久久这里只有精品| 红桃成人av在线播放| 天天综合天天添夜夜添狠狠添| 亚洲精选视频在线| 偷拍自拍在线| 成人精品久久久| 一区二区三区国产在线| 少妇愉情理伦三级| 日韩欧美一级二级| 88xx成人免费观看视频库| 天堂av免费看| 久久网这里都是精品| 国产女人高潮时对白| 57pao国产成人免费| 天天综合网网欲色| 亚洲欧美在线不卡| 91精品国产日韩91久久久久久| 国产黄大片在线观看| 一本久久a久久精品vr综合| 99在线热播精品免费| 亚洲在线精品视频| 欧美专区在线播放|