手把手学IOT服务端API编程[16、查询设备影子]|MVP讲堂

简介: 本教程旨在介绍服务器端的API编程接口,基于php脚本的sdk,希望对物联网服务器端有编程需求的有所帮助。阿里云MVP手把手教你!有演示视频,千万别错过!

作者:阿里云MVP洵云

10节回顾:手把手学IOT服务端API编程[10、保存设备属性]|MVP讲堂

11节回顾:手把手学IOT服务端API编程[11、查询设备属性列表]

12节回顾:手把手学IOT服务端API编程[12、删除设备属性]

13节回顾:手把手学IOT服务端API编程[13、发布消息到Topic]

14节回顾:手把手学IOT服务端API编程[14、发消息给设备并同步返回响应]

15节回顾:手把手学IOT服务端API编程[15、发布广播消息]



上节介绍从服务端给设备发送广播消息后,实际使用过程中,往往存在网络信号不好,质量不稳定的状况,这时就需要服务端保存一份设备端最后一次状态的信息,用来做后续的相关分析,这份信息又被称为设备影子,服务端的API接口也提供了相应的功能,
这一节就来介绍一下如何使用设备影子这个功能,这个接口需要提供两个参数,一个是产品的key值,一个是设备名称;
接下来我们看一下具体实现;


1、脚本实现:
我们按照接口的要求,在框架页面上,提供产品的key值和设备名称,这两个输入参数框给用户输入,
产品KEY:        <input type="text" name="pkey16">
设备名称:        <input type="text" name="devname16">


而在实际的实现代码中,我们只需要使用get函数提取这个变量就可以了:
$pkey = $_GET["pkey16"];
$devname = $_GET["devname16"];


接着引用查询设备列表的接口:
$request = new Iot\GetDeviceShadowRequest();


通过查看GetDeviceShadowRequest文件,可以知道我们需要调用setProductKey和setDeviceName 两个函数,来从服务端传送查询设备影子的信息;这两个参数的意思分别是配置产品key,配置设备名称.


$request->setProductKey($pkey); 


$request->setDeviceName($devname); 


调用通用的网络查询操作后,将操作的返回结果和影子信息显示在网页上:


echo 'ShadowMessage :'.$response->ShadowMessage.'<br>';
echo 'RequestId :'.$response->RequestId.'<br>';
echo 'Success :'.$response->Success.'<hr>';


2、设备端模拟:
默认设备初始状态是不存在设备影子的,由于只有设备有上线记录后,这一节也需要设备的模拟,下载开发包的命令和上节类似,这里只介绍发送设备消息例子的部分:
2.1 修改shadow-example.c文件,改为我们己的设备名称:
vi iotkit-embedded-master/iotkit-embedded-master/sample/device-shadow/shadow-example.c
2.2 修改后,保存退出,重新编译源码;
cd iotkit-embedded-master/iotkit-embedded-master/
make clean
sudo make all
2.3 编译结束后,运行编译后的例子文件:
output/release/bin/shadow-example


        
3、实际测试:
先运行模拟设备,然后打开浏览器,转到我们框架脚本页面,这里输入我们从控制台得到的产品key值和设备名称,运行提交按钮后,可以得到要查询的设备影子信息:
具体向关截图如下:




timelapse:
http://www.xunyun17.xyz/ioto/step16-GetDeviceShadowRequest.mp4

目录
相关文章
|
2月前
|
移动开发 算法 API
淘宝/天猫:使用物流查询API实时显示包裹位置,减少客服咨询量
电商平台中物流咨询占客服工作40%以上,用户频繁追问包裹位置。本文介绍通过物流查询API实现包裹实时追踪,降低75.6%咨询量,提升用户体验与复购率,助力降本增效。(238字)
335 0
|
2月前
|
人工智能 JSON API
淘宝/天猫:使用物流查询API实时显示包裹位置,减少客服咨询量
在电商竞争激烈的环境下,淘宝、天猫通过集成物流查询API,实现实时追踪包裹位置,显著减少用户咨询量。本文解析其原理、实现步骤与效益,展示如何以技术手段提升用户体验、降低客服压力,助力平台高效运营。(238字)
260 0
|
2月前
|
监控 安全 算法
快递查询API|一次接通2700+快递服务商的物流轨迹
在物流数字化的浪潮中,企业对接多家快递服务商的痛点日益凸显:每新增一家合作物流商,技术团队就要投入 5-7 个工作日进行接口开发,不同服务商的接口协议差异导致系统稳定性差,物流轨迹数据分散在各平台难以整合分析。快递鸟快递查询 API 通过标准化接口架构,创新性地实现了 2700 + 国内外快递服务商的一键接入,将传统模式下的周级开发周期压缩至小时级,彻底重构了物流数据对接的技术范式。
195 0
|
2月前
|
JSON 前端开发 API
汽车配件:使用VIN码查询API精准匹配车型配件,提升用户信任
VIN码是汽车的唯一“身份证”,通过API可精准解析车型信息,实现配件99.5%以上匹配度。本文详解VIN码API的工作流程、技术实现与信任提升价值,助力汽配销售从经验判断迈向数据驱动,降低退货率,提升用户体验与复购。
463 0
|
2月前
|
JSON 监控 API
淘宝/天猫:使用订单查询API实时追踪包裹状态,自动推送物流通知至用户
在淘宝/天猫平台,通过集成订单查询API实现物流状态实时监控,结合定时轮询与自动推送通知功能,可有效减少用户频繁刷新页面,提升购物体验。本文详解API调用原理、状态判断及Python代码实现,助力开发者构建高效、智能的物流通知系统。
252 0
|
6月前
|
物联网
(手把手)在华为云、阿里云搭建自己的物联网MQTT消息服务器,免费IOT平台
本文介绍如何在阿里云搭建自己的物联网MQTT消息服务器,并使用 “MQTT客户端调试工具”模拟MQTT设备,接入平台进行消息收发。
2259 42
|
9月前
|
物联网 数据挖掘 BI
基于阿里云物联网平台(IoT)的智能家居系统开发与部署
随着物联网技术的发展,智能家居成为提升生活品质的重要方向。阿里云物联网平台提供设备接入、数据管理及应用开发能力,支持亿级设备接入、高效数据管理和灵活应用开发,确保系统安全。本文通过实战案例展示如何基于该平台构建智能家居系统,涵盖设备接入、远程控制、场景联动与数据分析等功能,助力企业快速部署智能家居解决方案。
|
12月前
|
安全 物联网 物联网安全
揭秘区块链技术在物联网(IoT)安全中的革新应用
揭秘区块链技术在物联网(IoT)安全中的革新应用
|
安全 物联网 网络安全
智能设备的安全隐患:物联网(IoT)安全指南
智能设备的安全隐患:物联网(IoT)安全指南
1057 12
|
12月前
|
传感器 存储 物联网
在物联网(IoT)快速发展的今天,C语言作为物联网开发中的关键工具,以其高效、灵活、可移植的特点
在物联网(IoT)快速发展的今天,C语言作为物联网开发中的关键工具,以其高效、灵活、可移植的特点,广泛应用于嵌入式系统开发、通信协议实现及后端服务构建等领域,成为推动物联网技术进步的重要力量。
441 1