设备标签事件

设备标签功能,属于事件上报的一种,所以设备标签上传功能,复用原来的事件上传接口,标签以字典参数形式传递,而事件参数通过使用deviceTagsUpload 事件标志即可。

详细流程和示例代码如下:

设备标签事件流程

  • 设备标签事件上报

    示例代码:

 /*设备标签事件转发上报 */
    NSDictionary<NSString *, id> *dict = @{@"flagKey":@"flagValue"};
    NSString *mid = [self.instance uploadEventsWithEvents:dict event: [self.config deviceTagsUpload]];
    NSLog(@"upload event Tag mid:%@", mid);
  • 设备标签事件回调响应

    事件上传成功的回调响应协议方法:

- (void)iotUpload:(IoTInstance *)iot messages:(NSDictionary<NSString *,id> *)messages type:(enum IoTUploadType)type {
    NSLog(@"上报属性或事件响应:%@", messages);
}
  • 设备标签事件转发或接受标签更新信息

    协议方法如下,根据identifier 来筛选出设备标签下发或者转发的消息通知,然后获取相关的tags 内容。tags key 存放的是json格式标签信息,详细示例见下方。

- (NSString *)iotCall:(IoTInstance *)iot identifier:(NSString *)identifier services:(NSDictionary<NSString *,id> *)services {


    if ([identifier isEqualToString:self.config.deviceTagsNotice]) {
        NSLog(@"call Device Tags:%@", services);
    }

    return @"ios call success";
}

消息回传详细信息格式,其中tags key下为详细更新的标签信息

消息转发内容:{
    id = 0;
    status = 0;
    tags = "[{\"key\":\"flagKey\",\"value\":\"flagValue\"}]";
    tested = 0;
}

results matching ""

    No results matching ""