From 3698c13aba988cd3e41b91b255e1c682c057e565 Mon Sep 17 00:00:00 2001
From: chenqiyang <1406175257@qq.com>
Date: 星期四, 23 三月 2023 11:49:58 +0800
Subject: [PATCH] 1.新增历史记录相关页面及功能 2.修改配网为热点配网 3.设备列表增加过滤门锁功能 4.增加添加设备通知功能
---
EZSDK/EZSDK/EZSDK.m | 418 +++++++++++++++++++++++++++++++++++++---------------------
1 files changed, 265 insertions(+), 153 deletions(-)
diff --git a/EZSDK/EZSDK/EZSDK.m b/EZSDK/EZSDK/EZSDK.m
index 02954b8..d7c2c54 100644
--- a/EZSDK/EZSDK/EZSDK.m
+++ b/EZSDK/EZSDK/EZSDK.m
@@ -6,8 +6,7 @@
//
#import "EZSDK.h"
-#import "DeviceInfo.h"
-#import "EZDeviceInfo.h"
+//#import "DeviceInfo.h"
#import "EZDeviceInfo.h"
#import "EZOpenSDK.h"
#import "GlobalKit.h"
@@ -19,41 +18,280 @@
#import "EZPlaybackViewController.h"
#import "EZDeviceTableViewController.h"
#import "EZHCNetDeviceSDK.h"
-
-
-#define CURR_LANG ([[NSLocale preferredLanguages] objectAtIndex:0])
-#define LanguageIsChinese ([CURR_LANG rangeOfString:@"zh-Hans"].location != NSNotFound)
-
+#import "EZMessagePhotoViewController.h"
+#import "HDLEZVisitorRecordViewController.h"
+#import "HDLEZDeviceMsgListViewController.h"
@implementation EZSDK
+
+///
++ (instancetype)sharedInstance{
+ static EZSDK *instance = nil;
+ static dispatch_once_t onceToken;
+ dispatch_once(&onceToken, ^{
+ if (!instance) {
+ instance = [[EZSDK alloc] init];
+ }
+ });
+ return instance;
+}
+
+static BOOL isHavelibInit=NO;
/**
鍒濆鍖朣DK
浼犲叆鍥藉唴鐗坘ey 鍜屾捣澶栫増globalAppKey
*/
-+ (BOOL)initLibWithAppKey:(NSString *)appKey globalAppKey:(NSString *)globalAppKey
+- (BOOL)initLibWithAppKey:(NSString *)appKey globalAppKey:(NSString *)globalAppKey
{
- static BOOL isHavelibInit=NO;
if (!isHavelibInit) {
-// isHavelibInit=YES;
- NSLog(@"绗竴娆″垵濮嬪寲钀ょ煶搴�");
+ [EZOPENSDK setDebugLogEnable:YES];
+ // isHavelibInit=YES;
+ // NSLog(@"绗竴娆″垵濮嬪寲钀ょ煶搴�");
if (!LanguageIsChinese) {
//娴峰鐗�
isHavelibInit = [EZGlobalSDK initLibWithAppKey:globalAppKey];
NSLog(@"娴峰鐗坘ey--%@",globalAppKey);
}else{
isHavelibInit = [EZOpenSDK initLibWithAppKey:appKey];
+ [[GlobalKit shareKit] setHdlAppKey:appKey];
NSLog(@"鍥藉唴鐗坘ey--%@", appKey);
}
-
[EZHCNetDeviceSDK initSDK];
[EZOPENSDK enableP2P:YES];
- [EZOPENSDK setDebugLogEnable:YES];
+// [EZOPENSDK setDebugLogEnable:YES];
NSLog(@"EZOpenSDK Version = %@", [EZOPENSDK getVersion]);
+// NSLog(@"EZOpenSDK treamToken= %@", );
+
}
return isHavelibInit;
}
+/**
+ 璁剧疆SDK鐨刟ccessToken
+ */
+-(void)setEZAccessToken:(NSString *) accessToken
+{
+ [[GlobalKit shareKit] setAccessToken:accessToken];
+ [EZOPENSDK setAccessToken:accessToken];
+}
+
+/**
+ 璁剧疆HDLSDK鐨刟ccessToken
+ */
+-(void)setHDlAccessToken:(NSString *) accessToken refreshToken:(NSString *) refreshToken
+{
+ [[GlobalKit shareKit] setHdlAccessToken:accessToken];
+ [[GlobalKit shareKit] setHdlRefreshToken:refreshToken];
+}
+/**
+ 璁剧疆SDK鐨勬渤涓滄帴鍙g殑requestHttpsHost鍜屽钩鍙� 鏍囪瘑锛�1.on+(榛樿) 2.evoyo
+ */
+-(void)setRequestHttpsHostAndPlatform:(NSString *) requestHttpsHost platform:(int)platform homeId:(NSString *)homeId{
+ [[GlobalKit shareKit] setGlobalRequestHttpsHost:requestHttpsHost];
+ [[GlobalKit shareKit] setHdlPlatform:platform];
+ [[GlobalKit shareKit] setHdlHomeId:homeId];
+}
+
+//鑾峰彇褰撳墠灞忓箷鏄剧ず鐨剉iewcontroller (杩欓噷闈㈣幏鍙栫殑鐩稿綋浜巖ootViewController)
+-(UINavigationController *)getCurrentVC
+{
+ UIWindow * window = [[UIApplication sharedApplication] keyWindow];
+ if (window.windowLevel != UIWindowLevelNormal)
+ {
+ NSArray *windows = [[UIApplication sharedApplication] windows];
+ for(UIWindow * tmpWin in windows)
+ {
+ if (tmpWin.windowLevel == UIWindowLevelNormal)
+ {
+ window = tmpWin;
+ break;
+ }
+ }
+ }
+
+ return (UINavigationController *)window.rootViewController;
+}
+
+
+/**
+ 鐩存帴璺宠浆鍒拌悿鐭虫憚鍍忓ご鍒楄〃
+ */
+-(void)go2EZvizMonitor
+{
+// [GlobalKit shareKit].deviceType=HDLEZDeviceType_Default;
+// // NSLog(@"go2EZvizMonitor");
+// //鑾峰彇EZMain鐨剆troyboard鏂囦欢
+// UIStoryboard *ezMainStoryboard = [UIStoryboard storyboardWithName:@"EZMain" bundle:nil];
+// //鑾峰彇EZMain.storyboard鐨勫疄渚媀iewController--鑾峰彇鎽勫儚澶村垪琛�
+// EZDeviceTableViewController *instanceVC = [ezMainStoryboard instantiateViewControllerWithIdentifier:@"EZCameraList"];
+// //push鎽勫儚澶村垪琛ㄧ殑viewController
+// [[self getCurrentVC] setNavigationBarHidden:NO];
+// // NSLog(@"willpush********");
+// [[self getCurrentVC] pushViewController:instanceVC animated:YES];
+// // NSLog(@"had pushed********");
+ [self toEZDeviceListViewWithFilterTypes:@[@""]];
+}
+
+/**
+ 鐩存帴璺宠浆鍒拌悿鐭虫憚鍍忓ご鍒楄〃(绛涙帀闂ㄩ攣璁惧)
+ @param filterTepes 杩囨护鍨嬪彿鏁扮粍
+ */
+- (void)toEZDeviceListViewWithFilterTypes:(NSArray*)filterTepes{
+ [GlobalKit shareKit].deviceType=HDLEZDeviceType_Default;
+ //鑾峰彇EZMain鐨剆troyboard鏂囦欢
+ UIStoryboard *ezMainStoryboard = [UIStoryboard storyboardWithName:@"EZMain" bundle:nil];
+ //鑾峰彇EZMain.storyboard鐨勫疄渚媀iewController--鑾峰彇鎽勫儚澶村垪琛�
+ EZDeviceTableViewController *instanceVC = [ezMainStoryboard instantiateViewControllerWithIdentifier:@"EZCameraList"];
+ instanceVC.filterTypes=filterTepes;
+ //push鎽勫儚澶村垪琛ㄧ殑viewController
+ [[self getCurrentVC] setNavigationBarHidden:NO];
+ [[self getCurrentVC] pushViewController:instanceVC animated:YES];
+}
+
+/**
+ 璺宠浆娣诲姞娣诲姞璁惧
+ */
+-(void)addEzvizMonitor
+{
+// // NSLog(@"娣诲姞鎽勫儚澶�");
+// if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) {
+// UIStoryboard *addDeviceStoryBoard = [UIStoryboard storyboardWithName:@"AddDevice" bundle:nil];
+// EZAddByQRCodeViewController *rootViewController = [addDeviceStoryBoard instantiateViewControllerWithIdentifier:@"AddByQRCode"];
+// [[self getCurrentVC] setNavigationBarHidden:NO];
+// [[self getCurrentVC] pushViewController:rootViewController animated:YES];
+// } else {
+// // [UIView dd_showMessage:@"iOS 7.0浠ヤ笅鎵爜鍔熻兘璇疯嚜琛屽疄鐜�"];
+// NSLog(@"iOS 7.0浠ヤ笅鎵爜鍔熻兘璇疯嚜琛屽疄鐜�");
+// }
+ [self addEzvizMonitorWithDeviceType:@""];
+}
+
+/**
+ 璺宠浆娣诲姞娣诲姞璁惧
+ @param deviceType 璁惧绫诲瀷
+ */
+- (void)addEzvizMonitorWithDeviceType:(NSString *)deviceType{
+ HDLEZDeviceType type=[deviceType isEqualToString:HDLEZ_DOOR_SPK] ? HDLEZDeviceType_Door : HDLEZDeviceType_Default;
+ // NSLog(@"娣诲姞鎽勫儚澶�");
+ if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) {
+ UIStoryboard *addDeviceStoryBoard = [UIStoryboard storyboardWithName:@"AddDevice" bundle:nil];
+ EZAddByQRCodeViewController *rootViewController = [addDeviceStoryBoard instantiateViewControllerWithIdentifier:@"AddByQRCode"];
+ rootViewController.deviceType=type;
+ [[self getCurrentVC] setNavigationBarHidden:NO];
+ [[self getCurrentVC] pushViewController:rootViewController animated:YES];
+ } else {
+ // [UIView dd_showMessage:@"iOS 7.0浠ヤ笅鎵爜鍔熻兘璇疯嚜琛屽疄鐜�"];
+ NSLog(@"iOS 7.0浠ヤ笅鎵爜鍔熻兘璇疯嚜琛屽疄鐜�");
+ }
+}
+
+/**
+ 鏌ョ湅瑙嗛鐩戞帶鐩存挱
+ */
+-(void)Play:(EZDeviceInfo*)deviceInfo
+{
+ [GlobalKit shareKit].deviceType=HDLEZDeviceType_Default;
+ UIStoryboard *addDeviceStoryBoard = [UIStoryboard storyboardWithName:@"EZMain" bundle:nil];
+ EZLivePlayViewController *rootViewController = [addDeviceStoryBoard instantiateViewControllerWithIdentifier:@"EZLivePlayViewController"];
+ // NSLog(@"play--iphone--rootViewController");
+ rootViewController.deviceInfo=(EZDeviceInfo *)deviceInfo;
+ NSLog(@"play--iphone--deviceName -%@",rootViewController.deviceInfo.deviceName);
+// rootViewController.cameraIndex=0;
+ [[self getCurrentVC] setNavigationBarHidden:NO];
+ [[self getCurrentVC] pushViewController:rootViewController animated:YES];
+
+
+}
+
+/// 鎸囧畾搴忓垪鍙锋挱鏀�
+/// @param deviceSerial 搴忓垪鍙�
+-(void)PlayWithDeviceSerial:(NSString *)deviceSerial{
+ //鑾峰彇璁惧鍒楄〃鎺ュ彛
+ [EZOpenSDK getDeviceInfo:deviceSerial completion:^(EZDeviceInfo *deviceInfo, NSError *error) {
+ if(error)
+ {
+ NSLog(@"EZ 鏌ヨ璁惧淇℃伅澶辫触");
+ return;
+ }
+ if (deviceInfo) {
+ [self Play:deviceInfo];
+ }
+ }];
+}
+
+/**
+ 鏍规嵁搴忓垪鍙疯繘鍏ラ棬閿佽棰�
+ @param deviceSerial 搴忓垪鍙�
+ @param deviceId 璁惧id
+ @param deviceType 璁惧spk(鐢ㄤ簬鍖哄垎鏄惁涓洪棬閿�)
+ */
+-(void)PlayWithDeviceSerial:(NSString *)deviceSerial deviceId:(NSString*)deviceId deviceType:(NSString *)deviceType{
+ [GlobalKit shareKit].deviceType=[deviceType isEqualToString:HDLEZ_DOOR_SPK] ? HDLEZDeviceType_Door : HDLEZDeviceType_Default;
+ UIStoryboard *ezMainStoryBoard = [UIStoryboard storyboardWithName:@"EZMain" bundle:nil];
+ EZLivePlayViewController *vc = [ezMainStoryBoard instantiateViewControllerWithIdentifier:@"EZLivePlayViewController"];
+ vc.deviceId=deviceId;
+ vc.deviceSerial=deviceSerial;
+ [[self getCurrentVC] setNavigationBarHidden:NO];
+ [[self getCurrentVC] pushViewController:vc animated:YES];
+}
+
+/**
+ 鎵撳紑鎽勫儚澶磋缃〉闈�
+ */
+-(void)setting:(EZDeviceInfo*)deviceInfo
+{
+ UIStoryboard *settingStoryBoard=[UIStoryboard storyboardWithName:@"EZMain" bundle:nil];
+ EZSettingViewController *settingVC=[settingStoryBoard instantiateViewControllerWithIdentifier:@"EZSettingViewController"];
+ settingVC.deviceInfo=(EZDeviceInfo *)deviceInfo;
+ [[self getCurrentVC] setNavigationBarHidden:NO];
+ [[self getCurrentVC] pushViewController:settingVC animated:YES];
+}
+
+/**
+ 鍥炴斁鎾斁鍘嗗彶
+ */
+-(void)playBackVideo:(EZDeviceInfo*)deviceInfo
+{
+ UIStoryboard *playBackStoryBoard=[UIStoryboard storyboardWithName:@"EZMain" bundle:nil];
+ EZPlaybackViewController *playBackVC=[playBackStoryBoard instantiateViewControllerWithIdentifier:@"EZPlaybackViewController"];
+ playBackVC.deviceInfo=(EZDeviceInfo *)deviceInfo;
+ [[self getCurrentVC] setNavigationBarHidden:NO];
+ [[self getCurrentVC] pushViewController:playBackVC animated:YES];
+}
+
+/**涓存椂瀵嗙爜椤�
+ @param deviceId 璁惧id
+ */
+- (void)toTemPassView:(NSString*)deviceId{
+ HDLEZVisitorRecordViewController *vc=[[HDLEZVisitorRecordViewController alloc] init];
+ vc.deviceId=deviceId;
+ [[self getCurrentVC] setNavigationBarHidden:YES];
+ [[self getCurrentVC] pushViewController:vc animated:YES];
+}
+
+/**璁惧鍘嗗彶璁板綍椤�
+ @param deviceId 璁惧id
+ */
+- (void)toDeviceMsgListView:(NSString*)deviceId{
+ HDLEZDeviceMsgListViewController *vc=[[HDLEZDeviceMsgListViewController alloc] init];
+ vc.deviceId=deviceId;
+ [[self getCurrentVC] setNavigationBarHidden:YES];
+ [[self getCurrentVC] pushViewController:vc animated:YES];
+
+}
+
+////
+//-(void)goToEZMessagePhotoVC:(EZAlarmInfo*)alarmInfo{
+// UIStoryboard *addDeviceStoryBoard = [UIStoryboard storyboardWithName:@"EZMain" bundle:nil];
+// EZMessagePhotoViewController *rootViewController = [addDeviceStoryBoard instantiateViewControllerWithIdentifier:@"EZMessagePhotoViewController"];
+// // NSLog(@"play--iphone--rootViewController");
+// rootViewController.info = alarmInfo;
+//// NSLog(@"play--iphone--deviceName -%@",rootViewController.deviceInfo.deviceName);
+//// rootViewController.cameraIndex=0;
+// [[self getCurrentVC] setNavigationBarHidden:NO];
+// [[self getCurrentVC] pushViewController:rootViewController animated:YES];
+//}
//+(void)MonitorPushMessage:(NSString *)MonitorType ID:(NSString *)ID
//{
// [CommonList login];
@@ -122,68 +360,6 @@
// return ICommons;
//}
-//鑾峰彇褰撳墠灞忓箷鏄剧ず鐨剉iewcontroller (杩欓噷闈㈣幏鍙栫殑鐩稿綋浜巖ootViewController)
-+(UINavigationController *)getCurrentVC
-{
- UIWindow * window = [[UIApplication sharedApplication] keyWindow];
- if (window.windowLevel != UIWindowLevelNormal)
- {
- NSArray *windows = [[UIApplication sharedApplication] windows];
- for(UIWindow * tmpWin in windows)
- {
- if (tmpWin.windowLevel == UIWindowLevelNormal)
- {
- window = tmpWin;
- break;
- }
- }
- }
-
- return (UINavigationController *)window.rootViewController;
-}
-
-//+(void)login
-//{
-// if ([GlobalKit shareKit].accessToken)
-// {
-// [EZOPENSDK setAccessToken:[GlobalKit shareKit].accessToken];
-// NSLog(@"login---1");
-// }
-// else
-// {
-// [EZOPENSDK openLoginPage:^(EZAccessToken *accessToken) {
-// [[GlobalKit shareKit] setAccessToken:accessToken.accessToken];
-// [EZOPENSDK setAccessToken:accessToken.accessToken];
-// NSLog(@"login---2");
-// }];
-// }
-//}
-
-+(void)go2EZvizMonitor
-{
- NSLog(@"go2EZvizMonitor");
-// if (isPad) {
-// //鑾峰彇EZMain鐨剆troyboard鏂囦欢
-// UIStoryboard *ezMainStoryboard = [UIStoryboard storyboardWithName:@"EZMainForIPad" bundle:nil];
-// //鑾峰彇EZMain.storyboard鐨勫疄渚媀iewController--鑾峰彇鎽勫儚澶村垪琛�
-// EZDeviceTableViewController *instanceVC = [ezMainStoryboard instantiateViewControllerWithIdentifier:@"EZCameraList"];
-// //push鎽勫儚澶村垪琛ㄧ殑viewController
-// [[self getCurrentVC] setNavigationBarHidden:NO];
-// [[self getCurrentVC] pushViewController:instanceVC animated:YES];
-// }else{
-
- //鑾峰彇EZMain鐨剆troyboard鏂囦欢
- UIStoryboard *ezMainStoryboard = [UIStoryboard storyboardWithName:@"EZMain" bundle:nil];
- //鑾峰彇EZMain.storyboard鐨勫疄渚媀iewController--鑾峰彇鎽勫儚澶村垪琛�
- EZDeviceTableViewController *instanceVC = [ezMainStoryboard instantiateViewControllerWithIdentifier:@"EZCameraList"];
- //push鎽勫儚澶村垪琛ㄧ殑viewController
- [[self getCurrentVC] setNavigationBarHidden:NO];
- NSLog(@"willpush********");
- [[self getCurrentVC] pushViewController:instanceVC animated:YES];
- NSLog(@"had pushed********");
-// }
-
-}
//+(NSArray *)getDeviceList:(int)pageIndex :(int)pageSize
//{
@@ -221,87 +397,23 @@
// return deviceListaArray ;
//}
-+(void)addEzvizMonitor
-{
- NSLog(@"娣诲姞鎽勫儚澶�");
- if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) {
- UIStoryboard *addDeviceStoryBoard = [UIStoryboard storyboardWithName:@"AddDevice" bundle:nil];
- EZAddByQRCodeViewController *rootViewController = [addDeviceStoryBoard instantiateViewControllerWithIdentifier:@"AddByQRCode"];
- [[self getCurrentVC] setNavigationBarHidden:NO];
- [[self getCurrentVC] pushViewController:rootViewController animated:YES];
- } else {
-// [UIView dd_showMessage:@"iOS 7.0浠ヤ笅鎵爜鍔熻兘璇疯嚜琛屽疄鐜�"];
- NSLog(@"iOS 7.0浠ヤ笅鎵爜鍔熻兘璇疯嚜琛屽疄鐜�");
- }
-
-}
-
-+(void)Play:(NSObject*)deviceInfo
-{
-// if (isPad) {
-// NSLog(@"play--ipad--");
-// UIStoryboard *addDeviceStoryBoard = [UIStoryboard storyboardWithName:@"EZMainForIPad" bundle:nil];
-// EZLivePlayViewController *rootViewController = [addDeviceStoryBoard instantiateViewControllerWithIdentifier:@"EZLivePlayViewController"];
-// rootViewController.deviceInfo=(EZDeviceInfo *)deviceInfo;
-// rootViewController.cameraIndex=0;
-// [[self getCurrentVC] setNavigationBarHidden:NO];
-// [[self getCurrentVC] pushViewController:rootViewController animated:YES];
-// }else{
- NSLog(@"play--iphone--1225");
- UIStoryboard *addDeviceStoryBoard = [UIStoryboard storyboardWithName:@"EZMain" bundle:nil];
- EZLivePlayViewController *rootViewController = [addDeviceStoryBoard instantiateViewControllerWithIdentifier:@"EZLivePlayViewController"];
- NSLog(@"play--iphone--rootViewController");
- rootViewController.deviceInfo=(EZDeviceInfo *)deviceInfo;
- NSLog(@"play--iphone--deviceName -%@",rootViewController.deviceInfo.deviceName);
-// rootViewController.cameraIndex=0;
- [[self getCurrentVC] setNavigationBarHidden:NO];
- [[self getCurrentVC] pushViewController:rootViewController animated:YES];
+//+(void)login
+//{
+// if ([GlobalKit shareKit].accessToken)
+// {
+// [EZOPENSDK setAccessToken:[GlobalKit shareKit].accessToken];
+// NSLog(@"login---1");
// }
-
-
-}
-
-
-+(void)setting:(NSObject*)deviceInfo
-{
-// if (isPad) {
-// UIStoryboard *settingStoryBoard=[UIStoryboard storyboardWithName:@"EZMainForIPad" bundle:nil];
-// EZSettingViewController *settingVC=[settingStoryBoard instantiateViewControllerWithIdentifier:@"EZSettingViewController"];
-// settingVC.deviceInfo=(EZDeviceInfo *)deviceInfo;
-// [[self getCurrentVC] setNavigationBarHidden:NO];
-// [[self getCurrentVC] pushViewController:settingVC animated:YES];
-// }else{
-
- UIStoryboard *settingStoryBoard=[UIStoryboard storyboardWithName:@"EZMain" bundle:nil];
- EZSettingViewController *settingVC=[settingStoryBoard instantiateViewControllerWithIdentifier:@"EZSettingViewController"];
- settingVC.deviceInfo=(EZDeviceInfo *)deviceInfo;
- [[self getCurrentVC] setNavigationBarHidden:NO];
- [[self getCurrentVC] pushViewController:settingVC animated:YES];
+// else
+// {
+// [EZOPENSDK openLoginPage:^(EZAccessToken *accessToken) {
+// [[GlobalKit shareKit] setAccessToken:accessToken.accessToken];
+// [EZOPENSDK setAccessToken:accessToken.accessToken];
+// NSLog(@"login---2");
+// }];
// }
+//}
-
-}
-
-+(void)playBackVideo:(NSObject*)deviceInfo
-{
-
-// if (isPad) {
-// UIStoryboard *playBackStoryBoard=[UIStoryboard storyboardWithName:@"EZMainForIPad" bundle:nil];
-// EZPlaybackViewController *playBackVC=[playBackStoryBoard instantiateViewControllerWithIdentifier:@"EZPlaybackViewController"];
-// playBackVC.deviceInfo=(EZDeviceInfo *)deviceInfo;
-// playBackVC.cameraIndex=0;
-// [[self getCurrentVC] setNavigationBarHidden:NO];
-// [[self getCurrentVC] pushViewController:playBackVC animated:YES];
-// }else{
- UIStoryboard *playBackStoryBoard=[UIStoryboard storyboardWithName:@"EZMain" bundle:nil];
- EZPlaybackViewController *playBackVC=[playBackStoryBoard instantiateViewControllerWithIdentifier:@"EZPlaybackViewController"];
- playBackVC.deviceInfo=(EZDeviceInfo *)deviceInfo;
-// playBackVC.cameraIndex=0;
- [[self getCurrentVC] setNavigationBarHidden:NO];
- [[self getCurrentVC] pushViewController:playBackVC animated:YES];
-// }
-
-}
@end
--
Gitblit v1.8.0