64 lines
1.9 KiB
Swift
64 lines
1.9 KiB
Swift
//
|
|
// SystemConfig.swift
|
|
// sdlan
|
|
//
|
|
// Created by 安礼成 on 2024/6/3.
|
|
//
|
|
|
|
import Foundation
|
|
|
|
struct SystemConfig {
|
|
// 版本设置
|
|
static let version = 1
|
|
|
|
static let version_name = "1.1"
|
|
|
|
// 安装渠道
|
|
static let installedChannel = "MacAppStore"
|
|
|
|
// super 节点
|
|
//static let superHost = "118.178.229.213"
|
|
|
|
static let superHost = "punchnet.s5s8.com"
|
|
static let superPort = 18083
|
|
|
|
// stun探测服务
|
|
static let stunServers = "118.178.229.213:1265,1266;118.178.229.213:1265,1266"
|
|
//static let stunServers = "127.0.0.1:1265,1266;127.0.0.1:1265,1266"
|
|
|
|
static func getOptions(networkCode: String, token: String, clientId: String, hostname: String, noticePort: Int) -> [String:NSObject]? {
|
|
guard let superIp = DNSResolver.resolveAddrInfos(superHost).first else {
|
|
return nil
|
|
}
|
|
|
|
let options = [
|
|
"version:": version as NSObject,
|
|
"installed_channel": installedChannel as NSObject,
|
|
"client_id": clientId as NSObject,
|
|
"network_code": networkCode as NSObject,
|
|
"token": token as NSObject,
|
|
"super_ip": superIp as NSObject,
|
|
"super_port": superPort as NSObject,
|
|
"stun_servers": stunServers as NSObject,
|
|
"remote_dns_server": superIp as NSObject,
|
|
"hostname": hostname as NSObject,
|
|
"notice_port": noticePort as NSObject
|
|
]
|
|
|
|
return options
|
|
}
|
|
|
|
public static func getClientId() -> String {
|
|
let userDefaults = UserDefaults.standard
|
|
if let uuid = userDefaults.value(forKey: "gClientId") as? String {
|
|
return uuid
|
|
} else {
|
|
let uuid = UUID().uuidString.replacingOccurrences(of: "-", with: "").lowercased()
|
|
userDefaults.setValue(uuid, forKey: "gClientId")
|
|
|
|
return uuid
|
|
}
|
|
}
|
|
|
|
}
|