服務(wù)端開發(fā)
完成設(shè)備端開發(fā)后,您需要對服務(wù)端進行開發(fā),來接收物聯(lián)網(wǎng)平臺的設(shè)備數(shù)據(jù)。本文以Java腳本為例,演示服務(wù)端接收設(shè)備數(shù)據(jù)的流程。
準備開發(fā)環(huán)境
本文使用Java開發(fā)環(huán)境如下:
操作系統(tǒng):Windows 10 64位
JDK版本:JDK8
集成開發(fā)環(huán)境:IntelliJ IDEA社區(qū)版
業(yè)務(wù)服務(wù)器接收設(shè)備數(shù)據(jù)
服務(wù)器通過AMQP客戶端接收消息,需配置AMQP客戶端接入物聯(lián)網(wǎng)平臺,監(jiān)聽設(shè)備消息,請參見AMQP客戶端接入說明、Java SDK接入示例。
示例使用Java開發(fā)語言,推薦使用Apache Qpid JMS客戶端。您可訪問Qpid JMS 0.57.0,查看Qpid JMS客戶端使用說明。
參照以下步驟,完成AMQP客戶端開發(fā)。
下載Demo代碼包,并解壓。
打開IntelliJ IDEA,導(dǎo)入Demo包中的示例工程amqp-demo。
在pom.xml文件中,已添加Maven依賴,下載Qpid JMS客戶端。
在src/main/java/com.aliyun.iotx.demo目錄下AmqpClient.java文件中,參照下表,修改JMS客戶端接入物聯(lián)網(wǎng)平臺代碼中的參數(shù)值。
private final static Logger logger = LoggerFactory.getLogger(AmqpClient.class); private static String accessKey = "${YourAccessKey}"; private static String accessSecret = "${YourAccessSecret}"; private static String consumerGroupId = "${YourConsumerGroupId}"; //iotInstanceId:實例ID。 private static String iotInstanceId = "${YourIotInstanceId}"; //控制臺服務(wù)端訂閱中消費組狀態(tài)頁客戶端ID一欄會顯示clientId參數(shù)。 //建議使用機器UUID、MAC地址、IP等唯一標識等作為clientId。便于您區(qū)分識別不同的客戶端。 private static String clientId = "${YourClientId}"; //${YourHost}為接入域名,請參見AMQP客戶端接入說明文檔。 private static String host = "${YourHost}"; // 指定單個進程啟動的連接數(shù) // 單個連接消費速率有限,請參考使用限制,最大128個連接 // 連接數(shù)和消費速率及rebalance相關(guān),建議每500QPS增加一個連接 private static int connectionCount = 4;
參數(shù)
示例
說明
accessKey
LTAI4GFGQvKuqHJhFa******
阿里云主賬號或?qū)?yīng)RAM用戶的AccessKey ID和AccessKey Secret。
登錄物聯(lián)網(wǎng)平臺控制臺,將鼠標移至賬號頭像上,然后單擊AccessKey管理,獲取AccessKey ID和AccessKey Secret。
accessSecret
iMS8ZhCDdfJbCMeA005sieKe******
consumerGroupId
VWhGZ2QnP7kxWpeSSjt******
已創(chuàng)建的手持體溫計數(shù)據(jù)消費組消費組ID,請參見云端配置開發(fā)的步驟6。
iotInstanceId
"iot-cn-6ja***"
設(shè)備所屬實例的ID。
您可在控制臺的實例概覽頁面查看。
若有ID值,必須傳入該ID值。
若無ID值,傳入空值,即
iotInstanceId = ""
。
clientId
12345
客戶端ID,可自定義,長度不可超過64個字符。建議設(shè)置為您的AMQP客戶端所在服務(wù)器UUID、MAC地址、IP等唯一標識,方便您識別區(qū)分不同的客戶端。
AMQP客戶端接入成功后,在控制臺的手持體溫計數(shù)據(jù)消費組的消費組詳情頁面,顯示該參數(shù)。
connectionCount
4
啟動AMQP客戶端的連接數(shù),最大不超過128個。用于實時消息推送的擴容。
消費組詳情頁面會以
${clientId}+"-"+數(shù)字
形式,顯示連接的客戶端。其中數(shù)字最小值為0。host
iot-***.amqp.iothub.aliyuncs.com
AMQP接入域名,請參見查看和配置實例終端節(jié)點信息(Endpoint)。