大家好,首先说声抱歉,上次的XYsuger脚本解释程序,后来到WINXP等电脑操作运行,发现无法正常运行,猜测应该是win10等64位系统才可以;
毕竟很多人使用WINXP和WIN7等32位操作系统,还好有更新文件如下链接,
http://47.94.219.162/xysuger-v0.0.2.rar
上一篇文章介绍了使用XYsuger软件,如何创建产品,也有提到阿里云IOT关于产品的接口有5个,这次把剩下的4个接口的操作介绍一下。首先是修改产品名称,提到修改的必要性,大家应该也有广泛认同,毕竟当时创建产品的时候,不会顾及许多,而且随着生产具体实际情况的发生和发展,产品也会有许多变更,比如应用场景变化了,应用场合和使用方式变化等。。。,所以这个时候就需要在服务端对事前创建好的产品,修改成符合当前要求的名称,也有助于避免使用者的误解和误操作;
产品修改的命令是UpdateProduct,需要指定产品的key才可以让服务端知道对哪一个产品进行修改,这个产品的KEY可以在创建产品的时候,通过从返回的信息中得到;而最后一个要告知服务端的信息,就是要修改后的产品名称了。这样,我们就可以得到如下的修改产品名称的命令,
?.XYsayFrO.IoT.Srv.UpdateProduct.产品key.修改后的产品名称
这里笔者为了演示方便,将上次我们创建lamp,heater,speaker都改为mylamp,myheater,myspeaker:
XYsayFrO.IoT.Srv.UpdateProduct.a1YHU9ILKOX.mylamp
XYsayFrO.IoT.Srv.UpdateProduct.a1OMDdGrOK0.myheater
XYsayFrO.IoT.Srv.UpdateProduct.a1Hc3w9JU9r.myspeaker
修改完XYsee.xy文件后,在dos窗口运行结果如下图所示:
修改完产品名称后,我们可以通过查询产品信息,来确认我们修改的信息是否正确,查询产品的命令为QueryProduct,和修改产品类似,查询产品的命令也需要提供要查询产品的key,所以查询产品的格式如下:
XYsayFrO.IoT.Srv.QueryProduct.需要查询产品的key
我们这回把三个修改了名字的产品都查询一下,所以具体命令如下:
XYsayFrO.IoT.Srv.QueryProduct.a1YHU9ILKOX
XYsayFrO.IoT.Srv.QueryProduct.a1OMDdGrOK0
XYsayFrO.IoT.Srv.QueryProduct.a1Hc3w9JU9r
保存好XYsee.xy文件后,这时在运行XYsuger.exe,得到如下图所示信息:
,从图中,我们可以看到,我们将三个产品名称都以前修改成功了;在返回的信息中还有一些和产品相关的其他信息,那么如何解读这些信息呢。本系列文章,标题用IOT三连取名,是记得以前网络经常流行XXX三连的说法,其实最开始好像是从电竞圈传开来的,由于通常要求文明用语,友善交流,所以通常以英文字母缩写,用三种逻辑递增,语感增强,来表达对某些事情现象的看法,所以又延伸出鲁迅三连,扁鹊三连等,作为软件工程,程序员的三连则是查bug,改bug,写bug.那作为IOT产品是否也可以有个产品三连,如果有,笔者认为应该是产品描述,产品key和产品名称;产品描述可以说是对产品的简要说明,产品key的借用钥匙的概念,用于调用服务端产品信息的时候提供和使用。而产品的名称,则是用于实际的生产和项目。所以在刚才查询的结果图片中,Description字段为产品描述,字串信息是最长的。而ProductKey作为产品key字段,看着则是感觉像对抽象,都是用一些无意义的英文字母和数字组成,毕竟人家是和服务端得机器来沟通交流。而ProductName是产品名称字段,则可以容易人为的理解其中的含义;
这次介绍完修改产品和查询产品两个接口,下面轮到查询产品列表的接口了,记得笔者年少无知,也曾到某酷某奇异刷国产剧,最大感受是剧集很多,所以常常剧情不足,回忆来凑。同时者也说明了回忆的重要性。产品的操作也与此类似,毕竟创建一次产品可能会用几年或几十年,那么随着时间的流逝,产品的负责人或维护人员也是需要定时的查询一下,目前都有那些产品的,这就引出了查询产品列表的操作,皆然是查询整个产品的列表,所以也就不需要向类似产品key的参数了。产品列表查询命令为QueryProductList,所以只要使用如下格式即可:
XYsayFrO.IoT.Srv.QueryProductList.
运行后,截图如下:
从图中可以看到,笔者名下一共有9个产品,并且结果项系列出了每个产品的key,名称和描述;这里需要特别提到的是,由于产品名称中有中文字符,在dos窗口,通常会显示乱码,所以需要事先修改一下dos的代码页,使用chcp 65001命令,修改为国际通用字符显示即可;
介绍到这里,本次现在就剩下删除产品一个函数了,随着产品的创建,使用和修改维护,总有一日产品会有老化和淘汰的时刻,所以清除那些不再使用的产品,我们可以用删除产品的接口,这个接口的命令是DeleteProduct,和其他产品相关命令一样,这里需要提*品的key,才能删除产品,具体命令如下:
XYsayFrO.IoT.Srv.DeleteProduct.a1YHU9ILKOX
XYsayFrO.IoT.Srv.DeleteProduct.a1OMDdGrOK0
XYsayFrO.IoT.Srv.DeleteProduct.a1Hc3w9JU9r
这里我们删除了,上一篇文章创建的三个产品,可以看到下面的返回结果,删除成功:
接着我们可以再次调用查询产品列表的命令,来确认下我们删除是否成功:
从这个结果,可以看到我们目前只有六个产品了,相对于之前的九个产品,证明我们刚才删除产品的操作是成功的。
到这里,五个产品的操作接口和命令,都已经介绍完啦,这篇文章也随着结束啦,欢迎收看,谢谢。
欢迎大家扫码进群领取物联网最新资料以及获取一手直播资讯。