From acc8caee31c4be90bd38d1af18136b0e84f6fe94 Mon Sep 17 00:00:00 2001
From: wxr <wxr@hdlchina.com.cn>
Date: 星期五, 27 九月 2024 14:01:19 +0800
Subject: [PATCH] Merge branch 'feature/v2.7_迭代' into feature/V2.7_Google

---
 HDL_ON/Common/HDLCommon.cs |  454 +++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 379 insertions(+), 75 deletions(-)

diff --git a/HDL_ON/Common/HDLCommon.cs b/HDL_ON/Common/HDLCommon.cs
index 5a6979b..749d7df 100644
--- a/HDL_ON/Common/HDLCommon.cs
+++ b/HDL_ON/Common/HDLCommon.cs
@@ -237,21 +237,6 @@
 
         #endregion
 
-        ///// <summary>
-        ///// 鎭㈠浣忓畢
-        ///// 2020-12-03 寰呮祴璇曟湭妫�娴�
-        ///// </summary>
-        //public void RestoreHomeBackup(string RegionID)
-        //{
-        //    var isExist = FileUtils.ExistRegion(RegionID);
-        //    if (isExist)
-        //    {
-        //        //瀛樺湪鍒欐仮澶�
-        //        string newRegionRootPath = FileUtils.CreateRegionBackup(RegionID);
-        //        FileUtils.RestoreRegionFiles(newRegionRootPath);
-        //    }
-        //}
-
         #region 鈻� 鎺ㄩ�佸鐞哶______________________
         /// <summary>
         /// 鎺ㄩ�佹秷鎭鐞�
@@ -262,8 +247,7 @@
         {
             try
             {
-                //Console.WriteLine($"鎺ユ敹鍒版帹閫侊紝锛岋紝锛�.{Newtonsoft.Json.JsonConvert.SerializeObject(jpushMessageInfo).ToString()}");
-
+                //MainPage.Log($"鎺ユ敹鍒版帹閫侊紝锛岋紝锛�.{Newtonsoft.Json.JsonConvert.SerializeObject(jpushMessageInfo).ToString()}");
                 //Extras涓虹┖涓嶅鐞�
                 if (string.IsNullOrEmpty(jpushMessageInfo.Extras)) return;
 
@@ -283,14 +267,200 @@
                     {
                         //鎶ヨ鎺ㄩ�佸脊绐楁彁绀�
                         ShowAlarmPushMessage(jpushMessageInfo, true);
+                        //钀ょ煶闂ㄩ攣鎺ㄩ��
+                        UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo);
+                    }
+                    else if (jpushMessageInfo.messageType == (PushMessageType.FLCall.ToString()))
+                    {
+                        if (string.IsNullOrEmpty(jpushMessageInfo.expantContent)) return;
+
+                        ESVideoInfo eSVideoInfo = GetESOnVideoJson(jpushMessageInfo.expantContent);
+
+                        if (eSVideoInfo == null) return;
+
+                        if (string.IsNullOrEmpty(eSVideoInfo.uuid)) return;
+
+                        if (eSVideoInfo.uuid.Contains(","))
+                        {
+                            var uuid = eSVideoInfo.uuid.Split(',');
+                            eSVideoInfo.ESVideoUUID = uuid[0];
+                        }
+                        else
+                        {
+                            eSVideoInfo.ESVideoUUID = eSVideoInfo.uuid;
+                        }
+
+                        ESOnVideo.Current.ShowESvideoVideoIntercom(eSVideoInfo, InterphoneType.FLVI.ToString());
+
+                    }
+                    else if (jpushMessageInfo.messageType == PushMessageType.HDL_INTERPHONE.ToString())
+                    {
+                        if (string.IsNullOrEmpty(jpushMessageInfo.expantContent)) return;
+
+                        //瀛楁鍏煎闂锛屽彧鑳界洿鎺ュ彇鍊间簡
+                        var json = Newtonsoft.Json.Linq.JObject.Parse(jpushMessageInfo.expantContent);
+
+                        //1.瑙嗗璁插巶瀹剁被鍨�
+                        string interphoneTypeEnum = json["interphoneTypeEnum"].ToString();
+                        if (string.IsNullOrEmpty(interphoneTypeEnum)) return;
+                        ESVideoInfo eSVideoInfo = new ESVideoInfo();// GetESOnVideoJson(jpushMessageInfo.expantContent);
+                        //2.鏍规嵁鍙瀵硅鍘傚绫诲瀷锛屽鐞嗕笉鍚岀殑鏁版嵁
+                        if (interphoneTypeEnum == InterphoneType.IMOUVISIAL.ToString())
+                        {
+                            //澶у崕涔愭
+                            eSVideoInfo.callId = json["callId"].ToString();
+                            //eSVideoInfo.Lc_AccessToken = UI.UI2.PersonalCenter.PirDevice.PirSend.LcSubAccessToken;//json["subAccountToken"].ToString();//
+                            eSVideoInfo.Lc_AccessToken = json["subAccountToken"].ToString();//2021-05-13 鐩墠浜戠杩樻病鎷垮埌Lc_AccessToken锛岀洰鍓嶆病鍔炴硶姝e父浣跨敤
+                            eSVideoInfo.Lc_DeviceId = json["deviceId"].ToString();
+                            eSVideoInfo.Lc_Location = OnAppConfig.Instance.RequestHttpsHost.Contains("China") ? 0 : 1;
+                            eSVideoInfo.Lc_PlayToken = json["token"].ToString();
+                            //eSVideoInfo.Lc_Psk = json["cname"].ToString();
+                            eSVideoInfo.Lc_Psk = json["psk"].ToString();//2021-10-15 PSK瀛楁涓嶈兘鍙朿name
+                        }
+                        else if (interphoneTypeEnum == InterphoneType.EZVIZ.ToString())
+                        {
+                            //钀ょ煶鐚溂
+                            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 (Exception ex) {
+                                MainPage.Log("Error", $"鑷爺鍙瀵硅閫氱煡寮傚父:{ex.StackTrace}");
+                            }
+
+#if __ANDROID__
+                            Com.Hdl.Hdllinphonesdk.HDLLinphoneKit.Instance.MissedCallsTime = 30;
+                            Com.Hdl.Hdllinphonesdk.HDLLinphoneKit.Instance.SetMediaPlayerLooping(true);
+                            Com.Hdl.Hdllinphonesdk.HDLLinphoneKit.Instance.PlayRingtone();
+                            new Thread(() =>
+                            {
+                                try
+                                {
+                                    DateTime dateTime = DateTime.Now;
+                                    while (true)
+                                    {
+                                        Thread.Sleep(1000);
+                                        if (!Com.Hdl.Hdllinphonesdk.HDLLinphoneKit.Instance.MediaPlayerPlayingStatus || dateTime.AddSeconds(Com.Hdl.Hdllinphonesdk.HDLLinphoneKit.Instance.MissedCallsTime) <= DateTime.Now)
+                                        {
+                                            break;
+                                        }
+                                    }
+                                    Com.Hdl.Hdllinphonesdk.HDLLinphoneKit.Instance.SetMediaPlayerLooping(false);
+                                }
+                                catch (Exception ex)
+                                {
+                                    MainPage.Log("error", "鑷爺鍙瀵硅閾冨0鎾斁寮傚父:" + ex.Message);
+                                }
+                            })
+                            { IsBackground = true }.Start();
+
+                            #elif __IOS__
+                            SoundPlayer.Ins.PlaySound();
+                            new Thread(() => {
+                                int count = 0;
+                                while (true)
+                                {
+                                    if (SoundPlayer.Ins.player == null)
+                                    {
+                                        break;
+                                    }
+                                    if (!SoundPlayer.Ins.player.Playing)
+                                    {
+                                        break;
+                                    }
+                                    System.Threading.Thread.Sleep(1000);
+                                    count++;
+                                    MainPage.Log("linphone 鍛煎彨璁℃椂锛�" + count);
+                                    if (count > 29)
+                                    {
+                                        SoundPlayer.Ins.StopSound();
+                                        Application.RunOnMainThread(() => {
+                                            try
+                                            {
+                                                HDLLinPhoneSDK.Instance().HideIntercomeVC();
+                                            }catch(Exception ex)
+                                            {
+                                                MainPage.Log("error", "ios linphone 鍛煎彨瓒呮椂鍏抽棴鐣岄潰寮傚父锛�" + ex.Message);
+                                            }
+                                        });
+                                        break;
+                                    }
+                                }
+                            })
+                            { IsBackground = true }.Start();
+                            #endif
+
+                            MainPage.Log("鎺ユ敹鍒版帹閫�:HDL 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();
+                            //鎵撳紑鍛煎彨椤甸潰
+                            HDLLinphone.Current.ShowESVideoIntercom(eSVideoInfo, InterphoneType.HDL.ToString(), jpushMessageInfo.isNotificationGoing);
+                            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;
+                        }
+
+                        //3.鎵撳紑鍛煎彨椤甸潰
+                        if (eSVideoInfo == null) return;
+                        ESOnVideo.Current.ShowESvideoVideoIntercom(eSVideoInfo, interphoneTypeEnum);
+
                     }
                     else if (jpushMessageInfo.messageType == (PushMessageType.Prompt.ToString()))
                     {
                         ShowAlarmPushMessage(jpushMessageInfo, false);
+                        //钀ょ煶闂ㄩ攣鎺ㄩ��
+                        HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo);
                     }
                     else if (jpushMessageInfo.messageType == (PushMessageType.DOOR_BELL.ToString()))
                     {
                         //钀ょ煶闂ㄩ攣鎺ㄩ��
+                        HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo);
                     }
 
                    
@@ -301,8 +471,6 @@
                 Utlis.WriteLine("catch: " + EX.ToString());
             }
         }
-        //{"code":0,"data":{"list":[{"createTime":"1625798305115","modifyTime":"1625798305115","region":"100000000000000001","id":"1413326644794294273","alarmId":"20210709103818-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709103818-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:38:17","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{"createTime":"1625798057197","modifyTime":"1625798057197","region":"100000000000000001","id":"1413325604946640898","alarmId":"20210709103413-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709103413-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:34:12","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625797973320","modifyTime":"1625797973320","region":"100000000000000001","id":"1413325253141004289","alarmId":"20210709103236-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709103236-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:32:31","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625797782136","modifyTime":"1625797782136","region":"100000000000000001","id":"1413324451261382658","alarmId":"20210709102937-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709102937-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:29:37","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625797668771","modifyTime":"1625797668771","region":"100000000000000001","id":"1413323975769915394","alarmId":"20210709102743-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709102743-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:27:42","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625797539846","modifyTime":"1625797539846","region":"100000000000000001","id":"1413323435023466498","alarmId":"20210709102534-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709102534-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:25:34","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625797530627","modifyTime":"1625797530627","region":"100000000000000001","id":"1413323396351983618","alarmId":"20210709102525-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709102525-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:25:25","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625796028089","modifyTime":"1625796028089","region":"100000000000000001","id":"1413317094255034369","alarmId":"20210709100024-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709100024-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:00:23","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625795974558","modifyTime":"1625795974558","region":"100000000000000001","id":"1413316869729746946","alarmId":"20210709095931-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709095931-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T09:59:31","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625795966933","modifyTime":"1625795966933","region":"100000000000000001","id":"1413316837748178946","alarmId":"20210709095923-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709095923-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T09:59:22","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"}],"totalCount":"13","totalPage":"2","pageNo":"1","pageSize":"10"},"timestamp":"1625807415164","isSuccess":true}
-        //{"platform":"1","timestamp":"1625805660249","appKey":"HDL-HOME-APP-TEST","sign":"02e433c40485b30451ebdc5ca3cd959c","deviceSerial":"F41014762","homeId":"1396717478877241345"}
         /// <summary>
         /// 瑙f瀽涓版灄鍙瀵硅鎺ㄩ�佹暟鎹�
         /// </summary>
@@ -341,24 +509,22 @@
             //Application.Activity.StartActivity()
 #endif
 
-            //娴嬭瘯璐﹀彿锛屼笉鎸や笅绾�
-            switch (UserInfo.Current.AccountString)
-            {
-                case "464027401@qq.com":
-                case "649362315@qq.com":
-                case "13580507523":
-                case "15626203746":
-                case "18316672920":
-                    
-                    return;
-            }
+            
 
             //鏈櫥褰曚笉鐢ㄥ鐞�
-            if (!UserInfo.Current.IsLogin) return;
-
-            //璐﹀彿鍦ㄥ埆澶勭櫥闄嗭紝琚涪涓嬬嚎 璺宠浆鍒扮櫥褰曢〉闈�
-            new Alert(Language.StringByID(StringId.Tip), Language.StringByID(StringId.LoggedOnOtherDevices), Language.StringByID(StringId.Close)).Show();
-
+            //if (!UserInfo.Current.IsLogin) return;
+            try
+            {
+                Application.RunOnMainThread(() =>
+                {
+                    //璐﹀彿鍦ㄥ埆澶勭櫥闄嗭紝琚涪涓嬬嚎 璺宠浆鍒扮櫥褰曢〉闈�
+                    new Alert(Language.StringByID(StringId.Tip), Language.StringByID(StringId.LoggedOnOtherDevices), Language.StringByID(StringId.Close)).Show();
+                });
+            }
+            catch (Exception ex)
+            {
+                MainPage.Log("Error", $"鎸や笅绾挎彁绀虹獥鍙e紓甯革細{ex.StackTrace}");
+            }
             try
             {
                 Logout();
@@ -373,51 +539,65 @@
         /// </summary>
         public void Logout()
         {
-            //鍔犺浇Loading鏁堟灉
-            var waitPage = new Loading();
-            MainPage.BaseView.AddChidren(waitPage);
-            waitPage.Start(Language.StringByID(StringId.PleaseWait));
-
-            new Thread(() =>
+            try
             {
-                try
+                Application.RunOnMainThread(() =>
                 {
-                    //2.娉ㄩ攢鎺ㄩ��
-                    new HttpServerRequest().SignOutPush();
-                    //3.璺宠浆鐧诲綍椤甸潰
-                    UserInfo.Current.LastTime = DateTime.MinValue;
-                    UserInfo.Current.SaveUserInfo();
-                    DB_ResidenceData.Instance.EixtAccount();
-                    MainPage.Log("閫�鍑鸿处鍙锋竻绌烘暟鎹�");
-                    MainPage.Log("娉ㄩ攢HDLSIP璐﹀彿鐧诲綍");
+                    //鍔犺浇Loading鏁堟灉
+                    var waitPage = new Loading();
+                    MainPage.BaseView.AddChidren(waitPage);
+                    waitPage.Start(Language.StringByID(StringId.PleaseWait));
+
+                    new Thread(() =>
+                    {
+                        try
+                        {
+                            //2.娉ㄩ攢鎺ㄩ��
+                            new HttpServerRequest().SignOutPush();
+                            //3.璺宠浆鐧诲綍椤甸潰
+                            UserInfo.Current.ValidToken = false;
+                            UserInfo.Current.SaveUserInfo();
+                            OnAppConfig.Instance.LastLoginUserId = "";
+                            OnAppConfig.Instance.SaveConfig();
+                            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();
-                    //6.娓呯┖Siri鍏变韩鏁版嵁淇℃伅
-                    new Other.SkipControl().SetData(false, "", "", "", "");
-                    var sDM = new SiriKit.SceneDateManager();
-                    Console.WriteLine($"IsLogin:{sDM.IsLgoin};accessToken:{sDM.AccessToken};refreshToken:{sDM.RefreshToken};RegionUrl:{sDM.RegionUrl};HomeId:{sDM.HomeId}");
+                            //5.鍏ㄨ閫氱櫥鍑�
+                            //Shared.IOS.HDLFVSDK.Video.Logout();
+                            //6.娓呯┖Siri鍏变韩鏁版嵁淇℃伅
+                            new Other.SkipControl().SetData(false, "", "", "", "");
+                            var sDM = new SiriKit.SceneDateManager();
+                            //Console.WriteLine($"IsLogin:{sDM.IsLgoin};accessToken:{sDM.AccessToken};refreshToken:{sDM.RefreshToken};RegionUrl:{sDM.RegionUrl};HomeId:{sDM.HomeId}");
 #endif
-                }
-                catch (Exception ex)
-                {
-                    MainPage.Log($"xxx:{ex.Message}");
-                }
-                finally
-                {
-                    Application.RunOnMainThread(() =>
-                    {
-                        if (waitPage != null)
-                        {
-                            waitPage.Hide();
-                            waitPage.RemoveFromParent();
-                            waitPage = null;
                         }
-                        MainPage.GoLoginPage(UserInfo.Current);
-                    });
-                }
-            }).Start();
+                        catch (Exception ex)
+                        {
+                            MainPage.Log($"xxx:{ex.Message}");
+                        }
+                        finally
+                        {
+                            Application.RunOnMainThread(() =>
+                            {
+                                if (waitPage != null)
+                                {
+                                    waitPage.Hide();
+                                    waitPage.RemoveFromParent();
+                                    waitPage = null;
+                                }
+                                MainPage.GoLoginPage(UserInfo.Current);
+                            });
+                        }
+                    }).Start();
+                });
+            }
+            catch (Exception ex)
+            {
+                MainPage.Log("Error", $"閫�鍑虹櫥褰曞紓甯�:{ex.StackTrace}");
+            }
         }
 
         /// <summary>
@@ -432,7 +612,7 @@
         public void ShowAlarmPushMessage(JPushMessageInfo jpushMessageInfo, bool isAlarm)
         {
             //娌$櫥褰曚笉澶勭悊
-            if (UserInfo.Current == null || !UserInfo.Current.IsLogin || MainPage.BasePageView == null)
+            if (UserInfo.Current == null || MainPage.BasePageView == null)
             {
                 return;
             }
@@ -580,5 +760,129 @@
         }
 #endregion
 
+#region 璺宠浆鎵撳紑钀ょ煶浜戞柟娉�
+
+        /// <summary>
+        /// 鑾峰彇瀛愯处鍙穞oken骞惰烦杞澶囧垪琛ㄩ〉闈�
+        /// </summary>
+        /// <param name="bodyView"></param>
+        public void Go2EZvizMonitor(FrameLayout bodyView)
+        {
+            var waitPage = new Loading();
+            bodyView.AddChidren(waitPage);
+            waitPage.Start(Language.StringByID(StringId.PleaseWait));
+
+            new Thread(() =>
+            {
+                try
+                {
+                    var list = UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.GetVideoDoorLockLockModelsList();
+                    //鍏堣幏鍙栬悿鐭充簯瀛愯处鍙穞oken
+                    var result = new HttpServerRequest().EZGetChildToken();
+                    if (result.Code == StateCode.SUCCESS)
+                    {
+                        var ezChildAccessToken = result.Data.ToString();
+
+                        //var ezChildAccessToken = Newtonsoft.Json.JsonConvert.DeserializeObject<EZChildAccessToken>(result.Data.ToString());
+                        Application.RunOnMainThread(() =>
+                        {
+                            if (!string.IsNullOrEmpty(ezChildAccessToken))
+                            {
+
+#if __IOS__
+
+                                //iOS
+                                //鍒濆鍖栬悿鐭充簯SDK锛屼腑鏂囧浗鍐卥ey銆佽嫳鏂囨捣澶杒ey 寮�鍙戣�呰处鍙蜂娇鐢ㄥ簲鐢ㄥ寘鍚嶇敵璇风殑APPKEY锛屼笉鍚屽寘鍚嶅簲鐢ㄩ渶閰嶇疆涓嶅悓鐨凙PPKEY
+                                EZSDK.IOS.EZSDK.SharedInstance().InitLibWithAppKey("1aa98a90489b4838b966b57018b4b04b", "1aa98a90489b4838b966b57018b4b04b");
+                                //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);
+                                //2.璁剧疆钀ょ煶瀛愯处鍙风殑AccessToken鍒癝DK
+                                EZSDK.IOS.EZSDK.SharedInstance().SetEZAccessToken(ezChildAccessToken);
+
+                                //////3.鎵撳紑鎽勫儚澶磋澶囧垪琛ㄩ〉闈�
+                                //EZSDK.IOS.EZSDK.SharedInstance().Go2EZvizMonitor();
+
+                                //EZSDK.IOS.EZDeviceInfo info = new EZSDK.IOS.EZDeviceInfo();
+                                //info.de
+                                //EZSDK.IOS.EZSDK.Play(info);
+
+                                //2023骞�03鏈�29鏃�13:08:35 淇敼
+                                Foundation.NSObject[] nSObject = new Foundation.NSObject[list.Count];
+                                for (int i = 0; i < list.Count; i++)
+                                {
+                                    string strValue = list[i];
+                                    nSObject[i] = new Foundation.NSString(strValue);
+                                }
+                                EZSDK.IOS.EZSDK.SharedInstance().ToEZDeviceListViewWithFilterTypes(nSObject);
+
+
+
+#else
+                                //Android
+                                //1.璁剧疆鎵�闇�娌充笢鐨則oken銆佸煙鍚嶅湴鍧�
+                                //2.璁剧疆钀ょ煶瀛愯处鍙风殑token
+                                //3.鎵撳紑鎽勫儚澶磋澶囧垪琛ㄩ〉闈�
+                                ((BaseActivity)Shared.Application.Activity).SetCamera(b =>
+                                {
+                                    if (b)
+                                    {
+                                        ((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,
+                                HttpUtil.APP_KEY, HttpUtil.SECRET_KEY);
+                                            Com.Videogo.Hdl.HDLEzvizSdk.Instance.JumpToCameraListActivity(Shared.Application.Activity, list);
+                                            //if (result)
+                                            //{
+                                            //    Android.Content.Intent intent = new Android.Content.Intent();
+                                            //    var bundle = new Android.OS.Bundle();
+                                            //    //浼犻�抧ame鍙傛暟涓簍inyphp
+                                            //    bundle.PutString("EzChildAccessToken", ezChildAccessToken);
+                                            //    bundle.PutString("HdlToken", UserInfo.Current.LoginTokenString);
+                                            //    bundle.PutString("Url", OnAppConfig.Instance.RequestHttpsHost);
+                                            //    bundle.PutString("EzvizAppKey", "1aa98a90489b4838b966b57018b4b04b");
+                                            //    bundle.PutInt("Platform", 1);
+                                            //    bundle.PutString("HomeId", DB_ResidenceData.Instance.CurrentRegion.id);
+                                            //    intent.PutExtras(bundle);
+                                            //    intent.SetComponent(new Android.Content.ComponentName(Shared.Application.Activity, "com.videogo.MainActivity"));
+                                            //    Shared.Application.Activity.StartActivity(intent);
+                                            //}
+                                        }, "android.permission.RECORD_AUDIO");
+
+                                    }
+                                });
+#endif
+
+
+                            }
+
+                        });
+                    }
+                    else
+                    {
+                        if (result.Code != "-1")
+                            IMessageCommon.Current.ShowErrorInfoAlter(result.Code);
+                    }
+                }
+                catch (Exception ex)
+                {
+                }
+                finally
+                {
+                    Application.RunOnMainThread(() =>
+                    {
+                        if (waitPage != null)
+                        {
+                            waitPage.RemoveFromParent();
+                            waitPage = null;
+                        }
+                    });
+                }
+            })
+            { IsBackground = true }.Start();
+        }
+
+#endregion
     }
 }

--
Gitblit v1.8.0