From a9d1161b1df96e7ddad566335989a1444e433ef5 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期二, 28 三月 2023 11:54:45 +0800
Subject: [PATCH] 2023年03月28日11:52:02

---
 HDL_ON/Common/HDLCommon.cs |   95 +++++++++++++++++++++++++++++++++++++----------
 1 files changed, 74 insertions(+), 21 deletions(-)

diff --git a/HDL_ON/Common/HDLCommon.cs b/HDL_ON/Common/HDLCommon.cs
index 88ca761..6d00e2d 100644
--- a/HDL_ON/Common/HDLCommon.cs
+++ b/HDL_ON/Common/HDLCommon.cs
@@ -91,7 +91,7 @@
                     {
                         if (revertObj.Data != null)
                         {
-                            var appVersionRes = Newtonsoft.Json.JsonConvert.DeserializeObject<AppVersionRes>(revertObj.Data.ToString());
+                            var appVersionRes = Newtonsoft.Json.JsonConvert.DeserializeObject<AppVersionResNew>(revertObj.Data.ToString());
                             if (appVersionRes != null)
                             {
 
@@ -99,29 +99,33 @@
                                 {
                                     UpdateType = appVersionRes.isEnforce ? 2 : 1,
                                     NewVersion = appVersionRes.version,
-                                    NewVersionUrl = appVersionRes.androidUrl
+                                    NewVersionUrl = appVersionRes.packageUrl
                                 };
 #if __IOS__
-                                mForceUpdateInfo.NewVersionUrl = appVersionRes.iosUrl;
+                                mForceUpdateInfo.NewVersionUrl = appVersionRes.packageUrl;
 #endif
                                 //瑙f瀽鏇存柊鍐呭璇︽儏
-                                var reasonStrJson = GetReasonStrJson(appVersionRes.updateDescription);
-                                if (reasonStrJson != null)
-                                {
-                                    if (Language.CurrentLanguage == "Chinese")
-                                    {
-                                        mForceUpdateInfo.ReasonStr = reasonStrJson.Chinese;
-                                    }
-                                    else
-                                    {
-                                        mForceUpdateInfo.ReasonStr = reasonStrJson.English;
-                                    }
-                                }
+                                //var reasonStrJson = GetReasonStrJson(appVersionRes.remark);
+                                //if (reasonStrJson != null)
+                                //{
+                                //    if (Language.CurrentLanguage == "Chinese")
+                                //    {
+                                //        mForceUpdateInfo.ReasonStr = reasonStrJson.Chinese;
+                                //    }
+                                //    else
+                                //    {
+                                //        mForceUpdateInfo.ReasonStr = reasonStrJson.English;
+                                //    }
+                                //}
+                                mForceUpdateInfo.ReasonStr = appVersionRes.remark;
 
-                                Application.RunOnMainThread(() =>
+                                if (appVersionRes.version != MainPage.VersionString)
                                 {
-                                    ShowForceUpdateDialog(mForceUpdateInfo);
-                                });
+                                    Application.RunOnMainThread(() =>
+                                    {
+                                        ShowForceUpdateDialog(mForceUpdateInfo);
+                                    });
+                                }
                             }
                         }
                     }
@@ -301,9 +305,23 @@
                     else if (jpushMessageInfo.messageType.Contains(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();
                         if (string.IsNullOrEmpty(interphoneTypeEnum)) return;
@@ -330,7 +348,6 @@
                         }
                         else if (interphoneTypeEnum == InterphoneType.HDL.ToString())
                         {
-
                             //HDL Linphone 鐙勮�愬厠
                             eSVideoInfo.HomeId = jpushMessageInfo.HomeId;
                             eSVideoInfo.callId = json["callId"].ToString();
@@ -341,7 +358,22 @@
 
                             //ShowAlert("鐙勮�愬厠闂ㄥ彛鏈哄懠鍙�");
                             //鎵撳紑鍛煎彨椤甸潰
-                            HDLLinphone.Current.ShowESVideoIntercom(eSVideoInfo);
+                            HDLLinphone.Current.ShowESVideoIntercom(eSVideoInfo, InterphoneType.HDL.ToString());
+                            return;
+                        }
+                        else if (interphoneTypeEnum == InterphoneType.FREEVIEW.ToString())
+                        {
+                            //鍏ㄨ閫� Linphone 鐙勮�愬厠
+                            eSVideoInfo.HomeId = jpushMessageInfo.HomeId;
+                            eSVideoInfo.callId = json["callId"].ToString();
+                            eSVideoInfo.Lc_DeviceId = json["deviceId"].ToString();
+                            eSVideoInfo.DeviceName = json["deviceName"].ToString();
+                            eSVideoInfo.deviceSipAccount = json["deviceSipAccount"].ToString();
+                            eSVideoInfo.spk = json["spk"].ToString();
+
+                            //ShowAlert("鐙勮�愬厠闂ㄥ彛鏈哄懠鍙�");
+                            //鎵撳紑鍛煎彨椤甸潰
+                            HDLLinphone.Current.ShowESVideoIntercom(eSVideoInfo, InterphoneType.FREEVIEW.ToString());
                             return;
                         }
 
@@ -353,6 +385,21 @@
                     else if (jpushMessageInfo.messageType.Contains(PushMessageType.Prompt.ToString()))
                     {
                         ShowAlarmPushMessage(jpushMessageInfo, false);
+                    }
+                    else if (jpushMessageInfo.messageType.Contains(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 { }
                     }
                 }
             }
@@ -593,6 +640,7 @@
         public void UpdateInternetStatus(int internetStatus, bool IsEnterBackground = false)
         {
             MainPage.Log($"缃戠粶鐘舵�佸彉鍖栵紝褰撳墠缃戠粶:{internetStatus} 鏄惁鍚庡彴:{IsEnterBackground.ToString()}");
+            MainPage.LinkHdlMqttCount = 0;
             //缃戠粶鐘舵�佸彉鍖� 閲嶇疆缃戝叧鐘舵�侀噸鏂版悳绱�
             Control.Ins.GatewayOnline_Cloud = false;
             Control.Ins.GatewayOnline_Local = false;
@@ -602,6 +650,7 @@
             if (internetStatus == 0)//娌℃湁缃戠粶杩炴帴 0
             {
                 MainPage.InternetStatus = 0;
+                DAL.Mqtt.MqttClient.InitState();
             }
             else if (internetStatus == 1)//3,4G鐨勭綉缁滆繛鎺� 1
             {
@@ -653,6 +702,10 @@
                                 EZSDK.IOS.EZSDK.SharedInstance().SetRequestHttpsHostAndPlatform(OnAppConfig.Instance.RequestHttpsHost, 1, DB_ResidenceData.Instance.CurrentRegion.id);
                                 //2.璁剧疆钀ょ煶瀛愯处鍙风殑AccessToken鍒癝DK
                                 EZSDK.IOS.EZSDK.SharedInstance().SetEZAccessToken(ezChildAccessToken);
+                                //Console.WriteLine("loginToken锛�" + UserInfo.Current.LoginTokenString);
+                                //Console.WriteLine("refreshToken锛�" + UserInfo.Current.RefreshToken);
+
+
                                 ////3.鎵撳紑鎽勫儚澶磋澶囧垪琛ㄩ〉闈�
                                 EZSDK.IOS.EZSDK.SharedInstance().Go2EZvizMonitor();
 

--
Gitblit v1.8.0