JLChen
2021-02-03 4715e99a9be1c50d8ec31f594af9ebde18647c94
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
//
//  EZHCNetDeviceSDK.h
//  EzvizOpenSDK
//
//  Created by linyong on 2017/8/15.
//  Copyright © 2017年 Ezviz. All rights reserved.
//
 
#import <Foundation/Foundation.h>
 
@class EZHCNetDeviceInfo,EZSADPDeviceInfo;
 
typedef NS_ENUM(int, EZPTZCommandType) {
    EZPTZCommandType_ZOOM_IN = 11,     /* 焦距变大(倍率变大) */
    EZPTZCommandType_ZOOM_OUT = 12,    /* 焦距变小(倍率变小) */
    EZPTZCommandType_UP = 21,          /* 云台上仰 */
    EZPTZCommandType_DOWN,             /* 云台下俯 */
    EZPTZCommandType_LEFT,             /* 云台左转 */
    EZPTZCommandType_RIGHT,            /* 云台右转 */
    EZPTZCommandType_UP_LEFT,          /* 云台上仰和左转 */
    EZPTZCommandType_UP_RIGHT,         /* 云台上仰和右转 */
    EZPTZCommandType_DOWN_LEFT,        /* 云台下俯和左转 */
    EZPTZCommandType_DOWN_RIGHT,       /* 云台下俯和右转 */
    EZPTZCommandType_PAN_AUTO,         /* 云台左右自动扫描 */
    EZPTZCommandType_MAX               /* 越界标识 */
};
 
typedef NS_ENUM(int, EZPTZActionType) {
    EZPTZActionType_START = 0,      /* 开始 */
    EZPTZActionType_STOP,           /* 停止 */
    EZPTZActionType_MAX             /* 越界标识 */
};
 
typedef NS_ENUM(int, EZEncryptType) {
    EZEncryptType_OEMBlue = 0,              //蓝精灵加密
    EZEncryptType_OEMGreen,                 //绿巨人加密
    EZEncryptType_normal                    //没有加密
};
 
@interface EZHCNetDeviceSDK : NSObject
 
 
/**
 初始化SDK
 */
+ (void) initSDK;
 
/**
 开始搜索局域网设备
 
 @param searchCallback 搜索结果回调,每搜到一个设备都会回调一次,设备信息EZSADPDeviceInfo
 @return 成功或失败
 */
+ (BOOL) startLocalSearch:(void(^)(EZSADPDeviceInfo *device,NSError *error)) searchCallback;
 
/**
 停止搜索
 
 @return 成功或失败
 */
+ (BOOL) stopLocalSearch;
 
/**
 清楚结果,重新搜索,前提是之前开启过搜索
 */
+ (void) research;
 
/**
 激活设备,调用stopLocalSearch后将无法激活设备
 
 @param serial 设备序列号
 @param pwd 激活密码
 @return 成功或失败
 */
+ (BOOL) activeDeviceWithSerial:(NSString *) serial pwd:(NSString *) pwd;
 
/**
 登录局域网设备
 
 @param userName 用户名
 @param pwd 用户密码
 @param ipAddr 设备ip地址
 @param port 设备端口号
 @return 登录错误时返回nil
 */
+ (EZHCNetDeviceInfo*) loginDeviceWithUerName:(NSString *) userName
                                          pwd:(NSString *) pwd
                                       ipAddr:(NSString *) ipAddr
                                         port:(NSInteger) port;
 
/**
 登出局域网设备
 
 @param userId 用户id
 @return 成功或失败
 */
+ (BOOL)logoutDeviceWithUserId:(NSInteger) userId;
 
/**
 局域网设备云台控制接口
 
 @param userId 用户id
 @param channelNo 通道号
 @param command 命令类型 EZPTZCommandType
 @param action 动作类型 EZPTZActionType
 @return 成功或失败
 */
+ (BOOL) ptzControlWithUserId:(NSInteger) userId
                    channelNo:(NSInteger) channelNo
                      command:(EZPTZCommandType) command
                       action:(EZPTZActionType) action;
 
 
/**
 设置加密方式
 
 @param encryptType 加密方式
 @return 成功或失败
 */
+ (BOOL) setEncryptType:(EZEncryptType) encryptType;
 
/**
 AP配网接口
 
 @param ssid WiFi的ssid
 @param password WiFi的密码
 @param deviceSerial 设备序列号
 @param verifyCode 设备验证码
 @param callback 结果回调
 @return 成功或失败
 */
+ (BOOL)startAPConfigWifiWithSsid:(NSString *) ssid
                         password:(NSString *) password
                     deviceSerial:(NSString *) deviceSerial
                       verifyCode:(NSString *) verifyCode
                           result:(void (^)(BOOL ret)) callback;
 
/**
 停止AP配网
 */
+ (void)stopAPConfigWifi;
 
@end