From 3f6685c77beeb12baf840733fb890860f4c26e7c Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期四, 25 七月 2024 17:25:59 +0800 Subject: [PATCH] 2024年07月25日17:24:45 --- HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs | 190 +++++++++++++++++++++++++++++++++-------------- 1 files changed, 133 insertions(+), 57 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs b/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs index 2e5ad01..e9393fd 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs @@ -3,8 +3,8 @@ using System.Collections.Generic; using Shared; using HDL_ON.DAL.Server; -using Foundation; #if __IOS__ +using Foundation; #else using Com.Videogo.Hdl; #endif @@ -16,6 +16,7 @@ /// </summary> public class CommonMethod { + private Loading loading; /// <summary> /// 璁板綍褰撳墠鐣岄潰绱㈠紩鍊� @@ -51,37 +52,46 @@ this.InitializationAndroidData((isEzChildAccessToken) => { - - this.MainThread(() => + this.SunThread(() => { -#if __IOS__ - //璺宠浆娣诲姞钀ょ煶璁惧 - ezsdkDelegate = new IosIHdlInterface(); - ezsdkDelegate.mAction += (serials) => + var list = this.GetVideoDoorLockLockModelsList("notAllowedConfigNetworkModels"); + + this.MainThread(() => { - this.GetYingshiDeviceList(serials); - }; - EZSDK.IOS.EZSDK.SharedInstance().Delegate = ezsdkDelegate; - NSObject[] nSObject = new NSObject[1]; - nSObject[0] = new NSString("DP1"); - EZSDK.IOS.EZSDK.SharedInstance().ConnectTipModels = nSObject; - EZSDK.IOS.EZSDK.SharedInstance().AddEzvizMonitorWithDeviceType(spk); +#if __IOS__ + //璺宠浆娣诲姞钀ょ煶璁惧 + ezsdkDelegate = new IosIHdlInterface(); + ezsdkDelegate.mAction += (serials) => + { + this.GetYingshiDeviceList(serials); + }; + EZSDK.IOS.EZSDK.SharedInstance().Delegate = ezsdkDelegate; + NSObject[] nSObject = new NSObject[list.Count]; + for (int i = 0; i < list.Count; i++) + { + string strValue = list[i]; + nSObject[i] = new NSString(strValue); + } + EZSDK.IOS.EZSDK.SharedInstance().ConnectTipModels = nSObject; + EZSDK.IOS.EZSDK.SharedInstance().AddEzvizMonitorWithDeviceType(spk); #else - HDLEzvizSdk.Instance.JumpToEZScanActivity(Application.Activity,spk); - HDLEzvizSdk.SetAddCallback(new AndroidIHdlInterface((isBool, serials) => - { - if (isBool) + HDLEzvizSdk.Instance.JumpToEZScanActivity(Application.Activity, spk,list); + HDLEzvizSdk.SetAddCallback(new + AndroidIHdlInterface((isBool, serials) => { - this.GetYingshiDeviceList(serials); - } + if (isBool) + { + this.GetYingshiDeviceList(serials); + } - })); + })); #endif + }); + + }); - - }); @@ -120,11 +130,12 @@ /// <param name="isDialog">鏄惁闇�瑕佸脊妗�</param> public void SkipRTVActivity(string deviceSerial, string deviceId, string spk, bool isDialog) { - + this.Loading.Start(); this.InitializationAndroidData((isEzChildAccessToken) => { this.MainThread(() => { + this.Loading.Hide(); if (isDialog) { Video.View.ShowDialog.Currnet.ClickBox(Language.StringByID(StringId.laizimenlinghujiao), (dialog) => @@ -156,7 +167,27 @@ EZSDK.IOS.EZSDK.SharedInstance().PlayWithDeviceSerial(deviceSerial, deviceId, spk); #else - HDLEzvizSdk.Instance.JumpToEZRealPlayActivity(Application.Activity,deviceId,deviceSerial,spk); + HDLEzvizSdk.Instance.JumpToEZRealPlayActivity(Application.Activity,deviceId,deviceSerial,spk,""); +#endif + + + } + /// <summary> + /// 鎵撳紑瀹炴椂瑙嗛鐢婚潰 + /// </summary> + /// <param name="deviceSerial">璁惧搴忓垪鍙�</param> + /// <param name="deviceId">璁惧id(浜戠涓奷eviceId)</param> + /// <param name="spk">璁惧spk(浜戦泙涓婂畾涔夊ソ鐨�)</param> + /// <param name="msgId">娑堟伅id</param> + private void SkipRTVActivity(string deviceSerial, string deviceId, string spk, string msgId) + { + +#if __IOS__ + //鎵撳紑钀ょ煶瑙嗛鐣岄潰 + EZSDK.IOS.EZSDK.SharedInstance().PlayWithDeviceSerial(deviceSerial, deviceId, spk, msgId); + +#else + HDLEzvizSdk.Instance.JumpToEZRealPlayActivity(Application.Activity,deviceId,deviceSerial,spk,msgId); #endif @@ -207,6 +238,7 @@ public void InitializationAndroidData(Action<bool> action) { bool isBool = true; + //this.Loading.Start(); this.SunThread(() => { try @@ -219,14 +251,21 @@ { //Token isBool = false; - this.ShowTip("鍏堣幏鍙栬悿鐭充簯瀛愯处鍙穞oken澶辫触銆�"); + //this.ShowTip("鑾峰彇钀ょ煶浜戝瓙璐﹀彿token澶辫触銆�"); return; } + + string appKey = "1aa98a90489b4838b966b57018b4b04b";//姝e紡鏈嶅姟鍣� + //if (OnAppConfig.Instance.RequestHttpsHost == "https://test-gz.hdlcontrol.com") + //{ + // appKey = "941b1b72b6294998acfd36c14931b675";//鐢ㄥ湪娴嬭瘯鏈嶅姟鍣ㄦ帹閫佺殑 + //} + #if __IOS__ //iOS //鍒濆鍖栬悿鐭充簯SDK锛屼腑鏂囧浗鍐卥ey銆佽嫳鏂囨捣澶杒ey 寮�鍙戣�呰处鍙蜂娇鐢ㄥ簲鐢ㄥ寘鍚嶇敵璇风殑APPKEY锛屼笉鍚屽寘鍚嶅簲鐢ㄩ渶閰嶇疆涓嶅悓鐨凙PPKEY - EZSDK.IOS.EZSDK.SharedInstance().InitLibWithAppKey("1aa98a90489b4838b966b57018b4b04b", "1aa98a90489b4838b966b57018b4b04b"); + EZSDK.IOS.EZSDK.SharedInstance().InitLibWithAppKey(appKey, appKey); //1.璁剧疆鎵�闇�娌充笢鐨凙ccessToken鍜孯efreshToken銆佸煙鍚嶅湴鍧� EZSDK.IOS.EZSDK.SharedInstance().SetHDlAccessToken(UserInfo.Current.LoginTokenString, UserInfo.Current.RefreshToken); EZSDK.IOS.EZSDK.SharedInstance().SetRequestHttpsHostAndPlatform(OnAppConfig.Instance.RequestHttpsHost, 1, DB_ResidenceData.Instance.CurrentRegion.id); @@ -238,7 +277,9 @@ //info.de //EZSDK.IOS.EZSDK.Play(info); #else - HDLEzvizSdk.Instance.Init(Application.Activity.Application, ezChildAccessToken, UserInfo.Current.LoginTokenString, UserInfo.Current.RefreshToken, OnAppConfig.Instance.RequestHttpsHost, "1aa98a90489b4838b966b57018b4b04b", 1, DB_ResidenceData.Instance.CurrentRegion.id); + + HDLEzvizSdk.Instance.Init(Application.Activity.Application, ezChildAccessToken, UserInfo.Current.LoginTokenString, UserInfo.Current.RefreshToken, OnAppConfig.Instance.RequestHttpsHost, appKey, 1, DB_ResidenceData.Instance.CurrentRegion.id, + HttpUtil.APP_KEY, HttpUtil.SECRET_KEY); #endif @@ -253,6 +294,7 @@ { this.MainThread(() => { + //this.Loading.Hide(); action?.Invoke(isBool); }); } @@ -270,6 +312,7 @@ #if __IOS__ #else HDLEzvizSdk.Instance.SetHomeId(home.id); + #endif } @@ -279,9 +322,17 @@ /// 鑾峰彇銆愰棬閿佸瀷鍙枫�戝垪琛� /// </summary> /// <returns>杩斿洖缁撴灉涓嶄細涓簄ull</returns> - public List<string> GetVideoDoorLockLockModelsList() + public List<string> GetVideoDoorLockLockModelsList(string mode = "lockModels") { - return VideDoorLockSend.Current.GetVideoDoorLockLockModelsList(); + var lockModels = VideDoorLockSend.Current.GetVideoDoorLockLockModelsList(); + if (mode == "lockModels") + { + return lockModels.lockModels; + } + else + { + return lockModels.notAllowedConfigNetworkModels; + } } /// <summary> /// 闂ㄩ攣鎺ㄩ�� @@ -293,30 +344,49 @@ this.MainThread(() => { if (string.IsNullOrEmpty(jpushMessageInfo.expantContent)) return; - //{ "deviceSid":"J92513662","type":"opendoormsg","extDevId":"J92513662","deviceId":"1641010144999936001","spk":"security.door.ezviz"} - var expantContent = Newtonsoft.Json.JsonConvert.DeserializeObject<ExpantContent>(jpushMessageInfo.expantContent); - if (expantContent == null) + try { - return; - } - if (expantContent.spk != SPK.VideoDoorLock) + //{ "deviceSid":"J92513662","type":"opendoormsg","extDevId":"J92513662","deviceId":"1641010144999936001","spk":"security.door.ezviz"} + var expantContent = Newtonsoft.Json.JsonConvert.DeserializeObject<ExpantContent>(jpushMessageInfo.expantContent); + if (expantContent == null) + { + return; + } + if (expantContent.spk == null) + { + return; + } + if ( expantContent.spk != SPK.VideoDoorLock) + { + return; + } + if (jpushMessageInfo.messageType.Contains(PushMessageType.DOOR_BELL.ToString())) + { + ///鎵撳紑瑙嗛闂ㄩ攣 + string currentTimeStr = Utlis.GetTimestamp(); // 褰撳墠鏃堕棿 + + if (string.IsNullOrEmpty(expantContent.currentTime) && string.IsNullOrEmpty(currentTimeStr) && (long.Parse(currentTimeStr) - long.Parse(expantContent.currentTime)) > 30000) + { // 瓒呮椂30s + this.SkipRTVActivity(expantContent.devSerial, expantContent.deviceId, expantContent.spk, true); + } + else + { + this.SkipRTVActivity(expantContent.devSerial, expantContent.deviceId, expantContent.spk, expantContent.msgId); + } + } + else if (jpushMessageInfo.messageType.Contains(PushMessageType.Alarm.ToString())) + { + //浣庣數閲忔帹閫� + this.UpdateDoorLockState(PushMessageType.Alarm); + } + else if (jpushMessageInfo.messageType.Contains(PushMessageType.Prompt.ToString())) + { + //寮�闂ㄦ帹閫� + this.UpdateDoorLockState(PushMessageType.Prompt); + } + }catch(Exception ex) { - return; - } - if (jpushMessageInfo.messageType.Contains(PushMessageType.DOOR_BELL.ToString())) - { - ///鎵撳紑瑙嗛闂ㄩ攣 - this.SkipRTVActivity(expantContent.devSerial, expantContent.deviceId, expantContent.spk, true); - } - else if (jpushMessageInfo.messageType.Contains(PushMessageType.Alarm.ToString())) - { - //浣庣數閲忔帹閫� - this.UpdateDoorLockState(PushMessageType.Alarm); - } - else if (jpushMessageInfo.messageType.Contains(PushMessageType.Prompt.ToString())) - { - //寮�闂ㄦ帹閫� - this.UpdateDoorLockState(PushMessageType.Prompt); + } }); @@ -386,13 +456,14 @@ /// </summary> public string GetVideoDoorLockIcon(Comerom comerom) { + if (comerom == Comerom.collect) { - return "FunctionIcon/DoorLock/VideoDoorLockOpen.png"; + return "FunctionIcon/DoorLock/VideoDoorLockOpen1.png"; } else { - return "FunctionIcon/DoorLock/VideoDoorlockClose.png"; + return "FunctionIcon/DoorLock/VideoDoorlockClose1.png"; } } @@ -535,12 +606,13 @@ collect,//鏀惰棌 room,//鎴块棿 push,//鎺ㄩ�� + sanfan,//娣诲姞绗笁鏂硅澶� } #if __IOS__ IosIHdlInterface ezsdkDelegate; /// <summary> - /// 涓撻棬瀹氫箟缁橧os鍥炶皟鐢ㄧ潃,娌℃湁鐗规畩鍚箟 + /// 涓撻棬瀹氫箟缁橧os鍥炶皟鐢�,娌℃湁鐗规畩鍚箟 /// </summary> public class IosIHdlInterface : EZSDK.IOS.EZSDKDelegate { @@ -561,12 +633,13 @@ } #else /// <summary> - /// 涓撻棬瀹氫箟缁欏畨鍗撳洖璋冪敤鐫�,娌℃湁鐗规畩鍚箟 + /// 涓撻棬瀹氫箟缁欏畨鍗撳洖璋冪敤,娌℃湁鐗规畩鍚箟 /// </summary> public class AndroidIHdlInterface : Java.Lang.Object, IHdlInterface { Action<bool,string> mAction; + Action<string> mDoorlockAnswer; public AndroidIHdlInterface(Action<bool,string> action) { mAction = action; @@ -581,7 +654,10 @@ mAction?.Invoke(p0,p1); } - + public void DoorlockAnswer(string p0) + { + mDoorlockAnswer?.Invoke(p0); + } } #endif -- Gitblit v1.8.0