using ProxySU_Core.ViewModels.Developers; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ProxySU_Core.Models { public class XraySettings : IParameters { public XraySettings() { Port = 443; UUID = Guid.NewGuid().ToString(); Types = new List { XrayType.VLESS_TCP_XTLS }; VLESS_WS_Path = "/vlessws"; VLESS_TCP_Path = "/vlesstcp"; VMESS_WS_Path = "/vmessws"; VMESS_TCP_Path = "/vmesstcp"; Trojan_TCP_Path = "/trojan"; TrojanPassword = Guid.NewGuid().ToString(); } /// /// 访问端口 /// public int Port { get; set; } /// /// UUID /// public string UUID { get; set; } /// /// vless ws路径 /// public string VLESS_WS_Path { get; set; } /// /// vless tcp路径 /// public string VLESS_TCP_Path { get; set; } /// /// vmess ws路径 /// public string VMESS_WS_Path { get; set; } /// /// vmess tcp路径 /// public string VMESS_TCP_Path { get; set; } /// /// trojan tcp路径 /// public string Trojan_TCP_Path { get; set; } /// /// trojan密码 /// public string TrojanPassword { get; set; } /// /// 域名 /// public string Domain { get; set; } /// /// 伪装域名 /// public string MaskDomain { get; set; } /// /// 安装类型 /// public List Types { get; set; } public string GetPath(XrayType type) { switch (type) { case XrayType.VLESS_TCP_TLS: return VLESS_TCP_Path; case XrayType.VLESS_TCP_XTLS: return VLESS_TCP_Path; case XrayType.VLESS_WS_TLS: return VLESS_WS_Path; case XrayType.VMESS_TCP_TLS: return VMESS_TCP_Path; case XrayType.VMESS_WS_TLS: return VMESS_WS_Path; case XrayType.Trojan_TCP_TLS: return Trojan_TCP_Path; default: return string.Empty; } } } public enum XrayType { VLESS_TCP_TLS, VLESS_TCP_XTLS, VLESS_WS_TLS, VMESS_TCP_TLS, VMESS_WS_TLS, Trojan_TCP_TLS } }