From 8bfc1215384797f9b709ee06bc721d472182f15b Mon Sep 17 00:00:00 2001
From: Davin <591807572@qq.com>
Date: 星期三, 20 十一月 2024 15:11:44 +0800
Subject: [PATCH] feature 萤石摄像头翻转
---
EZSDK.IOS/EZSDK.IOS/EZSDK.IOS.csproj | 4
EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_list_next@3x.png | 0
EZSDK/EZSDK/EZ/Global/EZHttpUtil.h | 18 ++
EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZMirrorFlipView.m | 121 +++++++++++++++
EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_no_answer@3x.png | 0
EZDemo/HDLEZDemo/HDLEZDemo/libEZSDK.a | 0
EZSDK/EZSDK.xcodeproj/project.pbxproj | 8
EZSDK/EZSDK/EZSDK.h | 7
EZDemo/HDLEZDemo/HDLEZDemo/resources/en.lproj/Localizable.strings | 3
EZSDK.IOS/EZSDK.IOS/ApiDefinition.cs | 9
EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_answer@2x.png | 0
EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZMirrorFlipView.h | 23 ++
EZSDK.IOS/EZSDK.IOS/Library/libEZSDK.a | 0
EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_answer@3x.png | 0
EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m | 57 +++++++
EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard | 4
EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings | 3
EZSDK.IOS/EZSDK.IOS/ApiDefinitions.cs | 115 ++++++++++++++
EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_list_next@2x.png | 0
EZSDK/EZSDK/EZ/Global/EZHttpUtil.m | 71 ++++++++
EZSDK/EZSDK/EZSDK.m | 10 +
EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_no_answer@2x.png | 0
EZDemo/HDLEZDemo/HDLEZDemo/AppDelegate.m | 6
EZSDK/EZSDK/EZ/Global/GlobalKit.h | 3
24 files changed, 448 insertions(+), 14 deletions(-)
diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/AppDelegate.m b/EZDemo/HDLEZDemo/HDLEZDemo/AppDelegate.m
index f75fbba..0d1a8c2 100644
--- a/EZDemo/HDLEZDemo/HDLEZDemo/AppDelegate.m
+++ b/EZDemo/HDLEZDemo/HDLEZDemo/AppDelegate.m
@@ -25,10 +25,10 @@
// Override point for customization after application launch.
[[EZSDK sharedInstance] initLibWithAppKey:@"1aa98a90489b4838b966b57018b4b04b" globalAppKey:@"1aa98a90489b4838b966b57018b4b04b"];
// [[EZSDK sharedInstance] initLibWithAppKey:@"941b1b72b6294998acfd36c14931b675" globalAppKey:@"941b1b72b6294998acfd36c14931b675"];
- [[EZSDK sharedInstance] setHDlAccessToken:@"Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJqdGkiOiI3ZWRmMWFkMTQzN2Y0NjI0YTQxMWRiMDRmODVjNTRiZSIsImNvbXBhbnlJZCI6IjAiLCJyb2xlIjoiIiwiaGVhZGVyUHJlZml4IjoiQmVhcmVyICIsInRlbmFudElkIjoiMjAiLCJ1c2VyVHlwZSI6IlVTRVJfQyIsInRva2VuVHlwZSI6ImFjY2Vzc190b2tlbiIsInVzZXJOYW1lIjoiS2FlZGUiLCJ1c2VyRGF0YVJpZ2h0IjoiMSIsIm9wZW5BcHBsaWNhdGlvbklkIjoiMCIsInVzZXJJZCI6IjEzNTAyODA5OTU5OTg4NjMzNjEiLCJleHAiOjE3MDU1NTQ5NjMsIm5iZiI6MTcwNTU0Nzc2M30.bkW07D2YnCMFw4MBvsDc0OqZJbB-w-NV9zVLJGyjBEU9ixp3TueFj76fPPUDn1XfMzigzXb74oPcFq9lIDkNkIBvSCM6YQttN9X4Y3O5JWcdMD5VQZBrxgLfzDdCjFZ2nwR5SlaixwEgYASFh_9jaBUqjyXyJ1pKFlCEwB2jVU0" refreshToken:@"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJqdGkiOiJmNzA3OGQ0NTdlYmI0OWQ3YWJmZWIwMzZlNWYzMWQwMSIsImNvbXBhbnlJZCI6IjAiLCJoZWFkZXJQcmVmaXgiOiJCZWFyZXIgIiwidGVuYW50SWQiOiIyMCIsInRva2VuVHlwZSI6InJlZnJlc2hfdG9rZW4iLCJvcGVuQXBwbGljYXRpb25JZCI6IjAiLCJ1c2VySWQiOiIxMzUwMjgwOTk1OTk4ODYzMzYxIiwiZXhwIjoxNzA2MTUyNTYzLCJuYmYiOjE3MDU1NDc3NjN9.j7QjPk7vtsESSUHLq9t7FBUpCxfb63rMihs3yGF4Bx38iEqzSTzRRrJuZdFQC_oyJeBqbzXR5Wp7NFLdwhAIu_MHVJFDcm_I7e9NFKtdqMKdVXy_XgB8xe5Nr8jny2XtYBN4XfIhvCXLj8_O9_l498_lZm0ucfJOfS58oiGTjxo"];
- [[EZSDK sharedInstance] setRequestHttpsHostAndPlatform:@"https://test-gz.hdlcontrol.com" platform:1 homeId:@"1674604669353717761"];
+ [[EZSDK sharedInstance] setHDlAccessToken:@"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJqdGkiOiIxODZlNWIxOTlhMzI0NzdhOTg0MTc1NWFiZDgwNjhiYSIsImNvbXBhbnlJZCI6IjAiLCJyb2xlIjoiIiwiaGVhZGVyUHJlZml4IjoiQmVhcmVyICIsInRlbmFudElkIjoiMjAiLCJ1c2VyVHlwZSI6IlVTRVJfQyIsInRva2VuVHlwZSI6ImFjY2Vzc190b2tlbiIsInVzZXJOYW1lIjoi54eV5ZCbIiwidXNlckRhdGFSaWdodCI6IjEiLCJvcGVuQXBwbGljYXRpb25JZCI6IjAiLCJ1c2VySWQiOiIxNjU2OTE3NDUxMjgxNTM0OTc3IiwiZXhwIjoxNzMwODkxMzczLCJuYmYiOjE3MzA4ODQxNzN9.TYaCAGVQ1c427INqyRLTM9hEpBpIdxm6mj6P2e4DlrvQ-jNjfP7sEphx3Bj7ZH7_lUIenwnCrO_crxIwgvzW3xjCv0D3qzeCbzbf5ynT0sYHIT2hWTJl4tdUYAK-BsEhf7Sfj9se0LzSmDEs2Sbmrm6BoUsViIbS8uVXOpZnPyU" refreshToken:@"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJqdGkiOiIzYTQ2MDgxZDI4YWY0MjlmYmUzNTAxOWFlZTgwYmM5MCIsImNvbXBhbnlJZCI6IjAiLCJoZWFkZXJQcmVmaXgiOiJCZWFyZXIgIiwidGVuYW50SWQiOiIyMCIsInRva2VuVHlwZSI6InJlZnJlc2hfdG9rZW4iLCJvcGVuQXBwbGljYXRpb25JZCI6IjAiLCJ1c2VySWQiOiIxNjU2OTE3NDUxMjgxNTM0OTc3IiwiZXhwIjoxNzMxNDg4OTczLCJuYmYiOjE3MzA4ODQxNzN9.RDohTRVczdpxb4Pj9kvbEwHd2AUbYK0jps2kQk-WiVUE1HePoq-HjoYdYTwOw9CLvMuIUdDTru4AwQNtYgT9gF5jJEb7ePXrA8tStNvTyxu5FHMxaPGXY74UGg2H29_N4PEctBjb5A7z4NwJ36RajXsNyJweFLpZxX6QKXtrsbY"];
+ [[EZSDK sharedInstance] setRequestHttpsHostAndPlatform:@"https://test-gz.hdlcontrol.com" platform:1 homeId:@"1719997413437546497"];
// [[EZSDK sharedInstance] setRequestHttpsHostAndPlatform:@"https://nearest.hdlcontrol.com" platform:1 homeId:@"1546324800135176193"];
- [[EZSDK sharedInstance] setEZAccessToken:@"ra.ag6fktccckc2gxl84mu40e1o417agh8u-231ke8chyz-0vkjf4x-nqw225sxi"];
+ [[EZSDK sharedInstance] setEZAccessToken:@"ra.cej51msz2lc9bd85dcjjh6lo3a1nvhd7-64dvf8rolg-1brlg88-nrsym3uwr"];
// [[EZSDK sharedInstance] setEZAccessToken:@"ra.3hkirwcadrpfmaa89wep99io3wto4yds-7zptb10d20-1wxg4f3-ygiojudee"];
diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard b/EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard
index 9e5e029..2223c6b 100644
--- a/EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard
+++ b/EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="21701" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" colorMatched="YES" initialViewController="tPl-Go-Tmu">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="22155" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" colorMatched="YES" initialViewController="tPl-Go-Tmu">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<deployment version="4352" identifier="iOS"/>
- <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21679"/>
+ <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22131"/>
<capability name="System colors in document resources" minToolsVersion="11.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/libEZSDK.a b/EZDemo/HDLEZDemo/HDLEZDemo/libEZSDK.a
index 32b4855..6c21576 100644
--- a/EZDemo/HDLEZDemo/HDLEZDemo/libEZSDK.a
+++ b/EZDemo/HDLEZDemo/HDLEZDemo/libEZSDK.a
Binary files differ
diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/resources/en.lproj/Localizable.strings b/EZDemo/HDLEZDemo/HDLEZDemo/resources/en.lproj/Localizable.strings
index 9c7767d..004ac0d 100644
--- a/EZDemo/HDLEZDemo/HDLEZDemo/resources/en.lproj/Localizable.strings
+++ b/EZDemo/HDLEZDemo/HDLEZDemo/resources/en.lproj/Localizable.strings
@@ -7,6 +7,9 @@
"complete"="Completed";
"push_slider_msg"="Handle the notification by yourself.";
+"api_mirror_flip"="Mirror flip";
+"api_mirror_flip_trip"="The video screen will flip, suitable for inversion scenes";
+"api_mirror_flip_success"="Mirror flip successful";
"api_mirror_test"="Image Flipping API Test";
"api_getting_device_list"="Getting the device list...";
"api_get_device_list_fail"="Getting device list failed.";
diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings b/EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings
index c7ecd08..45dbf02 100644
--- a/EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings
+++ b/EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings
@@ -7,6 +7,9 @@
"complete"="瀹屾垚";
"push_slider_msg"="浣犻渶鑷澶勭悊婊戝姩杩涘叆鐨勬帹閫佹秷鎭�";
+"api_mirror_flip"="鐢婚潰缈昏浆";
+"api_mirror_flip_trip"="鐐瑰嚮鍚庤棰戠敾闈細缈昏浆灞曠ず锛岄�傚悎鍊掕鐨勫満鏅�";
+"api_mirror_flip_success"="鐢婚潰缈昏浆鎴愬姛";
"api_mirror_test"="闀滃儚缈昏浆鎺ュ彛娴嬭瘯";
"api_getting_device_list"="姝e湪鑾峰彇鐢ㄦ埛璁惧鍒楄〃...";
"api_get_device_list_fail"="璁惧鍒楄〃鑾峰彇澶辫触";
diff --git a/EZSDK.IOS/EZSDK.IOS/ApiDefinition.cs b/EZSDK.IOS/EZSDK.IOS/ApiDefinition.cs
index 9219806..dd06179 100644
--- a/EZSDK.IOS/EZSDK.IOS/ApiDefinition.cs
+++ b/EZSDK.IOS/EZSDK.IOS/ApiDefinition.cs
@@ -47,8 +47,13 @@
[Export ("setHDlAccessToken:refreshToken:")]
void SetHDlAccessToken (string accessToken, string refreshToken);
- // -(void)setRequestHttpsHostAndPlatform:(NSString *)requestHttpsHost platform:(int)platform homeId:(NSString *)homeId;
- [Export ("setRequestHttpsHostAndPlatform:platform:homeId:")]
+
+ // -(void)configHDLServerAppKey:(NSString *)appKey appSecret:(NSString *)appSecret;
+ [Export("configHDLServerAppKey:appSecret:")]
+ void ConfigHDLServerAppKey(string appKey, string appSecret);
+
+ // -(void)setRequestHttpsHostAndPlatform:(NSString *)requestHttpsHost platform:(int)platform homeId:(NSString *)homeId;
+ [Export ("setRequestHttpsHostAndPlatform:platform:homeId:")]
void SetRequestHttpsHostAndPlatform (string requestHttpsHost, int platform, string homeId);
// -(void)go2EZvizMonitor;
diff --git a/EZSDK.IOS/EZSDK.IOS/ApiDefinitions.cs b/EZSDK.IOS/EZSDK.IOS/ApiDefinitions.cs
new file mode 100644
index 0000000..17ced84
--- /dev/null
+++ b/EZSDK.IOS/EZSDK.IOS/ApiDefinitions.cs
@@ -0,0 +1,115 @@
+using Foundation;
+using ObjCRuntime;
+
+namespace EZSDK.IOS
+{
+ // @protocol EZSDKDelegate <NSObject>
+ [Protocol, Model (AutoGeneratedName = true)]
+ [BaseType (typeof(NSObject))]
+ interface EZSDKDelegate
+ {
+ // @required -(void)addDeviceSuccessed:(NSString *)deviceSerial;
+ [Abstract]
+ [Export ("addDeviceSuccessed:")]
+ void AddDeviceSuccessed (string deviceSerial);
+ }
+
+ // @interface EZSDK : NSObject
+ [BaseType (typeof(NSObject))]
+ interface EZSDK
+ {
+ [Wrap ("WeakDelegate")]
+ EZSDKDelegate Delegate { get; set; }
+
+ // @property (nonatomic, weak) id<EZSDKDelegate> delegate;
+ [NullAllowed, Export ("delegate", ArgumentSemantic.Weak)]
+ NSObject WeakDelegate { get; set; }
+
+ // @property (nonatomic, strong) NSArray * connectTipModels;
+ [Export ("connectTipModels", ArgumentSemantic.Strong)]
+ [Verify (StronglyTypedNSArray)]
+ NSObject[] ConnectTipModels { get; set; }
+
+ // +(instancetype)sharedInstance;
+ [Static]
+ [Export ("sharedInstance")]
+ EZSDK SharedInstance ();
+
+ // -(BOOL)initLibWithAppKey:(NSString *)appKey globalAppKey:(NSString *)globalAppKey;
+ [Export ("initLibWithAppKey:globalAppKey:")]
+ bool InitLibWithAppKey (string appKey, string globalAppKey);
+
+ // -(void)setEZAccessToken:(NSString *)accessToken;
+ [Export ("setEZAccessToken:")]
+ void SetEZAccessToken (string accessToken);
+
+ // -(void)setHDlAccessToken:(NSString *)accessToken refreshToken:(NSString *)refreshToken;
+ [Export ("setHDlAccessToken:refreshToken:")]
+ void SetHDlAccessToken (string accessToken, string refreshToken);
+
+ // -(void)configHDLServerAppKey:(NSString *)appKey appSecret:(NSString *)appSecret;
+ [Export ("configHDLServerAppKey:appSecret:")]
+ void ConfigHDLServerAppKey (string appKey, string appSecret);
+
+ // -(void)setRequestHttpsHostAndPlatform:(NSString *)requestHttpsHost platform:(int)platform homeId:(NSString *)homeId;
+ [Export ("setRequestHttpsHostAndPlatform:platform:homeId:")]
+ void SetRequestHttpsHostAndPlatform (string requestHttpsHost, int platform, string homeId);
+
+ // -(void)go2EZvizMonitor;
+ [Export ("go2EZvizMonitor")]
+ void Go2EZvizMonitor ();
+
+ // -(void)toEZDeviceListViewWithFilterTypes:(NSArray *)filterTepes;
+ [Export ("toEZDeviceListViewWithFilterTypes:")]
+ [Verify (StronglyTypedNSArray)]
+ void ToEZDeviceListViewWithFilterTypes (NSObject[] filterTepes);
+
+ // -(void)addEzvizMonitor;
+ [Export ("addEzvizMonitor")]
+ void AddEzvizMonitor ();
+
+ // -(void)addEzvizMonitorWithDeviceType:(NSString *)deviceType;
+ [Export ("addEzvizMonitorWithDeviceType:")]
+ void AddEzvizMonitorWithDeviceType (string deviceType);
+
+ // -(void)Play:(id)deviceInfo;
+ [Export ("Play:")]
+ void Play (NSObject deviceInfo);
+
+ // -(void)Play:(id)deviceInfo messageId:(NSString *)msgId showCallout:(BOOL)isShow;
+ [Export ("Play:messageId:showCallout:")]
+ void Play (NSObject deviceInfo, string msgId, bool isShow);
+
+ // -(void)PlayWithDeviceSerial:(NSString *)deviceSerial;
+ [Export ("PlayWithDeviceSerial:")]
+ void PlayWithDeviceSerial (string deviceSerial);
+
+ // -(void)PlayWithDeviceSerial:(NSString *)deviceSerial msgId:(NSString *)msgId;
+ [Export ("PlayWithDeviceSerial:msgId:")]
+ void PlayWithDeviceSerial (string deviceSerial, string msgId);
+
+ // -(void)PlayWithDeviceSerial:(NSString *)deviceSerial deviceId:(NSString *)deviceId deviceType:(NSString *)deviceType;
+ [Export ("PlayWithDeviceSerial:deviceId:deviceType:")]
+ void PlayWithDeviceSerial (string deviceSerial, string deviceId, string deviceType);
+
+ // -(void)PlayWithDeviceSerial:(NSString *)deviceSerial deviceId:(NSString *)deviceId deviceType:(NSString *)deviceType msgId:(NSString *)msgId;
+ [Export ("PlayWithDeviceSerial:deviceId:deviceType:msgId:")]
+ void PlayWithDeviceSerial (string deviceSerial, string deviceId, string deviceType, string msgId);
+
+ // -(void)setting:(id)deviceInfo;
+ [Export ("setting:")]
+ void Setting (NSObject deviceInfo);
+
+ // -(void)playBackVideo:(id)deviceInfo;
+ [Export ("playBackVideo:")]
+ void PlayBackVideo (NSObject deviceInfo);
+
+ // -(void)toTemPassView:(NSString *)deviceId;
+ [Export ("toTemPassView:")]
+ void ToTemPassView (string deviceId);
+
+ // -(void)toDeviceMsgListView:(NSString *)deviceId;
+ [Export ("toDeviceMsgListView:")]
+ void ToDeviceMsgListView (string deviceId);
+ }
+}
diff --git a/EZSDK.IOS/EZSDK.IOS/EZSDK.IOS.csproj b/EZSDK.IOS/EZSDK.IOS/EZSDK.IOS.csproj
index 19b041b..c9c2243 100644
--- a/EZSDK.IOS/EZSDK.IOS/EZSDK.IOS.csproj
+++ b/EZSDK.IOS/EZSDK.IOS/EZSDK.IOS.csproj
@@ -108,6 +108,10 @@
<BundleResource Include="Resources\hdl_ez_cat_eyes_answer%403x.png" />
<BundleResource Include="Resources\hdl_ez_msg_placeholder%402x.png" />
<BundleResource Include="Resources\hdl_ez_msg_placeholder%403x.png" />
+ <BundleResource Include="Resources\hdl_ez_msg_no_answer%403x.png" />
+ <BundleResource Include="Resources\hdl_ez_msg_no_answer%402x.png" />
+ <BundleResource Include="Resources\hdl_ez_msg_answer%403x.png" />
+ <BundleResource Include="Resources\hdl_ez_msg_answer%402x.png" />
</ItemGroup>
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.ObjCBinding.CSharp.targets" />
</Project>
\ No newline at end of file
diff --git a/EZSDK.IOS/EZSDK.IOS/Library/libEZSDK.a b/EZSDK.IOS/EZSDK.IOS/Library/libEZSDK.a
index 726930b..5a8da80 100644
--- a/EZSDK.IOS/EZSDK.IOS/Library/libEZSDK.a
+++ b/EZSDK.IOS/EZSDK.IOS/Library/libEZSDK.a
Binary files differ
diff --git a/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_list_next@2x.png b/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_list_next@2x.png
index b2b29ec..0751cd0 100644
--- a/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_list_next@2x.png
+++ b/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_list_next@2x.png
Binary files differ
diff --git a/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_list_next@3x.png b/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_list_next@3x.png
index fac62dd..591dc92 100644
--- a/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_list_next@3x.png
+++ b/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_list_next@3x.png
Binary files differ
diff --git a/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_answer@2x.png b/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_answer@2x.png
new file mode 100644
index 0000000..554a2f7
--- /dev/null
+++ b/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_answer@2x.png
Binary files differ
diff --git a/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_answer@3x.png b/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_answer@3x.png
new file mode 100644
index 0000000..9ff9ac7
--- /dev/null
+++ b/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_answer@3x.png
Binary files differ
diff --git a/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_no_answer@2x.png b/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_no_answer@2x.png
new file mode 100644
index 0000000..e4b3f24
--- /dev/null
+++ b/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_no_answer@2x.png
Binary files differ
diff --git a/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_no_answer@3x.png b/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_no_answer@3x.png
new file mode 100644
index 0000000..f8c5716
--- /dev/null
+++ b/EZSDK.IOS/EZSDK.IOS/Resources/hdl_ez_msg_no_answer@3x.png
Binary files differ
diff --git a/EZSDK/EZSDK.xcodeproj/project.pbxproj b/EZSDK/EZSDK.xcodeproj/project.pbxproj
index 4933116..aa143ad 100644
--- a/EZSDK/EZSDK.xcodeproj/project.pbxproj
+++ b/EZSDK/EZSDK.xcodeproj/project.pbxproj
@@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
- objectVersion = 52;
+ objectVersion = 54;
objects = {
/* Begin PBXBuildFile section */
@@ -15,6 +15,7 @@
83879A8B2A7DE7FC00E10A81 /* HDLEZDetectionTypeCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 83879A8A2A7DE7FC00E10A81 /* HDLEZDetectionTypeCell.m */; };
83879A8E2A7DEEC500E10A81 /* HDLEZDetectionTypeModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 83879A8D2A7DEEC500E10A81 /* HDLEZDetectionTypeModel.m */; };
83D69FFA2A47D32A00871258 /* HDLEZVideoQualityBoxView.m in Sources */ = {isa = PBXBuildFile; fileRef = 83D69FF92A47D32A00871258 /* HDLEZVideoQualityBoxView.m */; };
+ 83DC3D952CDB5AEB00F9DDF7 /* HDLEZMirrorFlipView.m in Sources */ = {isa = PBXBuildFile; fileRef = 83DC3D942CDB5AEB00F9DDF7 /* HDLEZMirrorFlipView.m */; };
83EE503D2A41C9BA0006435D /* HDLEZOPButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 83EE503C2A41C9BA0006435D /* HDLEZOPButton.m */; };
AE31FE1F29CC2D2200678568 /* EZOpenSDKFramework.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AE31FE1E29CC2D2200678568 /* EZOpenSDKFramework.framework */; platformFilter = ios; };
AE5068D829B9DB5E009EA09A /* HDLEZTemInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = AE5068D729B9DB5E009EA09A /* HDLEZTemInfoModel.m */; };
@@ -209,6 +210,8 @@
83879A8D2A7DEEC500E10A81 /* HDLEZDetectionTypeModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = HDLEZDetectionTypeModel.m; sourceTree = "<group>"; };
83D69FF82A47D32A00871258 /* HDLEZVideoQualityBoxView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = HDLEZVideoQualityBoxView.h; sourceTree = "<group>"; };
83D69FF92A47D32A00871258 /* HDLEZVideoQualityBoxView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = HDLEZVideoQualityBoxView.m; sourceTree = "<group>"; };
+ 83DC3D932CDB5AEB00F9DDF7 /* HDLEZMirrorFlipView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = HDLEZMirrorFlipView.h; sourceTree = "<group>"; };
+ 83DC3D942CDB5AEB00F9DDF7 /* HDLEZMirrorFlipView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = HDLEZMirrorFlipView.m; sourceTree = "<group>"; };
83EE503B2A41C9BA0006435D /* HDLEZOPButton.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = HDLEZOPButton.h; sourceTree = "<group>"; };
83EE503C2A41C9BA0006435D /* HDLEZOPButton.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = HDLEZOPButton.m; sourceTree = "<group>"; };
AE31FE1E29CC2D2200678568 /* EZOpenSDKFramework.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = EZOpenSDKFramework.framework; sourceTree = "<group>"; };
@@ -709,6 +712,8 @@
83879A872A7DE49900E10A81 /* HDLEZDetectionTypeView.m */,
83879A892A7DE7FC00E10A81 /* HDLEZDetectionTypeCell.h */,
83879A8A2A7DE7FC00E10A81 /* HDLEZDetectionTypeCell.m */,
+ 83DC3D932CDB5AEB00F9DDF7 /* HDLEZMirrorFlipView.h */,
+ 83DC3D942CDB5AEB00F9DDF7 /* HDLEZMirrorFlipView.m */,
);
path = Views;
sourceTree = "<group>";
@@ -1514,6 +1519,7 @@
B9BC9A2325C0FFBD00C024FE /* EZMessageListViewController.m in Sources */,
B9BC99B725C0FFBD00C024FE /* MWZoomingScrollView.m in Sources */,
B9EA4E8A25C7E806000FFDA2 /* MJRefreshBackGifFooter.m in Sources */,
+ 83DC3D952CDB5AEB00F9DDF7 /* HDLEZMirrorFlipView.m in Sources */,
B9BC99B625C0FFBD00C024FE /* MWCaptionView.m in Sources */,
83879A852A7DE42900E10A81 /* HDLEZDetectionTypeViewController.m in Sources */,
B9BC9A0B25C0FFBD00C024FE /* EZDeviceUpgradeViewController.m in Sources */,
diff --git a/EZSDK/EZSDK/EZ/Global/EZHttpUtil.h b/EZSDK/EZSDK/EZ/Global/EZHttpUtil.h
index ad0c84e..be555ef 100644
--- a/EZSDK/EZSDK/EZ/Global/EZHttpUtil.h
+++ b/EZSDK/EZSDK/EZ/Global/EZHttpUtil.h
@@ -189,6 +189,24 @@
code:(NSString *)code
completion:(void (^)(ResponseData *responseData))completion;
+/**
+ * @since 鑾峰彇璁惧鑳藉姏闆�
+ * @param deviceSerial 璁惧搴忓垪鍙�
+ * @param completion 鍥炶皟block锛宔rror涓虹┖鏃惰〃绀烘垚鍔�
+ */
+- (void)getDeviceCapacity:(NSString *)deviceSerial
+ completion:(void (^)(ResponseData *responseData))completion;
+
+/**
+ * @since 璁剧疆璁惧浜戝彴闀滃儚
+ * @param deviceSerial 璁惧搴忓垪鍙�
+ * @param command 鍛戒护 0-涓婁笅锛�1-宸﹀彸锛�2-涓績
+ * @param completion 鍥炶皟block锛宔rror涓虹┖鏃惰〃绀烘垚鍔�
+ */
+- (void)setPtzMiroor:(NSString *)deviceSerial
+ command:(NSString *)command
+ completion:(void (^)(ResponseData *responseData))completion;
+
@end
NS_ASSUME_NONNULL_END
diff --git a/EZSDK/EZSDK/EZ/Global/EZHttpUtil.m b/EZSDK/EZSDK/EZ/Global/EZHttpUtil.m
index 94b201a..bf072a1 100644
--- a/EZSDK/EZSDK/EZ/Global/EZHttpUtil.m
+++ b/EZSDK/EZSDK/EZ/Global/EZHttpUtil.m
@@ -35,10 +35,12 @@
#define AOI_POST_EZ_UpdateAnswerStatus @"/home-wisdom/platform/yingshi/lock/updateAnswerStatus" // 鏇存敼闂ㄩ搩閫氳瘽鐘舵��(鎺ュ惉鍜屾湭鎺�)
#define API_POST_EZ_GetAiSupportList @"/home-wisdom/platform/yingshi/getAiSupportList"//鑾峰彇鎽勫儚澶存櫤鑳界畻娉曞垪琛ㄥ拰鐘舵��
#define API_POST_EZ_SetAiSupport @"/home-wisdom/platform/yingshi/setAiSupport"//璁剧疆鎽勫儚澶存櫤鑳界畻娉�
+#define API_POST_EZ_GetDeviceCapacity @"/home-wisdom/platform/yingshi/getDeviceCapacity"//鑾峰彇璁惧鑳藉姏闆�(鑾峰彇鎽勫儚澶村弽杞兘鍔�)
+#define API_POST_EZ_SetPtzMiroor @"/home-wisdom/platform/yingshi/setPtzMiroor"//璁剧疆璁惧浜戝彴闀滃儚(璁剧疆鎽勫儚澶村弽杞兘鍔�)
#pragma mark APP_KEY
-#define APP_KEY @"QWERREWQ"
-#define SECRET_KEY @"CPBUCTRLCPBUABCD"
+#define APP_KEY @"HDL-HOME-APP-TEST"
+#define SECRET_KEY @"WeJ8TY88vbakCcnvH8G1tDUqzLWY8yss"
#define TIME_OUT 30.0f
@@ -556,6 +558,57 @@
}];
}
+/**
+ * @since 鑾峰彇璁惧鑳藉姏闆�
+ * @param deviceSerial 璁惧搴忓垪鍙�
+ * @param completion 鍥炶皟block锛宔rror涓虹┖鏃惰〃绀烘垚鍔�
+ */
+- (void)getDeviceCapacity:(NSString *)deviceSerial
+ completion:(void (^)(ResponseData *responseData))completion {
+ //璁剧疆璇锋眰鍙傛暟
+ NSMutableDictionary *parameters = [NSMutableDictionary dictionary];
+ [parameters setValue:deviceSerial forKey:@"deviceSerial"];
+ [parameters setValue:@(1) forKey:@"platform"];
+ [parameters setValue:[GlobalKit shareKit].hdlHomeId forKey:@"homeId"];
+
+ parameters = [self GetSignRequestDictionary:parameters];
+
+ NSLog(@"鑾峰彇璁惧鑳藉姏闆嗗弬鏁帮細%@",parameters);
+
+ [self requestHttpsPost:API_POST_EZ_GetDeviceCapacity parameters:parameters completion:^(ResponseData *responseData) {
+ if (completion) {
+ completion (responseData);
+ }
+ }];
+}
+
+/**
+ * @since 璁剧疆璁惧浜戝彴闀滃儚
+ * @param deviceSerial 璁惧搴忓垪鍙�
+ * @param command 鍛戒护 0-涓婁笅锛�1-宸﹀彸锛�2-涓績
+ * @param completion 鍥炶皟block锛宔rror涓虹┖鏃惰〃绀烘垚鍔�
+ */
+- (void)setPtzMiroor:(NSString *)deviceSerial
+ command:(NSString *)command
+ completion:(void (^)(ResponseData *responseData))completion {
+ //璁剧疆璇锋眰鍙傛暟
+ NSMutableDictionary *parameters = [NSMutableDictionary dictionary];
+ [parameters setValue:deviceSerial forKey:@"deviceSerial"];
+ [parameters setValue:@(1) forKey:@"platform"];
+ [parameters setValue:[GlobalKit shareKit].hdlHomeId forKey:@"homeId"];
+ [parameters setValue:command forKey:@"command"];
+
+ parameters = [self GetSignRequestDictionary:parameters];
+
+ NSLog(@"璁剧疆璁惧浜戝彴闀滃儚鍙傛暟锛�%@",parameters);
+
+ [self requestHttpsPost:API_POST_EZ_SetPtzMiroor parameters:parameters completion:^(ResponseData *responseData) {
+ if (completion) {
+ completion (responseData);
+ }
+ }];
+}
+
/// 鍒锋柊token
/// @param block 缁撴灉
@@ -683,9 +736,17 @@
params =[NSMutableDictionary dictionary];
}
UInt64 recordTime = [[NSDate date] timeIntervalSince1970]*1000;
- [params setValue:APP_KEY forKey:@"appKey"];
+ NSString *hdlServerAppKey = [GlobalKit shareKit].hdlServerAppKey;
+ if (!hdlServerAppKey || hdlServerAppKey.length == 0) {
+ hdlServerAppKey = APP_KEY;
+ }
+ NSString *hdlServerAppSecret = [GlobalKit shareKit].hdlServerAppSecret;
+ if (!hdlServerAppSecret || hdlServerAppSecret.length == 0) {
+ hdlServerAppSecret = SECRET_KEY;
+ }
+ [params setValue:hdlServerAppKey forKey:@"appKey"];
[params setValue:[NSString stringWithFormat:@"%llu",recordTime] forKey:@"timestamp"];
- NSLog(@"##########APPKEY:%@, SECRET_KEY:%@", APP_KEY, SECRET_KEY);
+ NSLog(@"##########APPKEY:%@, SECRETKEY:%@", hdlServerAppKey, hdlServerAppSecret);
//1.瀵筀EY鍗囧簭
NSArray *keyArray = [params allKeys];
NSArray *sortKeyArray = [keyArray sortedArrayUsingComparator:^NSComparisonResult(id _Nonnull obj1, id _Nonnull obj2) {
@@ -705,7 +766,7 @@
}
//2.3 鎷兼帴SECRET_KEY
newString = [newString substringToIndex:[newString length] - 1];
- newString = [newString stringByAppendingString: SECRET_KEY];
+ newString = [newString stringByAppendingString: hdlServerAppSecret];
//2.4 MD5杞崲+杞皬鍐�
if([self stringIsNullOrEmpty:newString]){
newString = @"";
diff --git a/EZSDK/EZSDK/EZ/Global/GlobalKit.h b/EZSDK/EZSDK/EZ/Global/GlobalKit.h
index 22e13c7..444aaab 100644
--- a/EZSDK/EZSDK/EZ/Global/GlobalKit.h
+++ b/EZSDK/EZSDK/EZ/Global/GlobalKit.h
@@ -25,6 +25,9 @@
@property (nonatomic, copy) NSString *hdlHomeId;
@property (nonatomic, copy) NSString *hdlAppKey;
+@property (nonatomic, copy) NSString *hdlServerAppKey;
+@property (nonatomic, copy) NSString *hdlServerAppSecret;
+
@property (nonatomic, copy) NSString *accessToken;
@property (nonatomic, copy) NSString *deviceSerialNo; //璁惧搴忓垪鍙�
@property (nonatomic, copy) NSString *deviceModel; //璁惧绫诲瀷瀛楃涓�
diff --git a/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZMirrorFlipView.h b/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZMirrorFlipView.h
new file mode 100644
index 0000000..8807409
--- /dev/null
+++ b/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZMirrorFlipView.h
@@ -0,0 +1,23 @@
+//
+// HDLEZMirrorFlipView.h
+// EZSDK
+//
+// Created by Davin on 2024/11/6.
+//
+
+#import <UIKit/UIKit.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface HDLEZMirrorFlipView : UIView
+
+/// 閰嶇疆闀滃儚缈昏浆淇℃伅
+/// - Parameters:
+/// - title: 鏍囬
+/// - subTitle: 瀛愭爣棰�
+/// - clickResult: 鐐瑰嚮鍥炶皟
+- (void)configTitle:(NSString *)title subTitle:(NSString *)subTitle click:(void(^)(void))clickResult;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZMirrorFlipView.m b/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZMirrorFlipView.m
new file mode 100644
index 0000000..d7f9a1f
--- /dev/null
+++ b/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZMirrorFlipView.m
@@ -0,0 +1,121 @@
+//
+// HDLEZMirrorFlipView.m
+// EZSDK
+//
+// Created by Davin on 2024/11/6.
+//
+
+#import "HDLEZMirrorFlipView.h"
+
+@interface HDLEZMirrorFlipView ()
+
+@property (nonatomic, strong) UIView *baseView;
+@property (nonatomic, strong) UILabel *titleLabel;
+@property (nonatomic, strong) UIImageView *rightIcon;
+@property (nonatomic, strong) UILabel *subTitleLabel;
+
+@property (nonatomic, copy) void(^clickBlock)(void);
+
+@end
+
+@implementation HDLEZMirrorFlipView
+
+- (instancetype)initWithFrame:(CGRect)frame {
+ if (self = [super initWithFrame:frame]) {
+ [self createSubviews];
+ }
+ return self;
+}
+
+- (void)createSubviews {
+ self.backgroundColor = [UIColor clearColor];
+ [self addSubview:self.baseView];
+ [self addSubview:self.titleLabel];
+ [self addSubview:self.rightIcon];
+ [self addSubview:self.subTitleLabel];
+
+ [self.baseView mas_makeConstraints:^(MASConstraintMaker *make) {
+ make.top.mas_equalTo(self.mas_top);
+ make.left.mas_equalTo(self.mas_left);
+ make.right.mas_equalTo(self.mas_right);
+ make.height.mas_equalTo(50.);
+ }];
+
+ [self.titleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
+ make.left.mas_equalTo(self.baseView.mas_left).offset(16.);
+ make.centerY.mas_equalTo(self.baseView.mas_centerY);
+ }];
+
+ [self.rightIcon mas_makeConstraints:^(MASConstraintMaker *make) {
+ make.right.mas_equalTo(self.mas_right).offset(-16.);
+ make.centerY.mas_equalTo(self.baseView.mas_centerY);
+ make.width.mas_equalTo(16);
+ make.height.mas_equalTo(16);
+ }];
+
+ [self.subTitleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
+ make.top.mas_equalTo(self.baseView.mas_bottom);
+ make.left.mas_equalTo(self.titleLabel.mas_left);
+ make.height.mas_equalTo(50.);
+ }];
+
+ UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(mirrorFlipAction)];
+ [self.baseView addGestureRecognizer:tapGesture];
+}
+
+#pragma mark - PublishMethod
+/// 閰嶇疆闀滃儚缈昏浆淇℃伅
+/// - Parameters:
+/// - title: 鏍囬
+/// - subTitle: 瀛愭爣棰�
+/// - clickResult: 鐐瑰嚮鍥炶皟
+- (void)configTitle:(NSString *)title subTitle:(NSString *)subTitle click:(void(^)(void))clickResult {
+ self.titleLabel.text = title;
+ self.subTitleLabel.text = subTitle;
+ self.clickBlock = clickResult;
+}
+
+#pragma mark - PrivateMethod
+- (void)mirrorFlipAction {
+ if (self.clickBlock) {
+ self.clickBlock();
+ }
+}
+
+#pragma mark - Getter
+- (UIView *)baseView {
+ if (!_baseView) {
+ _baseView = [[UIView alloc] init];
+ _baseView.backgroundColor = HDLEZ_COLOR_VIEW_FOREGROUND;
+ }
+ return _baseView;
+}
+
+- (UILabel *)titleLabel {
+ if (!_titleLabel) {
+ _titleLabel=[[UILabel alloc] init];
+ _titleLabel.font = HDLEZ_Get_FontRegularWithSize(HDLEZ_FontSize_16);
+ _titleLabel.textColor=HDLEZHEXCOLOR(0x1B2D4D, 1.0);;
+ }
+ return _titleLabel;
+}
+
+- (UIImageView *)rightIcon {
+ if (!_rightIcon) {
+ _rightIcon = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"hdl_ez_list_next"]];
+ _rightIcon.contentMode = UIViewContentModeScaleAspectFill;
+ _rightIcon.backgroundColor = UIColor.clearColor;
+ }
+ return _rightIcon;
+}
+
+- (UILabel *)subTitleLabel {
+ if (!_subTitleLabel) {
+ _subTitleLabel=[[UILabel alloc] init];
+ _subTitleLabel.font = HDLEZ_Get_FontRegularWithSize(HDLEZ_FontSize_14);
+ _subTitleLabel.textColor=HDLEZ_COLOR_TEXT_GRAY;
+ }
+ return _subTitleLabel;
+}
+
+@end
diff --git a/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m b/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m
index b904e77..fd80138 100644
--- a/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m
+++ b/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m
@@ -18,6 +18,7 @@
#import <EZOpenSDKFramework/EZStorageInfo.h>
#import "Toast+UIView.h"
#import "HDLEZDetectionTypeViewController.h"
+#import "HDLEZMirrorFlipView.h"
//#import "EzvizDeviceManager.h"
@@ -35,12 +36,14 @@
@property (nonatomic, weak) IBOutlet UILabel *currentVersionLabel;
@property (nonatomic, weak) IBOutlet UILabel *nVersionLabel;
@property (nonatomic, weak) IBOutlet UIImageView *updateImageView;
+@property (nonatomic, strong) HDLEZMirrorFlipView *mirrorFlipView;
@property (nonatomic, strong) UIButton *deleteButton;
@property (nonatomic, strong) UIButton *privacyMaskButton; // 闅愮閬斀鎵ц杩囩▼鎻愰啋鎸夐挳
@property (nonatomic, strong) EZDeviceVersion *deviceVersion;
@property (nonatomic, strong) NSTimer *timer;
@property (nonatomic, assign) BOOL isCatEye; // 鏄惁涓虹尗鐪�
@property (nonatomic, assign) BOOL privacyMasking; // 闅愮閬斀璁剧疆涓�
+@property (nonatomic, copy) NSString *mirrorFlipCommand; // 闀滃儚缈昏浆鍛戒护
@end
@@ -116,6 +119,26 @@
weakSelf.nVersionLabel.text = version.currentVersion;
}
}];
+ [[EZHttpUtil sharedManager] getDeviceCapacity:self.deviceInfo.deviceSerial completion:^(ResponseData * _Nonnull responseData) {
+ NSLog(@"#######闀滃儚缈昏浆鍊艰繑鍥炵粨鏋滐細%@", [responseData yy_modelToJSONString]);
+ if (responseData.success && responseData.data) {
+ NSLog(@"#######闀滃儚缈昏浆鍊间负锛�%@", responseData.data);
+ BOOL ptzCenterMirror = [[responseData.data objectForKey:@"ptzCenterMirror"] boolValue];
+ BOOL ptzLeftRightMirror = [[responseData.data objectForKey:@"ptzLeftRightMirror"] boolValue];
+ BOOL ptzTopBottomMirror = [[responseData.data objectForKey:@"ptzTopBottomMirror"] boolValue];
+ if (ptzTopBottomMirror) {
+ weakSelf.mirrorFlipCommand = @"0";
+ }
+ if (ptzLeftRightMirror) {
+ weakSelf.mirrorFlipCommand = @"1";
+ }
+ if (ptzCenterMirror) {
+ weakSelf.mirrorFlipCommand = @"2";
+ }
+ [weakSelf.tableView reloadData];
+ }
+ }];
+
[self.privacyMaskSwitch setOn:NO];
[self getPrivacyMaskSwitchStatus];
self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
@@ -282,6 +305,13 @@
cell.backgroundColor = [UIColor clearColor];
cell.contentView.backgroundColor = [UIColor clearColor];
cell.textLabel.text = @"";
+ if (self.mirrorFlipCommand && self.mirrorFlipCommand.length > 0) {
+ [cell.contentView addSubview:self.mirrorFlipView];
+ __weak __typeof(self)weakSelf = self;
+ [self.mirrorFlipView configTitle:NSLocalizedString(@"api_mirror_flip", @"鐢婚潰缈昏浆") subTitle:NSLocalizedString(@"api_mirror_flip_trip", @"鐐瑰嚮鍚庤棰戠敾闈細缈昏浆灞曠ず锛岄�傚悎鍊掕鐨勫満鏅�") click:^{
+ [weakSelf mirrorFlipAction];
+ }];
+ }
[cell.contentView addSubview:self.deleteButton];
[self.deleteButton addTarget:self action:@selector(deleteAction) forControlEvents:UIControlEventTouchUpInside];
[self.deleteButton mas_remakeConstraints:^(MASConstraintMaker *make) {
@@ -315,6 +345,13 @@
cell.backgroundColor = [UIColor clearColor];
cell.contentView.backgroundColor = [UIColor clearColor];
cell.textLabel.text = @"";
+ if (self.mirrorFlipCommand && self.mirrorFlipCommand.length > 0) {
+ [cell.contentView addSubview:self.mirrorFlipView];
+ __weak __typeof(self)weakSelf = self;
+ [self.mirrorFlipView configTitle:NSLocalizedString(@"api_mirror_flip", @"鐢婚潰缈昏浆") subTitle:NSLocalizedString(@"api_mirror_flip_trip", @"鐐瑰嚮鍚庤棰戠敾闈細缈昏浆灞曠ず锛岄�傚悎鍊掕鐨勫満鏅�") click:^{
+ [weakSelf mirrorFlipAction];
+ }];
+ }
[cell.contentView addSubview:self.deleteButton];
[self.deleteButton addTarget:self action:@selector(deleteAction) forControlEvents:UIControlEventTouchUpInside];
[self.deleteButton mas_remakeConstraints:^(MASConstraintMaker *make) {
@@ -387,7 +424,7 @@
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
- return ((!self.isCatEye && indexPath.section == 8) || (self.isCatEye && indexPath.section == 6)) ? 92 : 50.;
+ return ((!self.isCatEye && indexPath.section == 8) || (self.isCatEye && indexPath.section == 6)) ? (self.mirrorFlipCommand && self.mirrorFlipCommand.length > 0 ? 192 : 92) : 50.;
}
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
@@ -746,6 +783,17 @@
[self presentViewController:actionSheet animated:YES completion:nil];
}
+- (void)mirrorFlipAction {
+ [[EZHttpUtil sharedManager] setPtzMiroor:self.deviceInfo.deviceSerial command:self.mirrorFlipCommand completion:^(ResponseData * _Nonnull responseData) {
+ NSLog(@"#######璁剧疆闀滃儚缈昏浆鍊艰繑鍥炵粨鏋滐細%@", [responseData yy_modelToJSONString]);
+ if (responseData.success) {
+ [UIView dd_showMessage:NSLocalizedString(@"api_mirror_flip_success", @"鐢婚潰缈昏浆鎴愬姛")];
+ } else {
+ [UIView dd_showMessage:responseData.message];
+ }
+ }];
+}
+
#pragma mark - Getter
- (UIButton *)deleteButton {
if (!_deleteButton) {
@@ -778,4 +826,11 @@
return _actionRightArrow;
}
+- (HDLEZMirrorFlipView *)mirrorFlipView {
+ if (!_mirrorFlipView) {
+ _mirrorFlipView = [[HDLEZMirrorFlipView alloc] initWithFrame:CGRectMake(0, 0, HDLEZ_APP_SCREEN_WIDTH, 100)];
+ }
+ return _mirrorFlipView;
+}
+
@end
diff --git a/EZSDK/EZSDK/EZSDK.h b/EZSDK/EZSDK/EZSDK.h
index e4a89c4..2dff88e 100644
--- a/EZSDK/EZSDK/EZSDK.h
+++ b/EZSDK/EZSDK/EZSDK.h
@@ -43,6 +43,13 @@
璁剧疆HDLSDK鐨刟ccessToken
*/
- (void)setHDlAccessToken:(NSString *)accessToken refreshToken:(NSString *) refreshToken;
+
+/**
+ 閰嶇疆骞冲彴appkey鍜宎ppSecret
+ 浼犲叆appKey鍜宎ppSecret
+ */
+- (void)configHDLServerAppKey:(NSString *)appKey appSecret:(NSString *)appSecret;
+
/**
璁剧疆SDK鐨勬渤涓滄帴鍙g殑requestHttpsHost鍜屽钩鍙� 鏍囪瘑锛�1.on+(榛樿) 2.evoyo
*/
diff --git a/EZSDK/EZSDK/EZSDK.m b/EZSDK/EZSDK/EZSDK.m
index b9b1725..7157818 100644
--- a/EZSDK/EZSDK/EZSDK.m
+++ b/EZSDK/EZSDK/EZSDK.m
@@ -84,6 +84,16 @@
[[GlobalKit shareKit] setHdlAccessToken:accessToken];
[[GlobalKit shareKit] setHdlRefreshToken:refreshToken];
}
+
+/**
+ 閰嶇疆骞冲彴appkey鍜宎ppSecret
+ 浼犲叆appKey鍜宎ppSecret
+ */
+- (void)configHDLServerAppKey:(NSString *)appKey appSecret:(NSString *)appSecret {
+ [[GlobalKit shareKit] setHdlServerAppKey:appKey];
+ [[GlobalKit shareKit] setHdlServerAppSecret:appSecret];
+}
+
/**
璁剧疆SDK鐨勬渤涓滄帴鍙g殑requestHttpsHost鍜屽钩鍙� 鏍囪瘑锛�1.on+(榛樿) 2.evoyo
*/
--
Gitblit v1.8.0