// // Copyright © 2019 dahua. All rights reserved. // 设备æ“ä½œç›¸å…³æŽ¥å£ #import <Foundation/Foundation.h> #import "LCModel.h" NS_ASSUME_NONNULL_BEGIN @interface LCDeviceHandleInterface : NSObject /** 设备抓图 @param deviceId 设备åºåˆ—å· @param channelId 通é“å· @param success æˆåŠŸå›žè°ƒ(返回抓图访问地å€) @param failure 失败回调 */ + (void)setDeviceSnapWithDevice:(NSString *)deviceId Channel:(NSString *)channelId success:(void (^)(NSString *picUrlString))success failure:(void (^)(LCError *error))failure; /** 设备抓图å‡çº§ç‰ˆ @param deviceId 设备åºåˆ—å· @param channelId 通é“å· @param success æˆåŠŸå›žè°ƒ(返回抓图访问地å€) @param failure 失败回调 */ + (void)setDeviceSnapEnhancedWithDevice:(NSString *)deviceId Channel:(NSString *)channelId success:(void (^)(NSString *picUrlString))success failure:(void (^)(LCError *error))failure; /** äº‘å°æŽ§åˆ¶V2 @param deviceId 设备åºåˆ—å· @param channelId 通é“å· @param operation æ“作行为 @param duration æŒç»æ—¶é—´ @param success æˆåŠŸå›žè°ƒ(返回抓图访问地å€) @param failure 失败回调 */ + (void)controlMovePTZWithDevice:(NSString *)deviceId Channel:(NSString *)channelId Operation:(NSString *)operation Duration:(NSInteger)duration success:(void (^)(NSString *picUrlString))success failure:(void (^)(LCError *error))failure; /** 获å–设备周边WiFiä¿¡æ¯ @param deviceId 设备åºåˆ—å· @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)wifiAroundDevice:(NSString *)deviceId success:(void (^)(LCAroundWifiInfo *wifiInfo))success failure:(void (^)(LCError *error))failure; /** 当å‰è®¾å¤‡è¿žæŽ¥çš„WiFiä¿¡æ¯ @param deviceId 设备åºåˆ—å· @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)currentDeviceWifiDevice:(NSString *)deviceId success:(void (^)(LCWifiInfo *wifiInfo))success failure:(void (^)(LCError *error))failure; /** 控制设备连接至æŸä¸€Wifi @param deviceId 设备åºåˆ—å· @param session WiFiè¿žæŽ¥ä¿¡æ¯ @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)controlDeviceWifiFor:(NSString *)deviceId ConnestSession:(LCWifiConnectSession *)session success:(void (^)(void))success failure:(void (^)(LCError *error))failure; /** 获å–设备最新版本并å‡çº§ @param deviceId 设备åºåˆ—å· @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)upgradeDevice:(NSString *)deviceId success:(void (^)(void))success failure:(void (^)(LCError *error))failure; /** 设置动检开关 @param deviceId 设备åºåˆ—å· @param channelId 通é“å· @param enable 是å¦ç”Ÿæ•ˆ @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)modifyDeviceAlarmStatus:(NSString *)deviceId channelId:(NSString *)channelId enable:(BOOL)enable success:(void (^)(void))success failure:(void (^)(LCError *error))failure; /** 获å–动检计划 @param deviceId 设备åºåˆ—å· @param channelId 通é“å· @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)deviceAlarmPlan:(NSString *)deviceId channelId:(NSString *)channelId success:(void (^)(LCAlarmPlan *plan))success failure:(void (^)(LCError *error))failure; /** é…置动检计划 @param deviceId 设备åºåˆ—å· @param plan 动检计划 @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)modifyDeviceAlarmPlan:(NSString *)deviceId LCAlarmPlan:(LCAlarmPlan *)plan success:(void (^)(void))success failure:(void (^)(LCError *error))failure; /** 获å–呼å¸ç¯çŠ¶æ€ @param deviceId 设备åºåˆ—å· @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)breathingLightStatusForDevice:(NSString *)deviceId success:(void (^)(BOOL status))success failure:(void (^)(LCError *error))failure; /** 设置呼å¸ç¯çŠ¶æ€ @param deviceId 设备åºåˆ—å· @param open æ˜¯å¦æ‰“开呼å¸ç¯ @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)modifyBreathingLightForDevice:(NSString *)deviceId Status:(BOOL)open success:(void (^)(void))success failure:(void (^)(LCError *error))failure; /** 获å–è®¾å¤‡ç¿»è½¬çŠ¶æ€ @param deviceId 设备åºåˆ—å· @param channelId 通é“å· @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)frameReverseStatusForDevice:(NSString *)deviceId ChannelId:(NSString *)channelId success:(void (^)(NSString *direction))success failure:(void (^)(LCError *error))failure; /** è®¾å®šè®¾å¤‡ç¿»è½¬çŠ¶æ€ @param deviceId 设备åºåˆ—å· @param direction ç”»é¢æ–¹å‘(normal:æ£å¸¸ï¼›reverse:翻转) @param channelId 通é“å· @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)modifyFrameReverseStatusForDevice:(NSString *)deviceId ChannelId:(NSString *)channelId Direction:(NSString *)direction success:(void (^)(void))success failure:(void (^)(LCError *error))failure; /** æ ¼å¼åŒ–设备SDå¡ @param deviceId 设备åºåˆ—å· @param channelId 通é“å· @param success æˆåŠŸå›žè°ƒ ( 1.start-recover:开始åˆå§‹åŒ–(æ£å¸¸æƒ…况下)2.no-sdcardï¼šæ’æ§½å†…æ— SDå¡ 3.in-recover:æ£åœ¨åˆå§‹åŒ–(有å¯èƒ½åˆ«çš„客户端已ç»è¯·æ±‚åˆå§‹åŒ–)4.sdcard-error:其他SDå¡é”™è¯¯ï¼‰ @param failure 失败回调 */ + (void)recoverSDCardForDevice:(NSString *)deviceId ChannelId:(NSString *)channelId success:(void (^)(NSString *result))success failure:(void (^)(LCError *error))failure; /** 设置设备的OSDé…ç½® @param deviceId 设备åºåˆ—å· @param channelId 通é“å· @param open æ˜¯å¦æ‰“å¼€OSD设置 @param osd OSDå—符 @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)setDeviceOsdForDevice:(NSString *)deviceId ChannelId:(NSString *)channelId enable:(BOOL)open OSD:(NSString *)osd success:(void (^)(void))success failure:(void (^)(LCError *error))failure; /** 获å–设备OSDé…ç½® @param deviceId 设备åºåˆ—å· @param channelId 通é“å· @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)queryDeviceOsdForDevice:(NSString *)deviceId ChannelId:(NSString *)channelId success:(void (^)(BOOL enable, NSString *osd))success failure:(void (^)(LCError *error))failure; /** 设置设备视频å°é¢ @param deviceId 设备åºåˆ—å· @param channelId 通é“å· @param data 图片二进制数æ®çš„base64ç¼–ç å—符串 @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)uploadDeviceCoverPictureForDevice:(NSString *)deviceId ChannelId:(NSString *)channelId PictureData:(NSData *)data success:(void (^)(NSString *picUrlString))success failure:(void (^)(LCError *error))failure; /** 获å–è®¾å¤‡äº‘å°æŽ§åˆ¶æŽ¥å£ @param deviceId 设备ID @param channelId 通é“ID @param success æˆåŠŸå›žè°ƒï¼ˆh,v,z) @param failure 失败回调 */ + (void)devicePTZInfoForDevice:(NSString *)deviceId ChannelId:(NSString *)channelId success:(void (^)(NSString *h, NSString *v, NSString *z))success failure:(void (^)(LCError *error))failure; /** 设备/通é“å°é¢åˆ·æ–° @param deviceId 设备Id @param channelId 通é“Id @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)refreshDeviceCoverForDevice:(NSString *)deviceId ChannelId:(NSString *)channelId success:(void (^)(void))success failure:(void (^)(LCError *error))failure; /** 新增收è—点 @param deviceId 设备ID @param channelId 通é“ID @param name æ”¶è—点åç§° @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)setCollectionForDevice:(NSString *)deviceId ChannelId:(NSString *)channelId Name:(NSString *)name success:(void (^)(void))success failure:(void (^)(LCError *error))failure; /** åˆ é™¤æ”¶è—点 @param deviceId 设备ID @param channelId 通é“ID @param nameList æ”¶è—点å称列表 @param success æˆåŠŸå›žè°ƒ @param failure 失败回调 */ + (void)deleteCollectionForDevice:(NSString *)deviceId ChannelId:(NSString *)channelId NameList:(NSMutableArray <NSString *> *)nameList success:(void (^)(void))success failure:(void (^)(LCError *error))failure; /** èŽ·å–æ”¶è—ç‚¹ä¿¡æ¯ @param deviceId 设备ID @param channelId 通é“ID @param success æˆåŠŸå›žè°ƒï¼ˆString数组) @param failure 失败回调 */ + (void)getCollectionForDevice:(NSString *)deviceId ChannelId:(NSString *)channelId success:(void (^)(NSMutableArray <NSString *> *))success failure:(void (^)(LCError *error))failure; +(void)modifyCollectionForDevice:(NSString *)deviceId ChannelId:(NSString *)channelId success:(void (^)(NSMutableArray <NSString *> *))success failure:(void (^)(LCError *error))failure; @end NS_ASSUME_NONNULL_END