From 4dc8adc2bf82f1827324c4dbefbc4477202bc433 Mon Sep 17 00:00:00 2001
From: wxr <wxr@hdlchina.com.cn>
Date: 星期一, 23 九月 2024 16:53:33 +0800
Subject: [PATCH] 服务器自动选择;i
---
HDL_ON/Common/HDLCommon.cs | 230 +++++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 166 insertions(+), 64 deletions(-)
diff --git a/HDL_ON/Common/HDLCommon.cs b/HDL_ON/Common/HDLCommon.cs
index 14d03fa..601e1a7 100644
--- a/HDL_ON/Common/HDLCommon.cs
+++ b/HDL_ON/Common/HDLCommon.cs
@@ -7,6 +7,10 @@
using HDL_ON.Entity;
using System.Threading;
using HDL_ON.DriverLayer;
+#if __IOS__
+using Other;
+using Shared.IOS.HDLLinphoneSDK;
+#endif
namespace HDL_ON
{
/// <summary>
@@ -258,12 +262,12 @@
{
try
{
- MainPage.Log($"鎺ユ敹鍒版帹閫�");
+ //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();
}
@@ -275,14 +279,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;
@@ -305,26 +309,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();
@@ -348,10 +340,104 @@
//钀ょ煶鐚溂
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 { }
+
+
+
+#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
+
+
//HDL Linphone 鐙勮�愬厠
eSVideoInfo.HomeId = jpushMessageInfo.HomeId;
eSVideoInfo.callId = json["callId"].ToString();
@@ -359,6 +445,7 @@
eSVideoInfo.DeviceName = json["deviceName"].ToString();
eSVideoInfo.deviceSipAccount = json["deviceSipAccount"].ToString();
eSVideoInfo.spk = json["spk"].ToString();
+
//ShowAlert("鐙勮�愬厠闂ㄥ彛鏈哄懠鍙�");
//鎵撳紑鍛煎彨椤甸潰
@@ -386,13 +473,13 @@
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()))
{
//钀ょ煶闂ㄩ攣鎺ㄩ��
HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo);
@@ -450,8 +537,11 @@
switch (UserInfo.Current.AccountString)
{
case "464027401@qq.com":
+ case "649362315@qq.com":
case "13580507523":
case "15626203746":
+ case "18316672920":
+
return;
}
@@ -475,53 +565,63 @@
/// </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("閫�鍑鸿处鍙锋竻绌烘暟鎹�");
- //4.娉ㄩ攢HDLSIP璐﹀彿鐧诲綍 2021-08-20
- HDLLinphone.Current.LogoutAllAccount();
- 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.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();
- //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>
@@ -668,7 +768,7 @@
if (internetStatus == 0)//娌℃湁缃戠粶杩炴帴 0
{
MainPage.InternetStatus = 0;
- DAL.Mqtt.MqttClient.InitState();
+ //DAL.Mqtt.MqttClient.DisConnectRemote();//.InitState();
}
else if (internetStatus == 1)//3,4G鐨勭綉缁滆繛鎺� 1
{
@@ -754,7 +854,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)
//{
@@ -784,7 +885,8 @@
}
else
{
- IMessageCommon.Current.ShowErrorInfoAlter(result.Code);
+ if (result.Code != "-1")
+ IMessageCommon.Current.ShowErrorInfoAlter(result.Code);
}
}
catch (Exception ex)
--
Gitblit v1.8.0