ddmaster 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +1 -3
- package/package.json +1 -1
- package/testserverlist.js +34 -51
package/index.js
CHANGED
package/package.json
CHANGED
package/testserverlist.js
CHANGED
|
@@ -1,59 +1,42 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
console.log(`\nНашёл ${targetNick} на сервере ${server.info.name} (${server.addresses[0]}), карта: ${server.info.map.name}`);
|
|
15
|
-
found = true;
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
});
|
|
19
|
-
if (!found) {
|
|
20
|
-
console.log(`\nИгрок ${targetNick} не найден.`);
|
|
21
|
-
}
|
|
22
|
-
} catch (error) {
|
|
23
|
-
console.error('Ошибка:', error);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
async function getAllDDNetServersIPv4WithPorts() {
|
|
28
|
-
try {
|
|
29
|
-
const response = await fetch('https://master1.ddnet.org/ddnet/15/servers.json');
|
|
30
|
-
if (!response.ok) throw new Error(`Ошибка при запросе: ${response.status}`);
|
|
31
|
-
|
|
32
|
-
const { servers } = await response.json();
|
|
33
|
-
const ipv4WithPorts = [];
|
|
34
|
-
|
|
35
|
-
for (const server of servers) {
|
|
36
|
-
server.addresses.forEach(addr => {
|
|
37
|
-
// ищем только IPv4 с портом
|
|
38
|
-
const match = addr.match(/(\d{1,3}(\.\d{1,3}){3}:\d+)/);
|
|
39
|
-
if (match) ipv4WithPorts.push(match[1]);
|
|
40
|
-
});
|
|
1
|
+
/**
|
|
2
|
+
* Делает запрос на мастер сервер ДДНета.
|
|
3
|
+
* @returns Сервера ДДНета но в сыром виде.
|
|
4
|
+
*/
|
|
5
|
+
async function getrawDDNetServers() {
|
|
6
|
+
try {
|
|
7
|
+
const response = await fetch('https://master1.ddnet.org/ddnet/15/servers.json');
|
|
8
|
+
if (!response.ok) throw new Error(`Ошибка при запросе: ${response.status}`);
|
|
9
|
+
const data = await response.json();
|
|
10
|
+
return data;
|
|
11
|
+
} catch (error) {
|
|
12
|
+
console.error(error);
|
|
13
|
+
return null;
|
|
41
14
|
}
|
|
15
|
+
}
|
|
42
16
|
|
|
43
|
-
|
|
44
|
-
|
|
17
|
+
/**
|
|
18
|
+
* Делает запрос на мастер сервер ДДНета.
|
|
19
|
+
* @returns Сервера ДДНета если все пошло хорошо.
|
|
20
|
+
*/
|
|
21
|
+
async function getDDNetServers() {
|
|
22
|
+
try {
|
|
23
|
+
const response = await fetch('https://master1.ddnet.org/ddnet/15/servers.json');
|
|
24
|
+
if (!response.ok) throw new Error(`Ошибка при запросе: ${response.status}`);
|
|
25
|
+
|
|
26
|
+
const { servers } = await response.json();
|
|
27
|
+
const ipv4WithPorts = [];
|
|
28
|
+
|
|
29
|
+
for (const server of servers) {
|
|
30
|
+
server.addresses.forEach(addr => {
|
|
31
|
+
const match = addr.match(/(\d{1,3}(\.\d{1,3}){3}:\d+)/);
|
|
32
|
+
if (match) ipv4WithPorts.push(match[1]);
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
return [...new Set(ipv4WithPorts)];
|
|
45
36
|
} catch (err) {
|
|
46
37
|
console.error('Ошибка:', err.message);
|
|
47
38
|
return [];
|
|
48
39
|
}
|
|
49
40
|
}
|
|
50
41
|
|
|
51
|
-
|
|
52
|
-
const fs = require('fs');
|
|
53
|
-
|
|
54
|
-
if (require.main === module) getAllDDNetServersIPv4WithPorts().then(addresses => {
|
|
55
|
-
fs.writeFileSync('servers.json', JSON.stringify(addresses, null, 2), 'utf-8');
|
|
56
|
-
console.log('Список серверов сохранён в servers.txt');
|
|
57
|
-
});
|
|
58
|
-
|
|
59
|
-
module.exports = { getAllDDNetServersIPv4WithPorts }
|
|
42
|
+
module.exports = { getDDNetServers, getrawDDNetServers }
|