阿里物联网套件-服务端SDK学习实践(基础篇-9根据设备名称查询设备信息)

根据设备名称查询设备信息

public class QueryDeviceByNameTest {

    public static void main(String[] args) {

        DefaultAcsClient client = BaseTest.init();

        QueryDeviceByNameRequest request = new QueryDeviceByNameRequest();
        request.setProductKey("******");
        request.setDeviceName("test_a");
        QueryDeviceByNameResponse response =  null;
        try {
            response = client.getAcsResponse(request);
        } catch (ClientException e) {
          e.printStackTrace();
        }
        if(response != null){
            System.out.println(ToStringBuilder.reflectionToString(response, ToStringStyle.SHORT_PREFIX_STYLE));
            System.out.println(ToStringBuilder.reflectionToString(response.getDeviceInfo(), ToStringStyle.SHORT_PREFIX_STYLE));
        }
    }
}

打印结果:

QueryDeviceByNameResponse[requestId=496F7F06-1C2C-42A1-9BE7-8E4FB7DBD52F,success=true,errorMessage=<null>,deviceInfo=com.aliyuncs.iot.model.v20170420.QueryDeviceByNameResponse$DeviceInfo@41408b80]
QueryDeviceByNameResponse.DeviceInfo[deviceId=******,deviceSecret=******,productKey=******,deviceStatus=<null>,deviceName=test_a,deviceType=<null>,gmtCreate=Sun, 28-May-2017 11:30:02 GMT,gmtModified=<null>]

搜索条件就是某个产品(产品KEY)下的某个设备(设备名称唯一)。
以下是个人项目的思考,可跳过。客户端多个用户在同一个产品下新建设备可能重名,所以平台层面要对用户申请的设备名字进行改造,比如加前后缀等操作,粗暴点直接提醒该设备名已经占用。


版权声明:本文为weixin_37222239原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。