using System; using System.Collections.Generic; using System.Net.NetworkInformation; using System.Net; using System.Text; using Shared.SimpleControl; namespace Shared { public class API { public static long PingServerAddress (string serverAddress) { long mRoundtripTime = 2000; try { //serverAddress = "www.baidu.com"; Ping pingSender = new Ping (); PingOptions options = new PingOptions (); // Use the default Ttl value which is 128, // but change the fragmentation behavior. options.Ttl = 150; options.DontFragment = true; // Create a buffer of 32 bytes of data to be transmitted. //string data = "a"; byte [] buffer = Encoding.ASCII.GetBytes (string.Empty); PingReply reply = pingSender.Send (serverAddress, 2000, buffer, options); if (reply.Status == IPStatus.Success) { Console.WriteLine ("Address: {0}", reply.Address.ToString ()); Console.WriteLine ("RoundTrip time: {0}", reply.RoundtripTime); Console.WriteLine ("Time to live: {0}", reply.Options.Ttl); Console.WriteLine ("Don't fragment: {0}", reply.Options.DontFragment); Console.WriteLine ("Buffer size: {0}", reply.Buffer.Length); mRoundtripTime = reply.RoundtripTime; } } catch (Exception ex) { System.Console.WriteLine ($"Ping catch:{ex.ToString()}"); } return mRoundtripTime; //Console.ReadKey (); } # region EmqMqtt 部分 //***************************EmqMqtt 部分******************************** public static string API_HangZhouHdlCloudApi = "https://global.hdlcontrol.com/HangZhouHdlCloudApi/EmqMqtt/"; /// /// 客户端确定选择Emq服务器(默认没有选择则使用中国Emq服务器) /// Connection /// public static string ConfirmSelectEmqRegion = API_HangZhouHdlCloudApi + "ConfirmSelectEmqRegion"; /// /// 客户端获取关联的所有成员帐号信息 /// Connection /// public static string GetShareMemberInfoPagger = API_HangZhouHdlCloudApi + "GetShareMemberInfoPagger"; /// /// 客户端获取连接云端Mqtt信息 /// Connection /// public static string GetConnMqttInfo = API_HangZhouHdlCloudApi + "GetConnMqttInfo"; /// /// 获取分享者Mqtt远程控制信息 /// Connection /// public static string GetShareMemberConnMqttInfo = API_HangZhouHdlCloudApi + "ShareMemberConnMqttInfo"; /// /// 获取所有区Emq服务器信息列表 /// Connection /// public static string GetAllRegionEmqServerList = API_HangZhouHdlCloudApi + "GetAllRegionEmqServerList"; #endregion } #region RequestObj 部分 /// /// BaseRequestObj /// [System.Serializable] public class BaseRequestObj { public string RequestVersion = MainPage.CodeIDString; public string RequestSource = MainPage.RequestSource; public string LoginAccessToken; } [System.Serializable] public class ConfirmSelectEmqRegionRequestObj: BaseRequestObj { /// /// EMQ服务器Id /// public string EmqServerId; } #endregion #region ResponseData 部分 [Serializable] public class EmqServerInfoRes { public string Id { get; set; } public string EmqDomainOrIp { get; set; } public bool IsCurrentSelect { get; set; } } [Serializable] public class EmqServerListInfoRes { public List PageData = new List (); } public class FindCityObj { /// /// 城市ID /// public string Cid; /// /// /// public string Location; /// /// 城市 /// public string City; /// /// /// public string Province; /// /// /// public string Country; /// /// /// public string TimeZone; } public class GetWeatherObj { public string Temperature; /// /// /// public string Humidity; /// /// /// public string PM25; /// /// /// public string Weather; } /// /// 提交极光推送ID /// public class AddRegIDObj { public string RegID; public string Alias; public string Account; /// /// 推送APP标识 /// 0 HDL ON /// 1 ZigBee /// 2 Control In /// public int UserMode; } /// /// 提交刷新网关远程连接密码 /// public class UpdateRemoteSwitchPasswordObj { public string Token; public string MAC; public string Password; } /// /// 推送TokenID /// public class RegIDObj { public string RegID; } #endregion }