Skip to content

Commit 70422dc

Browse files
committed
初次提交
1 parent 033f30b commit 70422dc

13 files changed

+1432
-0
lines changed

.DS_Store

6 KB
Binary file not shown.

.gitignore

+2
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,5 @@
33
################################################################################
44

55
/DDNS.Core/bin
6+
/DDNS.Core/obj
7+
/.vs/DDNS.Core

DDNS.Core.sln

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
2+
Microsoft Visual Studio Solution File, Format Version 12.00
3+
# Visual Studio 15
4+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DDNS.Core", "DDNS.Core\DDNS.Core.csproj", "{B3817579-4329-4C01-A6BA-12F4C734FC47}"
5+
EndProject
6+
Global
7+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
8+
Debug|Any CPU = Debug|Any CPU
9+
Release|Any CPU = Release|Any CPU
10+
EndGlobalSection
11+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
12+
{B3817579-4329-4C01-A6BA-12F4C734FC47}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
13+
{B3817579-4329-4C01-A6BA-12F4C734FC47}.Debug|Any CPU.Build.0 = Debug|Any CPU
14+
{B3817579-4329-4C01-A6BA-12F4C734FC47}.Release|Any CPU.ActiveCfg = Release|Any CPU
15+
{B3817579-4329-4C01-A6BA-12F4C734FC47}.Release|Any CPU.Build.0 = Release|Any CPU
16+
EndGlobalSection
17+
EndGlobal

DDNS.Core/.DS_Store

6 KB
Binary file not shown.

DDNS.Core/DDNS.Core.csproj

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
3+
<PropertyGroup>
4+
<OutputType>Exe</OutputType>
5+
<TargetFramework>netcoreapp3.1</TargetFramework>
6+
</PropertyGroup>
7+
8+
<ItemGroup>
9+
<Folder Include="Utils\" />
10+
<Folder Include="Plugin\" />
11+
<Folder Include="Model\" />
12+
<Folder Include="Model\DNSPod\" />
13+
</ItemGroup>
14+
<ItemGroup>
15+
<PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
16+
</ItemGroup>
17+
<ProjectExtensions><VisualStudio><UserProperties config_1json__JsonSchema="" /></VisualStudio></ProjectExtensions>
18+
</Project>

DDNS.Core/Model/ConfigModel.cs

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
using System;
2+
using System.Collections.Generic;
3+
4+
namespace DDNS.Core.Model
5+
{
6+
public class ConfigModel
7+
{
8+
public int ThreadSleep { get; set; }
9+
public List<ConfigItem> Config { get; set; }
10+
}
11+
public class ConfigItem
12+
{
13+
/// <summary>
14+
/// 是否启用
15+
/// </summary>
16+
public bool IsEnable { get; set; }
17+
/// <summary>
18+
/// 备注信息可以随便写
19+
/// </summary>
20+
public string remark { get; set; }
21+
public string id { get; set; }
22+
public string token { get; set; }
23+
/// <summary>
24+
/// dnspod 或 alidns 或 dnscom 或 cloudflare 或 he 或 huaweidns 或 callback
25+
/// </summary>
26+
public string dnsType { get; set; }
27+
public List<ipItem> ipv4 { get; set; }
28+
public List<ipItem> ipv6 { get; set; }
29+
public int ttl { get; set; }
30+
}
31+
32+
public class ipItem {
33+
public string domain { get; set; }
34+
public string sub_domain { get; set; }
35+
}
36+
}

DDNS.Core/Model/DNSPod/InDNSPodVO.cs

+71
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
using System;
2+
namespace DDNS.Core.Model.DNSPod
3+
{
4+
public class InDNSPodVO
5+
{
6+
/// <summary>
7+
/// token后台生成的密钥
8+
/// </summary>
9+
public string login_token { get; set; }
10+
/// <summary>
11+
/// 域名, 域名ID和域名提交其中一个即可。
12+
/// </summary>
13+
public string domain { get; set; }
14+
/// <summary>
15+
/// 域名ID, 域名ID和域名提交其中一个即可。
16+
/// </summary>
17+
public string domain_id { get; set; }
18+
/// <summary>
19+
/// 子域名,如果指定则只返回此子域名的记录。
20+
/// </summary>
21+
public string sub_domain { get; set; }
22+
/// <summary>
23+
/// 记录开始的偏移,第一条记录为 0,依次类推(仅当指定 length 参数时才生效)。
24+
/// </summary>
25+
public string offset { get; set; }
26+
/// <summary>
27+
/// 共要获取的记录数量的最大值,比如最多获取20条,则为20,最大3000。
28+
/// </summary>
29+
public string length { get; set; }
30+
/// <summary>
31+
/// 记录类型,通过API记录类型获得,大写英文,比如:A。
32+
/// </summary>
33+
public string record_type { get; set; }
34+
/// <summary>
35+
/// 记录线路,通过API记录线路获得,中文,比如:默认。
36+
/// </summary>
37+
public string record_line { get; set; }
38+
/// <summary>
39+
/// 线路的ID,通过API记录线路获得,英文字符串,比如:10=1。需要获取特定线路的解析记录时,record_line 和 record_line_id 二者传其一即可,系统优先取 record_line_id 。
40+
/// </summary>
41+
public string record_line_id { get; set; }
42+
/// <summary>
43+
/// 搜索的关键字,如果指定则只返回符合该关键字的记录, 指定 keyword 后系统忽略查询参数 sub_domain,record_type,record_line,record_line_id 。
44+
/// </summary>
45+
public string keyword { get; set; }
46+
/// <summary>
47+
/// 记录ID。
48+
/// </summary>
49+
public string record_id { get; set; }
50+
/// <summary>
51+
/// 记录值, 如 IP:200.200.200.200, CNAME: cname.dnspod.com., MX: mail.dnspod.com. 。
52+
/// </summary>
53+
public string value { get; set; }
54+
/// <summary>
55+
/// MX优先级, 当记录类型是 MX 时有效,范围1-20。
56+
/// </summary>
57+
public int mx { get; set; }
58+
/// <summary>
59+
/// TTL,范围1-604800,不同等级域名最小值不同。
60+
/// </summary>
61+
public int ttl { get; set; }
62+
/// <summary>
63+
/// 记录状态,默认为”enable”,如果传入”disable”,解析不会生效,也不会验证负载均衡的限制。
64+
/// </summary>
65+
public string status { get; set; }
66+
/// <summary>
67+
/// 权重信息,0到100的整数。仅企业 VIP 域名可用,0 表示关闭,留空或者不传该参数,表示不设置权重信息。
68+
/// </summary>
69+
public string weight { get; set; }
70+
}
71+
}

DDNS.Core/Model/DNSPod/OutDNSPodVO.cs

+165
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,165 @@
1+
using System;
2+
using System.Collections.Generic;
3+
4+
namespace DDNS.Core.Model.DNSPod
5+
{
6+
public class OutDNSPodVO
7+
{
8+
public Status status { get; set; }
9+
public Domain domain { get; set; }
10+
public Info info { get; set; }
11+
public List<Records> records { get; set; }
12+
public Record record { get; set; }
13+
}
14+
public class Status
15+
{
16+
/// <summary>
17+
///
18+
/// </summary>
19+
public string code { get; set; }
20+
/// <summary>
21+
///
22+
/// </summary>
23+
public string message { get; set; }
24+
/// <summary>
25+
///
26+
/// </summary>
27+
public DateTime created_at { get; set; }
28+
}
29+
30+
public class Domain
31+
{
32+
/// <summary>
33+
/// 域名ID,即为 domain_id
34+
/// </summary>
35+
public string id { get; set; }
36+
/// <summary>
37+
/// 域名
38+
/// </summary>
39+
public string name { get; set; }
40+
/// <summary>
41+
/// punycode 转码之后的域名
42+
/// </summary>
43+
public string punycode { get; set; }
44+
/// <summary>
45+
/// 域名等级,详见 Domain.List 或 Domain.Info 接口
46+
/// </summary>
47+
public string grade { get; set; }
48+
/// <summary>
49+
/// 域名所有者
50+
/// </summary>
51+
public string owner { get; set; }
52+
/// <summary>
53+
///
54+
/// </summary>
55+
public string ext_status { get; set; }
56+
/// <summary>
57+
/// 记录的 TTL 值
58+
/// </summary>
59+
public int ttl { get; set; }
60+
/// <summary>
61+
/// 域名等级对应的ns服务器地址
62+
/// </summary>
63+
public List<string> dnspod_ns { get; set; }
64+
}
65+
66+
public class Info
67+
{
68+
/// <summary>
69+
/// 指定域名下所有记录的总数
70+
/// </summary>
71+
public string sub_domains { get; set; }
72+
/// <summary>
73+
/// 指定域名下符合查询条件的记录总数
74+
/// </summary>
75+
public string record_total { get; set; }
76+
/// <summary>
77+
/// 返回的 records 列表里的记录数目
78+
/// </summary>
79+
public string records_num { get; set; }
80+
}
81+
82+
public class Records
83+
{
84+
/// <summary>
85+
/// 记录ID编号
86+
/// </summary>
87+
public string id { get; set; }
88+
/// <summary>
89+
/// 子域名(主机记录)
90+
/// </summary>
91+
public string name { get; set; }
92+
/// <summary>
93+
/// 解析记录的线路, 详见 Record.Line 接口
94+
/// </summary>
95+
public string line { get; set; }
96+
/// <summary>
97+
/// 解析记录的线路ID,详见 Record.Line 接口
98+
/// </summary>
99+
public string line_id { get; set; }
100+
/// <summary>
101+
/// 记录类型, 详见 Record.Type 接口
102+
/// </summary>
103+
public string type { get; set; }
104+
/// <summary>
105+
/// 记录的 TTL 值
106+
/// </summary>
107+
public string ttl { get; set; }
108+
/// <summary>
109+
/// 记录值
110+
/// </summary>
111+
public string value { get; set; }
112+
/// <summary>
113+
///
114+
/// </summary>
115+
public string weight { get; set; }
116+
/// <summary>
117+
/// 记录的 MX 记录值, 非 MX 记录类型,默认为 0
118+
/// </summary>
119+
public string mx { get; set; }
120+
/// <summary>
121+
/// 记录状态 “0”: 禁用 “1”: 启用
122+
/// </summary>
123+
public string enabled { get; set; }
124+
/// <summary>
125+
/// 系统内部标识状态, 开发者可忽略
126+
/// </summary>
127+
public string status { get; set; }
128+
/// <summary>
129+
/// 该记录的D监控状态
130+
///“Ok”: 服务器正常
131+
///“Warn”: 该记录有报警, 服务器返回 4XX
132+
///“Down”: 服务器宕机
133+
///“”: 该记录未开启D监控
134+
/// </summary>
135+
public string monitor_status { get; set; }
136+
/// <summary>
137+
/// 记录备注
138+
/// </summary>
139+
public string remark { get; set; }
140+
/// <summary>
141+
/// 记录最后更新时间
142+
/// </summary>
143+
public DateTime updated_on { get; set; }
144+
/// <summary>
145+
/// 是否开通网站安全中心 “yes”: 已经开启 “no”: 未开启
146+
/// </summary>
147+
public string use_aqb { get; set; }
148+
}
149+
150+
public class Record
151+
{
152+
/// <summary>
153+
/// 记录ID, 即为 record_id。
154+
/// </summary>
155+
public string id { get; set; }
156+
/// <summary>
157+
/// 子域名(主机记录)
158+
/// </summary>
159+
public string name { get; set; }
160+
/// <summary>
161+
/// 域名记录的状态。
162+
/// </summary>
163+
public string status { get; set; }
164+
}
165+
}

0 commit comments

Comments
 (0)