日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

服務(wù)端開發(fā)

阿里云主賬號或?qū)?yīng)RAM用戶的AccessKey ID和AccessKey Secret。

登錄物聯(lián)網(wǎng)平臺控制臺,將鼠標(biāo)移至賬號頭像上,然后單擊AccessKey管理,獲取AccessKey ID和AccessKey Secret。

對服務(wù)端進(jìn)行業(yè)務(wù)開發(fā),實(shí)現(xiàn)接收設(shè)備數(shù)據(jù)和下發(fā)控制指令。本文以Java腳本為例,演示接收設(shè)備數(shù)據(jù)和下發(fā)控制指令。

準(zhǔn)備開發(fā)環(huán)境

本文使用Java開發(fā)環(huán)境如下:

業(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ā)。

  1. 下載Demo代碼包,并解壓。

  2. 打開IntelliJ IDEA,導(dǎo)入Demo包中的示例工程amqp-demo

    在pom.xml文件中,已添加Maven依賴,下載Qpid JMS客戶端。

  3. 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:實(shí)例ID。
    private static String iotInstanceId = "${YourIotInstanceId}";
    
    //控制臺服務(wù)端訂閱中消費(fèi)組狀態(tài)頁客戶端ID一欄會顯示clientId參數(shù)。
    //建議使用機(jī)器UUID、MAC地址、IP等唯一標(biāo)識作為clientId。便于您區(qū)分識別不同的客戶端。
    private static String clientId = "${YourClientId}";
    
    //${YourHost}為接入域名,請參見AMQP客戶端接入說明文檔。
    private static String host = "${YourHost}";
    
    // 指定單個(gè)進(jìn)程啟動的連接數(shù)
    // 單個(gè)連接消費(fèi)速率有限,請參考使用限制,最大128個(gè)連接
    // 連接數(shù)和消費(fèi)速率及rebalance相關(guān),建議每500QPS增加一個(gè)連接
    private static int connectionCount = 4;

    參數(shù)

    示例

    說明

    accessKey

    LTAI4GFGQvKuqHJhFa******

    阿里云主賬號或?qū)?yīng)RAM用戶的AccessKey ID和AccessKey Secret。

    登錄物聯(lián)網(wǎng)平臺控制臺,將鼠標(biāo)移至賬號頭像上,然后單擊AccessKey管理,獲取AccessKey ID和AccessKey Secret。

    accessSecret

    iMS8ZhCDdfJbCMeA005sieKe******

    consumerGroupId

    VWhGZ2QnP7kxWpeSSjt******

    已創(chuàng)建的充電寶業(yè)務(wù)數(shù)據(jù)處理消費(fèi)組ID,請參見云端配置開發(fā)的步驟6。

    iotInstanceId

    "iot-cn-6ja***"

    設(shè)備所屬實(shí)例的ID。

    您可在控制臺的實(shí)例概覽頁面查看。

    • 若有ID值,必須傳入該ID值。

    • 若無ID值,傳入空值,即iotInstanceId = ""

    clientId

    12345

    客戶端ID,可自定義,長度不可超過64個(gè)字符。建議設(shè)置為您的AMQP客戶端所在服務(wù)器UUID、MAC地址、IP等唯一標(biāo)識,方便您識別區(qū)分不同的客戶端。

    AMQP客戶端接入成功后,在控制臺的充電寶業(yè)務(wù)數(shù)據(jù)處理的消費(fèi)組詳情頁面,顯示該參數(shù)。

    connectionCount

    4

    啟動AMQP客戶端的連接數(shù),最大不超過128個(gè)。用于實(shí)時(shí)消息推送的擴(kuò)容。

    消費(fèi)組詳情頁面會以${clientId}+"-"+數(shù)字形式,顯示連接的客戶端。其中數(shù)字最小值為0。

    host

    iot-***.amqp.iothub.aliyuncs.com

    AMQP接入域名,請參見查看和配置實(shí)例終端節(jié)點(diǎn)信息(Endpoint)

業(yè)務(wù)服務(wù)器下發(fā)控制指令

服務(wù)器通過調(diào)用Pub接口下發(fā)控制指令:CMD,82923,ad322

參照以下步驟,完成服務(wù)端開發(fā),其中參數(shù)配置,請參見Java SDK使用說明Pub

  1. amqp-demo工程中的pom.xml文件中,添加Maven依賴,然后單擊Load Maven Changes圖標(biāo),完成依賴包下載。

    <!-- https://mvnrepository.com/artifact/com.aliyun/aliyun-java-sdk-iot -->
    <dependency>
        <groupId>com.aliyun</groupId>
        <artifactId>aliyun-java-sdk-iot</artifactId>
        <version>7.41.0</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun</groupId>
        <artifactId>aliyun-java-sdk-core</artifactId>
        <version>4.5.6</version>
    </dependency>
  2. 在工程amqp-demo的路徑src/main/java/com.aliyun.iotx.demo下,創(chuàng)建Java類,輸入代碼。例如PubClient.java,代碼內(nèi)容如下。

    import com.aliyuncs.DefaultAcsClient;
    import com.aliyuncs.IAcsClient;
    import com.aliyuncs.exceptions.ClientException;
    import com.aliyuncs.exceptions.ServerException;
    import com.aliyuncs.profile.DefaultProfile;
    import com.google.gson.Gson;
    import java.util.*;
    import com.aliyuncs.iot.model.v20180120.*;
    
    public class PubClient {
        public static void main(String[] args) {
            DefaultProfile profile = DefaultProfile.getProfile("${RegionId}", "${accessKey}", "${accessSecret}");
    
            IAcsClient client = new DefaultAcsClient(profile);
    
            PubRequest request = new PubRequest();
            request.setIotInstanceId("${iotInstanceId}");
            request.setProductKey("${productKey}");
            request.setQos(0);
            request.setTopicFullName("/${productKey}/${deviceName}/user/cmd/down");
            request.setMessageContent(Base64.getEncoder().encodeToString("CMD,82923,ad322".getBytes()));
    
            try {
                PubResponse response = client.getAcsResponse(request);
                System.out.println(new Gson().toJson(response));
            } catch (ServerException e) {
                e.printStackTrace();
            } catch (ClientException e) {
                System.out.println("ErrCode:" + e.getErrCode());
                System.out.println("ErrMsg:" + e.getErrMsg());
                System.out.println("RequestId:" + e.getRequestId());
            }
    
        }
    }
  3. 配置相關(guān)參數(shù),替換以下參數(shù)為實(shí)際值。

    參數(shù)

    說明

    ${accessKey}

    您賬號的AccessKey IDAccessKey Secret

    您可在阿里云官網(wǎng)控制臺AccessKey管理中創(chuàng)建或查看您的AccessKey。

    ${accessSecret}

    ${RegionId}

    您的物聯(lián)網(wǎng)平臺服務(wù)的地域代碼。

    您可在物聯(lián)網(wǎng)平臺控制臺左上方,查看當(dāng)前服務(wù)所在地域。

    地域代碼的表達(dá)方法,請參見地域列表

    ${iotInstanceId}

    您設(shè)備所屬實(shí)例的ID。您可在物聯(lián)網(wǎng)平臺控制臺的實(shí)例概覽頁面,查看當(dāng)前實(shí)例的ID。

    • 若有ID值,必須傳入該ID值。

    • 若無ID值,傳入空值即可。

    ${productKey}

    您添加設(shè)備后,保存的設(shè)備證書信息。

    您可在物聯(lián)網(wǎng)平臺控制臺的設(shè)備詳情頁面查看。

    ${deviceName}

后續(xù)步驟

整體聯(lián)調(diào)運(yùn)行