版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1tformAPI参考(北向 注 32 Application订阅 更 直连设备发现非直连设备设备信息变化设备数据变化删除非直连设备 mand结构体说 mandResp结构体说 CommandDTOV4结构体说 GetDeviceRspDTO结构体说 tformAPI参考(北向
本文档系统化描述IoTtform(下文简称平台)对外开放的能力全集、集成原理和集ApplicationAuth,其他接口调用都需要在requestheader中携带参{Auth接口获取到的accessToken。北向提供的APIApplication之间的httpsTLSApplication携带在IoTtform(下文简称平台)产生的appId和secret过来,调用鉴token。请参考本文档2.1.1鉴权章节进行开发。实现第系统在开放API之前的认证。 (Authrequestheader中携带参数app_key和Authorization:BeareraccessToken}。app_key为参数中的appId,Authorization中{accessToken}Auth接口获取到的如果多次获取令牌,则之前的令牌失效,最后一次获取的令牌才有效。并发获取令tokenOauth2.0Oauth2.0鉴权参数,用来刷新accessToken。(1个月 request:(JSON格式StatusStatusCode:200{}HttpStatusAppIdorsecretisnotappIdsecretRefreshToken(2.1.1鉴权接口返回字段expiresIn的值。 BodytokenOauth2.0刷新令牌,用于获取一个新的 {}StatusStatusCode:200{}HttpStatusTheinputisRefreshaccesstokenrefreshTokenAppIdorsecretisnotappIdsecret
NA注销鉴权信息。 2.0StatusCode:204No {"accessToken":}StatusStatusCode:204NoContent-Type:HttpStatusTheinputisApp向IoTtform申请新的设备,IoTtform分配对应的设备,待设备携带验证码请求接入平台后,分配其deviceId和secret,允许其使用。平台提供了增,删, 备注:app_key为参数中的appId,Authorization中{accessToken}Auth接口获取到的accessToken。verifyCode则返回的就是这个verifyCodeverifyCode。设备唯一标识,如:MAC或SIM或设备esn号等。与设备对接时,必须与设备上报的nodeId一致。备注:nodeIdverifyCode需要填写相同的值,SoftRadio的模拟环境,该值可自IMEI号。终端用户Id,如号码,地psk码,用于生成设备鉴权参数;如不传入,系单位秒,不填使用默认值(180s),0则永不0表示在指定时间内设备进行绑定,超设备唯一标识,1-64psk https:https:{}StatusStatusCode:200{}HttpStatusInvalidaccesstokenTheinputisAppIdforauthnot获取不到appIdTheapplicationisnotTheapplicationhasn'tbeenauthorized.BadrequestTheamountofdevicehasreachedthelimit.InvalidverifyThedevicehasalreadybeenbinded.InternalserverThelicenseisnotLicenseThelicensepoolLicenseThelicensesalesisnotLicenseApplication发送DISCOVERY命令给网关下的设备。一般用于通过网关添加传感器, "appkey:{appId}"URL网关设备唯一标识,1-64取值httpCommandDTONA2Cloud消息体1.3.9CommandNA2CloudHeader结构体说明命令状态:sent已发送、deliveredexecuted发送命令的时间戳,1-32时间格式:yyyyMMdd’T’HHmmss’Z1-32个字节,平台分配的序列号,标识一个命令requestId关联对应命令执行结果 {"header":{"mode":"ACK","from":"************","to":null,"toType":null,"method":"DISCOVERY","requestId":"*****************************************","callbackURL":" "body":"from":"************","sessionID":"**********","sdp":"**********"}}StatusCode:202AcceptedStatusCode:202Accepted{}HttpStatusInvalidaccesstokenTheinputisTheapplicationisnotTheapplicationhasn'tbeenThedeviceDataisnotThedataindataBaseisCommandNameisTheserviceTypeisnotThedeviceisnotThedevicecommandis 设备唯一标识,1-64设备唯一标识,1-64 StatusStatusCode:200{}HttpStatusInvalidaccesstokenTheapplicationisnotTheapplicationhasn'tbeenThedeviceisnot 设备唯一标识,1-64nulltrue删除网关及其下属设备;false时删除网关,并将下属传感器属StatusCode:204No StatusCode:204No HttpStatusInvalidaccesstokenTheapplicationisnotTheapplicationhasn'tbeenThedeviceisnotThedeviceDataisnotThedataindataBaseisCommandNameisTheserviceTypeisnotThedeviceisnotThedevicecommandis
httphttp携 httpNA发送给设备令内CommandNA2CloudHeader结命令状态:1-32字节sent已发送delivered已送达executed已执行时间格式:yyyyMMdd’T’HHmmss’Z1-32个字节,平台分配的序列号,标识一个命令requestId关联对应命令执行结果 {"header":{"mode":"ACK","from":"************","to":null,"toType":null,"method":"REMOVE","requestId":"callbackURL":"body":"timeout":"mode":"ON"}"}StatusCode:202AcceptedStatusCode:202Accepted{}HttpStatusInvalidaccesstokenTheinputisTheapplicationisnotTheapplicationhasn'tbeenThedeviceDataisnotThedataindataBaseisCommandNameisTheserviceTypeisnotHttpStatusThedeviceisnotThedevicecommandis 设备唯一标识,1-64个终端用户,若设备为网关,则endUser可endUsernull。设备类型:z-wave:ProductType+16XXXX-XXXX0对齐dDDStatusStatusCode:204No{}StatusStatusCode:204No密钥刷新后,deviceId不变,nodeId值发生变化,设备需要重新绑定。 :null平台生成,null使用,且返回该null:nodeId不变;非null:更新;ID,平台用于判重申请的临时,网关可以通过获取id和密 {"timeout":300}StatusStatusCode:200Content-Type:{"timeout":}HttpStatusInvalidaccesstokenTheinputisAppIdforauthnotIDTheapplicationisnotTheapplicationhasn'tbeenBadrequestThedeviceisnotDeviceisnotDeviceisThedeviceDataisnotThenodeIdisnodeIdInvalidverifyNA调用此接口将车机的加密给平台 serviceTypecarEncrypt时,data结构serviceTypecarInfo、vehicleProperty时,data1.3.11PutCarInfoData设置加密成功:StatusCode200服务类型找不到:StatusCode400Not {}}StatusStatusCode:200Content-Type:HttpStatusInvalidaccesstokenTheinputisTheapplicationisnotThedeviceisnotIllegal请求,request为TheencrtptivisnotivTheencrtptkeyisnotkeyTheencrtptflagisnotflagAddnewcarinfo,simNumberorcarModelcannotbenull.carInfo,simNumber或者carModelnullThesimNumberisalreadysimNumberTheteNumberisalreadyteNumber已经存ThevinisalreadyvinTheresourceisnot1.2.3 ()。当awydevedgaeayd()的eved。gatewayIdpageNonull,二者必选指定节点的类:ENDPOINT:传感器.GATEWAY:网关.协议类型(v1.3.0url携带pageNo=null时查询内容不分gatewayIdpageNonull,二者必选1的整数,缺设备状态,取值:ONLINE;OFFLINE不在线;ABNORMAL异常状态查询设备信息时间在startTime之后的记 指定返回记录的排序,可取值ASC按设备的时间升序排列;DESC按设备的时间注:gatewayIdpageNo不能同时为空。返回的页码序号(0的整数,0>1.3.8GetDeviceRspDTO StatusStatusCode:200{{ }]}HttpStatusInvalidaccesstokenTheapplicationinputisThegatewayIdandpageNocan'tbebothnull.idpageNo不nullTheapplicationisnotTheapplicationhasn'tbeen 64个字节返回结果:1.3.8GetDeviceRspDTO结构体说明结构 StatusStatusCode:200{ }Invalidaccesstoken信TheapplicationisnotThedeviceisnotThedeviceDataisnotTheapplicationhasn'tbeenApplicationApplication订阅设备变更通知,当设备发生变更时平台会推送给Application。 url地址。必须使用HTTPS信道回调端口。(说明:HTTP信道只可用于调测)StatusCode:201 {}"StatusCode:201 HttpStatusInvalidaccesstokenTherequestcallbackurlisTheapplicationisnotGetnewCallbackUrlfromossfailed.oss获取新的回调GetiotwsaddressiotwsApplication查询设备历史数据。 "appkey:{appId}"设备唯一标识,1-64连设备时,gatewayIddeviceId。当设备是非直连设备时,gatewayId为设备所关联的直连设备(即网关)deviceId。pageNo=null时查询内容不分010万条,这个数值有可查询参数,根据时间段查询的起始时间;时间格式:yyyyMMdd’T’HHmmss’Z’如:90天,这个数值有可能查询参数,根据时间段查询的结束时间;时间格式:yyyyMMdd’T’HHmmss’Z’如:返回的页码序号(0的整数,0代表第一设备唯一标识,1-64网关的设备唯一标识,1-64个字节。当设备是直连设备时,gatewayIddeviceId。当设备是非直连设备时,gatewayId为设备所关联的直连设备(即网关)deviceId。时间格式:yyyyMMdd’T’HHmmss’Z gatewayId={gatewayId}&serviceId={serviceId}&pageNo={pageNo}&pageSizeStatusStatusCode:200{}{{"totalCount":"pageNo":"pageSize":10,"deviceDataHistoryDTOs":[{"appId":"c8855f40-d7a3-4d51-8b46-9f "serviceId":"Battery","data":"batteryLevel":"timestamp": {"appId":"c8855f40-d7a3-4d51-8b46-9f "serviceId":"Temperature","data":"temperature":"timestamp": }]}{{"services":{"serviceType":"Battery","description":"Battery","commands":null,"properties":[{"dataType":"int","required":"min":"min":"max":"step":1,"maxLength":null,"method":"RE","unit":null,"enumList":null]}]}{{"services":{"commands":null,"properties":[{"dataType":"decimal","required":true,"min":"max":"step":null,"maxLength":null,"method":"R","unit":"C","enumList":null}]}]}HttpStatusInvalidaccesstokenTheapplicationisnotThedeviceIdandgatewayIdcan'tbebothnull.deviceIdTheapplicationhasn'tbeen 应用唯一标识,1-64设备唯一标识,1-64id。当设备是直连设备时,gatewayId务必deviceId保持一致。当设备是非直连设备时,gatewayId为设备所关联的直连设备(即网关)的1-64 >mandServicePropertymandmandParamandResponse响 方法:RWER,可写W,可观察 StatusStatusCode:200Body:{"serviceCapabilities":"serviceId""serviceId":"serviceType":"option":"","description":null,"commands":null,"properties":[{"propertyName":"desc":"dataType":"","enumList":["",""],"min":0,"max":"step":"maxLength":"unit":null,"method":"","required":true"events":}]}HttpStatusInvalidaccesstokenTheinputisTheapplicationisnotTheapplicationhasn'tbeen应用场景:NA "appkey:{appId}"ID要与当mandReqHTTPS(境NAPOST方式发送BodyjsonexpeTie48小时CommandDTOV4投递成功:StatusCode201返回参数参见附录1.3.6 mandResp结构体说明结构体说明 {"deviceId":"********","command":{"serviceId":"********","method":"********","paras":{"paraName2":"paraValue2"}"callbackUrl":"callbackUrl":"}StatusCode:201CreatedStatusCode:201Created{"commandId":"********","appId":"********","deviceId":"********","command":{"serviceId":"********","method":"********","paras":{"paraName2":"paraValue2"}"callbackUrl":""expireTime":null,"status":"PENDDING","result":null,"creationTime":""executeTime": "deliveredTime":null,"issuedTimes":}HttpStatusTheinputisGetAppKeyfromheaderappKeyInternalserverTheapplicationisnotThedeviceDataisnotTheserviceTypeisnot http携域信息0startTime之后的记如 令时间在endTime之前的记如 应用ID,该应用ID要与当 查询成功:StatusCode200mandQueryRespmandRespPagination查询成功:StatusCode200 StatusStatusCode:200{"pagination":"pageNo":"pageSize":"totalSize":"data":{"commandId":"********","appId":"********","deviceId":"********","command":{"serviceId":"method":"method":"********","paras":{"paraName1":"paraName2":}"callbackUrl":""expireTime":null,"status":"PENDDING","result":null,"creationTime":""executeTime": "deliveredTime":null,"issuedTimes":{"commandId":"********","appId":"********","deviceId":"********","command":{"serviceId":"********","method":"********","paras":{"paraName2":}"callbackUrl":""expireTime":null,"status":"PENDDING","result":null,"creationTime":""executeTime": "deliveredTime":null,"issuedTimes":}]}HttpStatusInvalidaccesstokenTheinputisGetAppKeyfromheaderappKeyTheapplicationisnotThedeviceDataisnotThedeviceisnotThedevicecommandisnot 接口路径 http携域信息IDID要与当mandReqStatusStatusCode:200返回参数:参见附录1.3.6 mandResp结构体说明结构体说明 {}StatusCode:StatusCode:200{"appId":"********","deviceId":"********","command":{"serviceId":"********","method":"********","paras":{"paraName2":"paraValue2"}"callbackUrl":""expireTime":null,"status":"PENDDING","result":null,"creationTime":" "executeTime":null, "deliveredTime":null,"issuedTimes":null}HttpTheinputisGetAppKeyfromheaderappKeyTheapplicationhasn'tbeenTheapplicationisnotThedeviceDataisnotThedevicecommandisnotThedevicecommandalreadycanceled,expiredorexecuted,Cannotcancel.ID下的所有设备命令。 http携域信息ID要与当StatusCode:201 IDIDWAITTING表示等待执行中,RUNNING表示撤销任务正在执行,SUCCESS表FAILED表示撤销任务执行失败,PART_SUCCESS表 mandResp结构体说明结构体说明 {"deviceId":}StatusStatusCode:201{"taskId":"********","appId":"********","deviceId":"********","status":"WAITTING","totalCount":1, mands":{"commandId":"********","appId":"********","deviceId":"********","command":{"serviceId":"********","method":"********","paras":{"paraName2":"paraValue2"}"callbackUrl":""expireTime":null,"status":"PENDDING","result":null,"creationTime":""executeTime": "deliveredTime":null,"issuedTimes":}]}HttpStatusInvalidaccesstokenTheinputisGetAppKeyfromheaderappKeyTheapplicationhasn'tbeenTheapplicationisnotThedeviceDataisnot http携域信息0,011000IDIDstartTime之后Hmmss'Z'endTime之前Hmmss'Z'ID要与当查询成功:StatusCode200 PaginationIDIDID态,WAITTINGRUNNING表示撤SUCCESS表示撤FAILED表示撤销 1.3.6sp结构体说明结 StatusStatusCode:200{"pagination":"pageNo":"pageSize":"totalSize":"data":{"taskId":"********","appId":"********","deviceId":"********","status":"WAITTING","totalCount":1, mands":{"commandId":"********","appId":"********","deviceId":"********","command":{"serviceId":"********","method":"********","paras":{"paraName1":"paraValue1","paraName2":"paraValue2"}"callbackUrl":""expireTime":null,"status":"PENDDING","result":null,"creationTime":""executeTime": "deliveredTime":null,"issuedTimes":}]{"taskId":"********","appId":"********","deviceId":"taskId":"********","appId":"********","deviceId":"********","status":"WAITTING","totalCount":1, mands":{"commandId":"********","appId":"********","deviceId":"********","command":{"serviceId":"********","method":"********","paras":{"paraName1":"paraValue1","paraName2":"paraValue2"}"callbackUrl":""expireTime":null,"status":"PENDDING","result":null,"creationTime":""executeTime":null, "deliveredTime":null,"issuedTimes":}]}]}HttpStatusInvalidaccesstokenTheinputisGetAppKeyfromheaderappKeyTheapplicationhasn'tbeenTheapplicationisnotThedeviceDataisnotApplication给设备发送命令消息,实现对传感器的实时控制。平台分别提供了下发至Application发送命令给网关(或者网关下的设备)指定的服务下发命令/。 设备唯一标识,1-64id,1-64dJsonObject里面是一个个健值对。profile中命令的参数如果填写该requestId,就是用填写的requestId标识一个命令,这里的requestId不能重复,由发起APP按照下面的规则保证其唯一性:GenerateseqNum:APPseqNumPOST请BODY中携带,序列号规则采用:UUID_XXXX,UUIDJAVA自带算法生成,每次APP启动后生成一个新的值,后续使用时不变,直到下次APP重新启动再生成一个新的UUID值,XXXX的取值范围:0001-9999,达到99990001开始,如此循环 App发起的请求:/users/{userId}NA命令名称,profile命令中定义令url地址。必须使用HTTPS信道回调地(说明:HTTP信道只可用于调测)命令已成功投递StatusCode200:命令状态:sent已发送deliveriedtoType为CLOUDfailedtoTypeCLOUDHHmmss’Z’如 toTypeGATEWAY,如果请求有requestIdrequestId一致,如果请求无requestId列 {"header":{"mode":"ACK","from":"/users/"method":"INVITE-INIT","callbackURL":"body":"from":""sessionID":"sdp":}}StatusStatusCode:200{"status":"sent","timestamp":"**********"}HttpStatusInvalidaccesstokenTheinputisTheapplicationisnotHttpStatusTheapplicationhasn'tbeenThedeviceDataisnotThedataindataBaseisCommandNameisTheserviceTypeisnotThedeviceisnotThedevicecommandisNA创建批量任务。支持给本应用和授予权限的其它应用创建批量任务。 任务类型taskType任务类型的对应不同类型参param参数结构说明,param批量命令类型:DeviceList/DeviceTypeDeviceAreaGroupListDeviceListIDDeviceType时StatusCode:200{{"appId":"******","timeout":1000,"taskName":"******","taskType":"DeviceReg","param":{"fileId":}}StatusStatusCode:200{}HttpStatusInvalidaccesstokenThebatchTaskcounthasreachedthelimit.10个时,返回HttpStatusThebatchTasknamehasBadrequestTheuserhasnoNA查询单个任务信息。支持查询本应用和授予权限的其它应用创建的批量任务信息。 "appkey:{appId}"StatusCode:200任务的归属任务状态 ttttttparam,param批量命令类型:DeviceList/DeviceTypeDeviceAreaGroupListMethod:GETStatusStatusCode:200{"taskId":"********","taskName":"********","appId":"********","operator":"********","taskFrom":"********","taskType":"DeviceCmd","status":"********","startTime":"********","timeout":1000,"progress":100, t": t": t": t": t": t":"successRate":70,"param":{"fileName":}}HttpStatusTheinputisTheapplicationisnotTheapplicationhasn'tbeenNA查询单个任务的任务详情信息。支持查询本应用和授予权限的其它应用创建的批量 分页查询参数,pageNo=null时0的整数时分页查询,0时查StatusCode:200{"error_codeerror_desc批量下发命令任务,output批量下发命令任务,param"appkey:{appId}""appkey:{appId}" StatusStatusCode:200{"totalCount":"pageNo":"pageSize":1,"taskDetails":[{"status":"Fail","output":null,"error":"{\"error_code\":100007,\"error_desc\":\"Badrequestmessage.\"}","param":{"index":"nodeId":}}]}HttpStatusTheinputisTheapplicationisnotTheapplicationhasn'tbeen
Application能够根据具体的业务需要,制定规则(条件)和动作,当网关的状态达到携携 RuleDTO1.2id。key值(1-(不能为空List<Json表),groupExpress二选一必填多条件之间的逻辑关系,支持or,默认为条件场景的时间段。TimeRange为自定义结构体(Condition-List<Json规则的动作。Action为自定义结构Action-SMS、Action-、ListTriggerSourceGroupExpressDEVICETIMER类型and/or,默认为GroupElementand/or,默认为内层表达式运算的元素,一个element表示一个condition,自定义结构条件触发condition设备数据的,自定义结 比较表达式的右值(between操2030,应用场景:2030之间触发规0不延时StrategyStrategyreverse:上一次pulseInteger(>=-DeviceInfo型,路径为ServiceId/DataProperty,例如门条件触发condition类型,取组设备数据的,自定义结构,根据读between2030,应用场景:2030之间触发规0不延时结构体Strategy路径为ServiceId/DataProperty,例如门磁状态为"DoorWindow/status",属性支持多个,比如OBD需要两个属性,经度和纬度”,多个属性中间以条件触发condition类型,取组设备数据的,自定义结构,根据读between操作符联用时,右2030,应用场景:2030之间触发规0不延时结构体StrategyOBD需要两个属性,经度和纬度”,定点触发condition类型,condition的编号,在一条规则范围内k周期性触发condition类型,取值为condition的编号,在一条规则范围内唯keyCMD时,发送,已送达)会通知1.3版本创建DemoActionSMSaction类型,取值为“SMS”action的编号,在一条规则范围内唯一,通知内容通知内容(content为空时,Action-结构说明发送邮件action类型,取值为“action的编号,在一条规则范围内唯一,发送邮件action类型,取值为action的编号,在一条规则范围内唯InvalidaccesstokenAuthenticationappIdTheapplicationisnotappIdTheruleisnotTheapplicationhasn'tTherulenamealreadyThedataindataBaseisTherulecountofeachapphasreachedtheupperlimit,thecurrentuplimitis30entries.TheapplicationinputisInternalservererrorhappenedwhencreaterule.TheruleinputisTheactionofruleisActionActionidduplicatedinsameActionidRuleapiparameterisConvertjsontoclasscurl-X--header"Content-Type:--header"Accept:--header"app_key:--header"Authorization:Bearer -d"name":"rule1","author":"wudashan","description":"thisisatestrule2015.12.23","status":"active","logic":"and","conditions":{"type":"deviceInfo":"path":"DoorWindow/status""operator":"value":"strategy":{"trigger":"eValidTime":"-}}}"actions":{"type":"cmd":{"serviceId":"DoorWindow","messageType":"MUTE","messageBody": ":}}}]1.3curlcurl-X--header"Content-Type:--header"Accept:--header"app_key:--header"Authorization:Bearer -d"name":"rule1","author":"wudashan","description":"thisisatestrule2015.12.23","status":"active","logic":"and","conditions":{"type":"deviceInfo":"path":"DoorWindow/status""operator":"value":"OPEN","strategy":{"trigger":"eValidTime":"-}}"actions":{"type":"cmd":{"serviceId":"DoorWindow","messageType":"MUTE","messageBody": ":}"cmdVersion":}]1.3betweencurlcurl-X--header"Content-Type:--header"Accept:--header"app_key:--header"Authorization:Bearer -d"name":"rule1","author":"wudashan","description":"thisisatestrule2015.12.23","status":"active","logic":"and","conditions":{"type":"deviceInfo":"path":"Temperature/temperature""operator":"between","value":"20,30",}}"actions":{"type":"cmd":{"serviceId":"messageType":"MUTE","messageBody":{ ":}"cmdVersion":}]curlcurl-X--header"Content-Type:--header"Accept:--header"app_key:--header"Authorization:Bearer{accessToken}"--header"Authorization:Bearer{accessToken}" -d"name":"rule1","author":"wudashan","description":"thisisatestrule2015.12.23","status":"active","logic":"and","conditions":{"type":"deviceInfo":"path":"Location/longitude,latitude""operator":"value":,}}"actions":{"type":"deviceId":"0285f8e6-f0f1-441a-bc27-30f "cmd":{"serviceId":"DoorWindow","messageType":"MUTE","messageBody":{ ":}"cmdVersion":}]{{} id。RuleDTO1.2定义说明。InvalidaccesstokenRuleIdcannotbenulloremptywhenupdaterule.ruleIdAuthenticationappIdTheapplicationisnotappIdTheruleisnotTheapplicationhasn'tbeenTherulenamealreadyThedataindataBaseisTherulecountofeachapphasreachedtheupperlimit,thecurrentuplimitis30entries.TheapplicationinputisInternalservererrorhappenedwhencreaterule.TheruleinputisTheactionofruleisActionActionidduplicatedinsameActionidRuleapiparameterisConvertjsontoclasscurl-X--header"Content-Type:--header"Accept:--header"app_key:--header"Authorization:Bearer -d"name":"rule1","author":"wudashan","description":"thisisatestrule2015.12.23","status":"active","logic":"and","conditions":{"type":"deviceInfo":"path":"DoorWindow/status""operator":"value":}"actions":{"type":"cmd":{"serviceId":"DoorWindow","messageType":"MUTE","messageBody": ":}}}]异步命令1.3版本更则curlcurl-X--header"Content-Type:--header"Accept:--header"app_key:--header"Authorization:Bearer -d"name":"rule1","author":"wudashan","description":"thisisatestrule2015.12.23","status":"active","logic":"and","conditions":{"type":"deviceInfo":"path":"DoorWindow/status""operator":"value":}"actions":{"type":"cmd":{"serviceId":"DoorWindow","messageType":"MUTE","messageBody": ":}"cmdVersion":}] "ruleId":"ruleId":} idInvalidaccesstokenAuthenticationappIdTheapplicationisnotappIdTheruleisnotTheapplicationhasn'tbeenTheruleinputiscurl-X--header"Content-Type:--header"Accept:--header"app_key:--header"Authorization:Bearer-d"status":" idStatusCode:204NoInvalidaccesstokenAuthenticationappIdTheapplicationisnotappIdTheruleisnotTheapplicationhasn'tbeencurl-X--header"Accept:--header"app_key:--header"Authorization:Bearer id返回结果:RuleRuleDTO1.2定义说明。InvalidaccesstokenTheapplicationhasn'tbeencurl-X--header"Accept:--header"app_key:--header"Authorization:Bearer{accessToken}"{{"name":"author":"description":"thisisatestrule2015.12.23","type":"noType","status":"logic":"and","conditions":{"type":"DeviceData","id":0,"deviceInfo":"path":"DoorWindow/status""operator":"value":}"actions":{"type":"DeviceCMD","id":0,"cmd":{"serviceId":"DoorWindow","messageType":"MUTE","messageBody": ":}}}]} iduestDTORuleStatusUpdateReqDTOStatusCode:200RuleResultBodyDTO为“PartialOK”“Operationsuccessful.”,否则为“OperationpartialInvalidaccesstokenAuthenticationappIdTheapplicationisnotappIdTheruleisnotTheapplicationhasn'tbeenTheruleinputiscurl-X--header--header"Accept:--header"appkey:--header"Authorization:Bearer{accessToken}"-d}]"{{"result":{"responses":{"response":{"error_code":"*********","error_desc":"*********"}"response":{"error_code":"*********","error_desc":"*********"}}]}Application向平台订阅设备变更通知(Application订阅,当设备发生,ApplicationApplication订阅接口:参考Application订阅NA调用中国电信物联网开放平台的接口添加新设备,获取设备(参见Application。此处的接口路径是应用向平台订阅数据时的对应notifyType为“deviceAdded”的回调通知地址,请参考Application订阅。取值:expiredsucceeded1.3.1DeviceInfo{ "description":"smockdetector",}}Application。此处的接口路径是应用向平台订阅数据时的对应notifyType为“deviceAdded”的回调通知地址,请参考Application订阅。gatewayId为设备本身的deviceId。当设备是非直连设备时,gatewayId为设备所关联的直连设备(即网关)deviceId。ENDPOINT:传感器.GATEWAY:网关.{"notifyType": "description":"smockdetector"}}id,中Application。此处的接口路径是应用向平台订阅数据时的对应notifyType为“deviceInfoChanged”的回调通知地址,请参考Application订阅。deviceInfoChanged(设备信息变gatewayId为设备本身的deviceId。当设备是非直连设备时,gatewayId为设备所关联的直连设备(即网关)deviceId。1.3.1DeviceInfo{"notifyType":"deviceInfoChanged",}}Application。此处的接口路径是应用向平台订阅数据时的对应notifyType为“deviceDhanged”的回调通知地址,请参考Application订阅。gatewayId为设备本身的deviceId。当设备是非直连设备时,gatewayId为设备所关联的直连设备(即网关)deviceId。service数据,只有设备数据变化时HHmmss’Z’如 {"notifyType":"deviceDhanged","requestId":"{requestId}","service":{"serviceId":"data":{"battery_low":1},}}Application。此处的接口路径是应用向平台订阅数据时的对应notifyType为“deviceDeleted”的回调通知地址,请参考Application订阅。gatewayId为设备本身的deviceId。当设备是非直连设备时,gatewayId为设备所关联的直连设备(即网关)deviceId。{"notifyType":}到该消息Application。此处的接口路径是应用向平台订阅数据时的对应notifyType为“messageConfirm”的回调通知地址,请参考Application订阅。通知类型,messageConfirm消息headerHeader息,1-128字节1-128表示消息接收者的地址,1-128字ToFrom命令状态:1-32字节sent已发送delivered已送达executedHHmmss’Z1-32{{"requestId":"{requestId"from":"to":"{to}",}{}}图等Application。此处的接口路径是应用向平台订阅数据时的对应notifyType为“commandRsp”的回调通知地址,请参考Application订阅。commandRsp对应的command是指使用设备服务接口下发令。请参考9.2.5设备通知类型,commandRsp响应命HeaderBody中的内息,1-128个字节1-128个字节,表示消息发布者的表示消息接收者的地址,1-128个ToFromHHmmss’ZT121212Z,1-32(1-32个字节)命令名称,存在于设"REMOVE"profil
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年及未来5年市场数据中国酿造酒行业市场发展数据监测及投资方向研究报告
- 养鸡技术进阶培训【课件文档】
- 2025 高中信息技术数据与计算之数据与计算提升在线教育学习引导设计课件
- 2026年地下空间开发利用全周期智慧管理平台建设规划
- 2026年垃圾填埋场微塑料形成机制与风险管控指南
- 2026年燃料电池发电与储能第二增长曲线
- 2026年住建部村镇宜居型住宅节能门窗技术申报材料编制要点
- 2026年剪枝技术:去除冗余神经元与连接的实操方案
- 2026年群体智能在服务机器人集群作业中场景拓展
- 医患沟通与职业防护课件
- (完整版)xx中学“双积双评”积分入团实施方案
- 阳明计米器mc-262说明书
- 西藏色拉寺导游词
- 2023国网蒙东电力有限公司招聘管理类《管理科学与工程》考试题库(含答案)
- 2023年重庆大学机械学院复试题重大机械复试真题
- CBCC中国建筑色卡色
- (完整版)简单儿童对比涂色画画-可打印(干货)
- GB/T 26480-2011阀门的检验和试验
- GB/T 21076-2017证券及相关金融工具国际证券识别编码体系
- 腹腔镜辅助下阴式子宫切除的课件
- 屠宰企业(生猪屠宰场)安全风险分级管控体系方案资料汇编(2022-2023年)
评论
0/150
提交评论