From f9181a9c8125136f597add7c30cb2ff508d54ba7 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期四, 25 七月 2024 17:34:32 +0800
Subject: [PATCH] 2024年07月25日17:33:40

---
 HDL_ON/Common/HDLCommon.cs |  121 ++++++++++++++++++++++++++--------------
 1 files changed, 79 insertions(+), 42 deletions(-)

diff --git a/HDL_ON/Common/HDLCommon.cs b/HDL_ON/Common/HDLCommon.cs
index d9fe79d..d99e10b 100644
--- a/HDL_ON/Common/HDLCommon.cs
+++ b/HDL_ON/Common/HDLCommon.cs
@@ -7,7 +7,6 @@
 using HDL_ON.Entity;
 using System.Threading;
 using HDL_ON.DriverLayer;
-
 namespace HDL_ON
 {
     /// <summary>
@@ -259,10 +258,12 @@
         {
             try
             {
+                //Console.WriteLine($"鎺ユ敹鍒版帹閫侊紝锛岋紝锛�.{Newtonsoft.Json.JsonConvert.SerializeObject(jpushMessageInfo).ToString()}");
+
                 //Extras涓虹┖涓嶅鐞�
                 if (string.IsNullOrEmpty(jpushMessageInfo.Extras)) return;
 
-                if (jpushMessageInfo.Extras.Contains(PushMessageType.OffLine.ToString()))
+                if (jpushMessageInfo.Extras == (PushMessageType.OffLine.ToString()))
                 {
                     CheckLogout();
                 }
@@ -274,12 +275,14 @@
                     if (string.IsNullOrEmpty(jpushMessageInfo.messageType)) return;
 
                     //鎶ヨ鎺ㄩ�佹墠寮圭獥鎻愮ず锛坢essageType鍖呭惈Alarm鍏抽敭瀛楃殑锛�
-                    if (jpushMessageInfo.messageType.Contains(PushMessageType.Alarm.ToString()))
+                    if (jpushMessageInfo.messageType == (PushMessageType.Alarm.ToString()))
                     {
                         //鎶ヨ鎺ㄩ�佸脊绐楁彁绀�
                         ShowAlarmPushMessage(jpushMessageInfo, true);
+                        //钀ょ煶闂ㄩ攣鎺ㄩ��
+                        HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo);
                     }
-                    else if (jpushMessageInfo.messageType.Contains(PushMessageType.FLCall.ToString()))
+                    else if (jpushMessageInfo.messageType == (PushMessageType.FLCall.ToString()))
                     {
                         if (string.IsNullOrEmpty(jpushMessageInfo.expantContent)) return;
 
@@ -302,26 +305,14 @@
                         ESOnVideo.Current.ShowESvideoVideoIntercom(eSVideoInfo, InterphoneType.FLVI.ToString());
 
                     }
-                    else if (jpushMessageInfo.messageType.Contains(PushMessageType.HDL_INTERPHONE.ToString()))
+                    else if (jpushMessageInfo.messageType == (PushMessageType.HDL_INTERPHONE.ToString()))
                     {
 
                         if (string.IsNullOrEmpty(jpushMessageInfo.expantContent)) return;
 
                         //瀛楁鍏煎闂锛屽彧鑳界洿鎺ュ彇鍊间簡
                         var json = Newtonsoft.Json.Linq.JObject.Parse(jpushMessageInfo.expantContent);
-                        try
-                        {
-                            var pushTime = json["pushTime"];
-                            if (!string.IsNullOrEmpty(pushTime.ToString()))
-                            {
-                                var pushDateTime = Utlis.UnixToDateTimeMS(Convert.ToInt64(pushTime));
-                                if (pushDateTime.AddSeconds(30) < DateTime.Now)
-                                {
-                                    return;
-                                }
-                            }
-                        }
-                        catch { }
+                       
 
                         //1.瑙嗗璁插巶瀹剁被鍨�
                         string interphoneTypeEnum = json["interphoneTypeEnum"].ToString();
@@ -345,10 +336,38 @@
                             //钀ょ煶鐚溂
                             eSVideoInfo.Lc_AccessToken = json["subToken"].ToString();//"瀛愯处鍙穞oken
                             eSVideoInfo.DeviceSerial = json["devSerial"].ToString();//璁惧搴忓垪鍙�
+                            eSVideoInfo.Lc_DeviceId = json["deviceId"].ToString();
+                            eSVideoInfo.spk = json["spk"].ToString();
+
                             eSVideoInfo.HomeId = jpushMessageInfo.HomeId;
+                            if (json.ContainsKey("msgId") && !string.IsNullOrEmpty(json["msgId"].ToString()))
+                            {
+                                eSVideoInfo.msgId = json["msgId"].ToString();
+                            }
+                            if (json.ContainsKey("currentTime") && !string.IsNullOrEmpty(json["currentTime"].ToString()))
+                            {
+                                eSVideoInfo.currentTime = json["currentTime"].ToString();
+                            }
                         }
                         else if (interphoneTypeEnum == InterphoneType.HDL.ToString())
                         {
+                            try
+                            {
+                                var pushTime = json["pushTime"];
+                                if (pushTime == null)
+                                {
+                                    return;
+                                }
+                                if (!string.IsNullOrEmpty(pushTime.ToString()))
+                                {
+                                    var pushDateTime = Utlis.UnixToDateTimeMS(Convert.ToInt64(pushTime));
+                                    if (pushDateTime.AddSeconds(30) < DateTime.Now)
+                                    {
+                                        return;
+                                    }
+                                }
+                            }
+                            catch { }
                             //HDL Linphone 鐙勮�愬厠
                             eSVideoInfo.HomeId = jpushMessageInfo.HomeId;
                             eSVideoInfo.callId = json["callId"].ToString();
@@ -383,25 +402,19 @@
                         ESOnVideo.Current.ShowESvideoVideoIntercom(eSVideoInfo, interphoneTypeEnum);
 
                     }
-                    else if (jpushMessageInfo.messageType.Contains(PushMessageType.Prompt.ToString()))
+                    else if (jpushMessageInfo.messageType == (PushMessageType.Prompt.ToString()))
                     {
                         ShowAlarmPushMessage(jpushMessageInfo, false);
+                        //钀ょ煶闂ㄩ攣鎺ㄩ��
+                        HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo);
                     }
-                    else if (jpushMessageInfo.messageType.Contains(PushMessageType.DOOR_BELL.ToString()))
+                    else if (jpushMessageInfo.messageType == (PushMessageType.DOOR_BELL.ToString()))
                     {
-                        try
-                        {
-                            if (string.IsNullOrEmpty(jpushMessageInfo.expantContent)) return;
-                            var expantContent = Newtonsoft.Json.JsonConvert.DeserializeObject<UI.UI2.FuntionControlView.VideoDoorLock.ExpantContent>(jpushMessageInfo.expantContent);
-                            if (expantContent == null)
-                            {
-                                return;
-                            }
-                            ///瑙嗛闂ㄩ攣
-                            HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.SkipRTVActivity(expantContent.devSerial, expantContent.deviceId, expantContent.spk, true);
-                        }
-                        catch { }
+                        //钀ょ煶闂ㄩ攣鎺ㄩ��
+                        HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo);
                     }
+
+                   
                 }
             }
             catch (Exception EX)
@@ -439,11 +452,24 @@
         /// </summary>
         public void CheckLogout()
         {
+#if __IOS__
+            try{
+                HDL_ON_iOS.AppDelegate.rootViewController.PopToRootViewController(false);
+            }catch(Exception ex){
+                MainPage.Log($"鍥炲埌璺熺被澶辫触:{ex.Message}");
+            }
+#else
+            //Application.Activity.StartActivity()
+#endif
+
             //娴嬭瘯璐﹀彿锛屼笉鎸や笅绾�
             switch (UserInfo.Current.AccountString)
             {
                 case "464027401@qq.com":
+                case "13580507523":
                 case "15626203746":
+                case "18316672920":
+                    
                     return;
             }
 
@@ -453,7 +479,13 @@
             //璐﹀彿鍦ㄥ埆澶勭櫥闄嗭紝琚涪涓嬬嚎 璺宠浆鍒扮櫥褰曢〉闈�
             new Alert(Language.StringByID(StringId.Tip), Language.StringByID(StringId.LoggedOnOtherDevices), Language.StringByID(StringId.Close)).Show();
 
-            Logout();
+            try
+            {
+                Logout();
+            }catch (Exception ex)
+            {
+                MainPage.Log($"鎸や笅绾垮紓甯�:{ex.Message}");
+            }
         }
 
         /// <summary>
@@ -476,12 +508,14 @@
                     UserInfo.Current.LastTime = DateTime.MinValue;
                     UserInfo.Current.SaveUserInfo();
                     DB_ResidenceData.Instance.EixtAccount();
+                    MainPage.Log("閫�鍑鸿处鍙锋竻绌烘暟鎹�");
                     //4.娉ㄩ攢HDLSIP璐﹀彿鐧诲綍 2021-08-20
                     HDLLinphone.Current.LogoutAllAccount();
+                    MainPage.Log("娉ㄩ攢HDLSIP璐﹀彿鐧诲綍");
 
 #if __IOS__
                     //5.鍏ㄨ閫氱櫥鍑�
-                    Shared.IOS.HDLFVSDK.Video.Logout();
+                    //Shared.IOS.HDLFVSDK.Video.Logout();
                     //6.娓呯┖Siri鍏变韩鏁版嵁淇℃伅
                     new Other.SkipControl().SetData(false, "", "", "", "");
                     var sDM = new SiriKit.SceneDateManager();
@@ -498,6 +532,7 @@
                     {
                         if (waitPage != null)
                         {
+                            waitPage.Hide();
                             waitPage.RemoveFromParent();
                             waitPage = null;
                         }
@@ -588,9 +623,9 @@
 
         }
 
-        #endregion
+#endregion
 
-        #region 鈻� 甯哥敤鏂规硶_______________________
+#region 鈻� 甯哥敤鏂规硶_______________________
         /// <summary>
         /// 璁剧疆涓嬪垝绾挎寜閽姸鎬�
         /// 缁熶竴灏佽璁剧疆鏂规硶
@@ -651,7 +686,7 @@
             if (internetStatus == 0)//娌℃湁缃戠粶杩炴帴 0
             {
                 MainPage.InternetStatus = 0;
-                DAL.Mqtt.MqttClient.InitState();
+                //DAL.Mqtt.MqttClient.DisConnectRemote();//.InitState();
             }
             else if (internetStatus == 1)//3,4G鐨勭綉缁滆繛鎺� 1
             {
@@ -665,9 +700,9 @@
                 Control.Ins.SearchLoaclGateway();
             }
         }
-        #endregion
+#endregion
 
-        #region 璺宠浆鎵撳紑钀ょ煶浜戞柟娉�
+#region 璺宠浆鎵撳紑钀ょ煶浜戞柟娉�
 
         /// <summary>
         /// 鑾峰彇瀛愯处鍙穞oken骞惰烦杞澶囧垪琛ㄩ〉闈�
@@ -737,7 +772,8 @@
                                         ((BaseActivity)Shared.Application.Activity).SetPermission(result =>
                                         {
                                             //2023骞�03鏈�29鏃�13:08:35 淇敼
-                                            Com.Videogo.Hdl.HDLEzvizSdk.Instance.Init(Application.Activity.Application, ezChildAccessToken, UserInfo.Current.LoginTokenString, UserInfo.Current.RefreshToken, OnAppConfig.Instance.RequestHttpsHost, "1aa98a90489b4838b966b57018b4b04b", 1, DB_ResidenceData.Instance.CurrentRegion.id);
+                                            Com.Videogo.Hdl.HDLEzvizSdk.Instance.Init(Application.Activity.Application, ezChildAccessToken, UserInfo.Current.LoginTokenString, UserInfo.Current.RefreshToken, OnAppConfig.Instance.RequestHttpsHost, "1aa98a90489b4838b966b57018b4b04b", 1, DB_ResidenceData.Instance.CurrentRegion.id,
+                                HttpUtil.APP_KEY, HttpUtil.SECRET_KEY);
                                             Com.Videogo.Hdl.HDLEzvizSdk.Instance.JumpToCameraListActivity(Shared.Application.Activity, list);
                                             //if (result)
                                             //{
@@ -767,7 +803,8 @@
                     }
                     else
                     {
-                        IMessageCommon.Current.ShowErrorInfoAlter(result.Code);
+                        if (result.Code != "-1")
+                            IMessageCommon.Current.ShowErrorInfoAlter(result.Code);
                     }
                 }
                 catch (Exception ex)
@@ -788,6 +825,6 @@
             { IsBackground = true }.Start();
         }
 
-        #endregion
+#endregion
     }
 }

--
Gitblit v1.8.0