Merge remote-tracking branch 'remote/master' into feature/add-xml-support-to-http-monitors

# Conflicts:
#	server/database.js
#	server/model/monitor.js
This commit is contained in:
Faruk Genç 2023-01-25 20:20:11 +03:00
commit 9329ec9234
52 changed files with 1616 additions and 806 deletions

View File

@ -32,15 +32,18 @@ Yes or no, it depends on what you will try to do. Since I don't want to waste yo
Here are some references:
✅ Usually Accept:
- Bug/Security fix
- Bug fix
- Security fix
- Adding notification providers
- Adding new language files (You should go to https://weblate.kuma.pet for existing languages)
- Adding new language keys: `$t("...")`
⚠️ Discussion First
- Large pull requests
- New features
❌ Won't Merge
- Translations (You can now translate on https://weblate.kuma.pet)
- A dedicated pr for translating existing languages (You can now translate on https://weblate.kuma.pet)
- Do not pass auto test
- Any breaking changes
- Duplicated pull request

View File

@ -1,7 +1,9 @@
# Uptime Kuma
<a target="_blank" href="https://github.com/louislam/uptime-kuma"><img src="https://img.shields.io/github/stars/louislam/uptime-kuma" /></a> <a target="_blank" href="https://hub.docker.com/r/louislam/uptime-kuma"><img src="https://img.shields.io/docker/pulls/louislam/uptime-kuma" /></a> <a target="_blank" href="https://hub.docker.com/r/louislam/uptime-kuma"><img src="https://img.shields.io/docker/v/louislam/uptime-kuma/latest?label=docker%20image%20ver." /></a> <a target="_blank" href="https://github.com/louislam/uptime-kuma"><img src="https://img.shields.io/github/last-commit/louislam/uptime-kuma" /></a> <a target="_blank" href="https://opencollective.com/uptime-kuma"><img src="https://opencollective.com/uptime-kuma/total/badge.svg?label=Open%20Collective%20Backers&color=brightgreen" /></a>
[![GitHub Sponsors](https://img.shields.io/github/sponsors/louislam?label=GitHub%20Sponsors)](https://github.com/sponsors/louislam)
[![GitHub Sponsors](https://img.shields.io/github/sponsors/louislam?label=GitHub%20Sponsors)](https://github.com/sponsors/louislam) <a href="https://weblate.kuma.pet/engage/uptime-kuma/">
<img src="https://weblate.kuma.pet/widgets/uptime-kuma/-/svg-badge.svg" alt="Translation status" />
</a>
<div align="center" width="100%">
<img src="./public/icon.svg" width="128" alt="" />
@ -26,7 +28,7 @@ It is a temporary live demo, all data will be deleted after 10 minutes. Use the
* Fancy, Reactive, Fast UI/UX
* Notifications via Telegram, Discord, Gotify, Slack, Pushover, Email (SMTP), and [90+ notification services, click here for the full list](https://github.com/louislam/uptime-kuma/tree/master/src/components/notifications)
* 20 second intervals
* [Multi Languages](https://github.com/louislam/uptime-kuma/tree/master/src/languages)
* [Multi Languages](https://github.com/louislam/uptime-kuma/tree/master/src/lang)
* Multiple status pages
* Map status pages to specific domains
* Ping chart
@ -171,7 +173,7 @@ Check out the latest beta release here: https://github.com/louislam/uptime-kuma/
If you want to report a bug or request a new feature, feel free to open a [new issue](https://github.com/louislam/uptime-kuma/issues).
### Translations
If you want to translate Uptime Kuma into your language, please visit [Weblate](https://weblate.kuma.pet).
If you want to translate Uptime Kuma into your language, please visit [Weblate Readme](https://github.com/louislam/uptime-kuma/blob/master/src/lang/README.md).
Feel free to correct my grammar in this README, source code, or wiki, as my mother language is not English and my grammar is not that great.

View File

@ -0,0 +1,5 @@
BEGIN TRANSACTION;
ALTER TABLE monitor
ADD game VARCHAR(255);
COMMIT

View File

@ -0,0 +1,5 @@
-- You should not modify if this have pushed to Github, unless it does serious wrong with the db.
BEGIN TRANSACTION;
ALTER TABLE monitor
ADD packet_size INTEGER DEFAULT 56 NOT NULL;
COMMIT;

756
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -88,6 +88,7 @@
"express-basic-auth": "~1.2.1",
"express-static-gzip": "~2.1.7",
"form-data": "~4.0.0",
"gamedig": "^4.0.5",
"http-graceful-shutdown": "~3.1.7",
"http-proxy-agent": "~5.0.0",
"https-proxy-agent": "~5.0.1",

View File

@ -65,7 +65,9 @@ class Database {
"patch-grpc-monitor.sql": true,
"patch-add-radius-monitor.sql": true,
"patch-monitor-add-resend-interval.sql": true,
"patch-ping-packet-size.sql": true,
"patch-maintenance-table2.sql": true,
"patch-add-gamedig-monitor.sql": true,
"patch-http-body-encoding.sql": true
};

View File

@ -18,6 +18,7 @@ const { CacheableDnsHttpAgent } = require("../cacheable-dns-http-agent");
const { DockerHost } = require("../docker");
const Maintenance = require("./maintenance");
const { UptimeCacheList } = require("../uptime-cache-list");
const Gamedig = require("gamedig");
/**
* status:
@ -86,6 +87,7 @@ class Monitor extends BeanModel {
expiryNotification: this.isEnabledExpiryNotification(),
ignoreTls: this.getIgnoreTls(),
upsideDown: this.isUpsideDown(),
packetSize: this.packetSize,
maxredirects: this.maxredirects,
accepted_statuscodes: this.getAcceptedStatuscodes(),
dns_resolve_type: this.dns_resolve_type,
@ -108,6 +110,7 @@ class Monitor extends BeanModel {
grpcEnableTls: this.getGrpcEnableTls(),
radiusCalledStationId: this.radiusCalledStationId,
radiusCallingStationId: this.radiusCallingStationId,
game: this.game,
httpBodyEncoding: this.httpBodyEncoding
};
@ -386,7 +389,7 @@ class Monitor extends BeanModel {
bean.status = UP;
} else if (this.type === "ping") {
bean.ping = await ping(this.hostname);
bean.ping = await ping(this.hostname, this.packetSize);
bean.msg = "";
bean.status = UP;
} else if (this.type === "dns") {
@ -496,13 +499,28 @@ class Monitor extends BeanModel {
bean.msg = res.data.response.servers[0].name;
try {
bean.ping = await ping(this.hostname);
bean.ping = await ping(this.hostname, this.packetSize);
} catch (_) { }
} else {
throw new Error("Server not found on Steam");
}
} else if (this.type === "gamedig") {
try {
const state = await Gamedig.query({
type: this.game,
host: this.hostname,
port: this.port,
givenPortOnly: true,
});
bean.msg = state.name;
bean.status = UP;
bean.ping = state.ping;
} catch (e) {
throw new Error(e.message);
}
} else if (this.type === "docker") {
log.debug(`[${this.name}] Prepare Options for Axios`);
log.debug("monitor", `[${this.name}] Prepare Options for Axios`);
const dockerHost = await R.load("docker_host", this.docker_host);
@ -528,7 +546,7 @@ class Monitor extends BeanModel {
options.baseURL = DockerHost.patchDockerURL(dockerHost._dockerDaemon);
}
log.debug(`[${this.name}] Axios Request`);
log.debug("monitor", `[${this.name}] Axios Request`);
let res = await axios.request(options);
if (res.data.State.Running) {
bean.status = UP;

View File

@ -689,12 +689,14 @@ let needSetup = false;
bean.retryInterval = monitor.retryInterval;
bean.resendInterval = monitor.resendInterval;
bean.hostname = monitor.hostname;
bean.game = monitor.game;
bean.maxretries = monitor.maxretries;
bean.port = parseInt(monitor.port);
bean.keyword = monitor.keyword;
bean.ignoreTls = monitor.ignoreTls;
bean.expiryNotification = monitor.expiryNotification;
bean.upsideDown = monitor.upsideDown;
bean.packetSize = monitor.packetSize;
bean.maxredirects = monitor.maxredirects;
bean.accepted_statuscodes_json = JSON.stringify(monitor.accepted_statuscodes);
bean.dns_resolve_type = monitor.dns_resolve_type;

View File

@ -2,6 +2,30 @@ const { log } = require("../../src/util");
const { Settings } = require("../settings");
const { sendInfo } = require("../client");
const { checkLogin } = require("../util-server");
const GameResolver = require("gamedig/lib/GameResolver");
let gameResolver = new GameResolver();
let gameList = null;
/**
* Get a game list via GameDig
* @returns {any[]}
*/
function getGameList() {
if (!gameList) {
gameList = gameResolver._readGames().games.sort((a, b) => {
if ( a.pretty < b.pretty ) {
return -1;
}
if ( a.pretty > b.pretty ) {
return 1;
}
return 0;
});
} else {
return gameList;
}
}
module.exports.generalSocketHandler = (socket, server) => {
@ -17,4 +41,11 @@ module.exports.generalSocketHandler = (socket, server) => {
}
});
socket.on("getGameList", async (callback) => {
callback({
ok: true,
gameList: getGameList(),
});
});
};

View File

@ -79,15 +79,16 @@ exports.tcping = function (hostname, port) {
/**
* Ping the specified machine
* @param {string} hostname Hostname / address of machine
* @param {number} [size=56] Size of packet to send
* @returns {Promise<number>} Time for ping in ms rounded to nearest integer
*/
exports.ping = async (hostname) => {
exports.ping = async (hostname, size = 56) => {
try {
return await exports.pingAsync(hostname);
return await exports.pingAsync(hostname, false, size);
} catch (e) {
// If the host cannot be resolved, try again with ipv6
if (e.message.includes("service not known")) {
return await exports.pingAsync(hostname, true);
return await exports.pingAsync(hostname, true, size);
} else {
throw e;
}
@ -98,14 +99,16 @@ exports.ping = async (hostname) => {
* Ping the specified machine
* @param {string} hostname Hostname / address of machine to ping
* @param {boolean} ipv6 Should IPv6 be used?
* @param {number} [size = 56] Size of ping packet to send
* @returns {Promise<number>} Time for ping in ms rounded to nearest integer
*/
exports.pingAsync = function (hostname, ipv6 = false) {
exports.pingAsync = function (hostname, ipv6 = false, size = 56) {
return new Promise((resolve, reject) => {
ping.promise.probe(hostname, {
v6: ipv6,
min_reply: 1,
deadline: 10,
packetSize: size,
}).then((res) => {
// If ping failed, it will set field to unknown
if (res.alive) {

View File

@ -37,6 +37,7 @@ const languageList = {
"uk-UA": "Український",
"th-TH": "ไทย",
"el-GR": "Ελληνικά",
"yue": "繁體中文 (廣東話 / 粵語)",
};
let messages = {

15
src/lang/README.md Normal file
View File

@ -0,0 +1,15 @@
# How to translate
(2023-01-24 Updated)
1. Go to [https://weblate.kuma.pet](https://weblate.kuma.pet/projects/uptime-kuma/uptime-kuma/)
# How to add a new language in the dropdown
1. Add your language at https://weblate.kuma.pet/projects/uptime-kuma/uptime-kuma/
2. Find the language code (You can find it at the end of the URL)
3. Go to https://github.com/louislam/uptime-kuma/blob/master/src/i18n.js and click `Edit` icon
4. Add your language at the end of `languageList`, format: `"zh-TW": "繁體中文 (台灣)",`
5. Commit and make a pull request for me to approve
If you do not have programming skills, let me know in [the issues section](https://github.com/louislam/uptime-kuma/issues). I will assist you. 😏

View File

@ -681,4 +681,4 @@
"dataRetentionTimeError": "يجب أن تكون فترة الاستبقاء 0 أو أكبر",
"infiniteRetention": "ضبط على 0 للاحتفاظ لا نهائي.",
"confirmDeleteTagMsg": "هل أنت متأكد من أنك تريد حذف هذه العلامة؟ لن يتم حذف الشاشات المرتبطة بهذه العلامة."
}
}

View File

@ -9,7 +9,7 @@
"acceptedStatusCodesDescription": "Изберете статус кодове, които да се считат за успешен отговор.",
"passwordNotMatchMsg": "Повторената парола не съвпада.",
"notificationDescription": "Моля, задайте известието към монитор(и), за да функционира.",
"keywordDescription": "Търси ключова дума в чист html или JSON отговор - чувствителна е към регистъра",
"keywordDescription": "Търси ключова дума в чист HTML или JSON отговор - чувствителна е към регистъра.",
"pauseDashboardHome": "Пауза",
"deleteMonitorMsg": "Наистина ли желаете да изтриете този монитор?",
"deleteNotificationMsg": "Наистина ли желаете да изтриете това известие за всички монитори?",
@ -22,7 +22,7 @@
"confirmClearStatisticsMsg": "Наистина ли желаете да изтриете всички статистически данни?",
"importHandleDescription": "Изберете 'Пропусни съществуващите', ако желаете да пропуснете всеки монитор или известие със същото име. 'Презапис' ще изтрие всеки съществуващ монитор и известие.",
"confirmImportMsg": "Сигурни ли сте, че желаете импортирането на архива? Моля, уверете се, че сте избрали правилната опция за импортиране.",
"twoFAVerifyLabel": "Моля, въведете вашия токен код, за да проверите дали 2FA работи",
"twoFAVerifyLabel": "Моля, въведете вашия токен код, за да проверите дали 2FA работи:",
"tokenValidSettingsMsg": "Токен кодът е валиден! Вече можете да запазите настройките за 2FA.",
"confirmEnableTwoFAMsg": "Сигурни ли сте, че желаете да активирате 2FA?",
"confirmDisableTwoFAMsg": "Сигурни ли сте, че желаете да изключите 2FA?",
@ -98,7 +98,7 @@
"Enable Auth": "Активирай удостоверяване",
"disableauth.message1": "Сигурни ли сте, че желаете да <strong>изключите удостоверяването</strong>?",
"disableauth.message2": "Използва се в случаите, когато <strong>има настроен алтернативен метод за удостоверяване</strong> преди Uptime Kuma, например Cloudflare Access, Authelia или друг механизъм за удостоверяване.",
"Please use this option carefully!": "Моля, използвайте с повишено внимание.",
"Please use this option carefully!": "Моля, използвайте с повишено внимание!",
"Logout": "Изход от профила",
"Leave": "Отказ",
"I understand, please disable": "Разбирам. Моля, изключи",
@ -109,7 +109,7 @@
"Password": "Парола",
"Remember me": "Запомни ме",
"Login": "Вход",
"No Monitors, please": "Все още няма монитори. Моля, добавете поне ",
"No Monitors, please": "Все още няма монитори. Моля, добавете поне",
"add one": "един.",
"Notification Type": "Тип известие",
"Email": "Имейл",
@ -154,7 +154,7 @@
"Token": "Токен код",
"Show URI": "Покажи URI",
"Tags": "Етикети",
"Add New below or Select...": "Добавете нов по-долу или изберете...",
"Add New below or Select...": "Добавете нов по-долу или изберете",
"Tag with this name already exist.": "Етикет с това име вече съществува.",
"Tag with this value already exist.": "Етикет с тази стойност вече съществува.",
"color": "цвят",
@ -167,7 +167,7 @@
"Indigo": "Индиго",
"Purple": "Лилаво",
"Pink": "Розово",
"Search...": "Търси...",
"Search...": "Търси",
"Avg. Ping": "Ср. пинг",
"Avg. Response": "Ср. отговор",
"Entry Page": "Основна страница",
@ -202,7 +202,7 @@
"Status Pages": "Статус страници",
"Primary Base URL": "Основен базов URL адрес",
"Push URL": "Генериран Push URL адрес",
"needPushEvery": "Необходимо е да извършвате заявка към този URL адрес на всеки {0} секунди",
"needPushEvery": "Необходимо е да извършвате заявка към този URL адрес на всеки {0} секунди.",
"pushOptionalParams": "Допълнителни, но не задължителни параметри: {0}",
"defaultNotificationName": "Моето {notification} известие ({number})",
"here": "тук",
@ -230,7 +230,7 @@
"wayToGetDiscordURL": "Може да създадете, от меню \"Настройки на сървъра\" -> \"Интеграции\" -> \"Уеб куки\" -> \"Нова уеб кука\"",
"Bot Display Name": "Име на бота, което да се показва",
"Prefix Custom Message": "Модифицирано обръщение",
"Hello @everyone is...": "Здравейте, {'@'}everyone е...",
"Hello @everyone is...": "Здравейте, {'@'}everyone е",
"Webhook URL": "Уеб кука URL адрес",
"wayToGetTeamsURL": "Можете да научите как се създава URL адрес за уеб кука {0}.",
"Number": "Номер",
@ -316,8 +316,8 @@
"Security": "Сигурност",
"Steam API Key": "Steam API ключ",
"Shrink Database": "Редуцирай базата данни",
"Pick a RR-Type...": "Изберете вида на ресурсния запис за мониториране...",
"Pick Accepted Status Codes...": "Изберете статус кодове, които да се считат за успешен отговор...",
"Pick a RR-Type...": "Изберете вида на ресурсния запис за мониториране",
"Pick Accepted Status Codes...": "Изберете статус кодове, които да се считат за успешен отговор",
"Default": "По подразбиране",
"HTTP Options": "HTTP Опции",
"Create Incident": "Създаване на инцидент",
@ -543,7 +543,7 @@
"Bark Group": "Bark група",
"Bark Sound": "Bark звук",
"HTTP Headers": "HTTP хедъри",
"Trust Proxy": "Trust Proxy",
"Trust Proxy": "Доверено Proxy",
"HomeAssistant": "Home Assistant",
"RadiusSecret": "Radius таен код",
"RadiusSecretDescription": "Споделен таен код между клиент и сървър",
@ -561,10 +561,10 @@
"Container Name / ID": "Име на контейнер / ID",
"Docker Host": "Docker хост",
"Docker Hosts": "Docker хостове",
"trustProxyDescription": "Trust 'X-Forwarded-*' headers. Ако искате да получавате правилния IP адрес на клиента, а Uptime Kuma е зад системи като Nginx или Apache, трябва да разрешите тази опция.",
"trustProxyDescription": "Trust 'X-Forwarded-*' headers. Ако искате да получавате правилния IP адрес на клиента, а Uptime Kuma е зад системи като Nginx или Apache, трябва да разрешите тази опция.",
"Examples": "Примери",
"Home Assistant URL": "Home Assistant URL адрес",
"Long-Lived Access Token": "Long-Lived Access Token",
"Long-Lived Access Token": "Long-Lived токен за достъп",
"Long-Lived Access Token can be created by clicking on your profile name (bottom left) and scrolling to the bottom then click Create Token. ": "Long-Lived Access Token можете да създадете, като кликнете върху името на профила си (долу ляво) и превъртите до най-долу, след това кликнете върху Създаване на токен. ",
"Notification Service": "Услуга за известяване",
"default: notify all devices": "по подразбиране: извести всички устройства",
@ -576,7 +576,7 @@
"Then choose an action, for example switch the scene to where an RGB light is red.": "След което изберете действие, например да превключите сцената, където RGB светлината е червена.",
"Frontend Version": "Фронтенд версия",
"Frontend Version do not match backend version!": "Фронтенд версията не съвпада с Бекенд версията!",
"Base URL": "Базов URL адрес",
"Base URL": "Базов URL адрес",
"goAlertInfo": "GoAlert е приложение с отворен код за планиране на повиквания, автоматизирани ескалации и известия (като SMS или гласови повиквания). Автоматично ангажирайте точния човек, по точния начин и в точното време! {0}",
"goAlertIntegrationKeyInfo": "Вземете общ API интеграционен ключ за услугата във формат \"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\" обикновено стойността на параметъра token на копирания URL адрес.",
"goAlert": "GoAlert",
@ -586,10 +586,10 @@
"statusMaintenance": "Поддръжка",
"Schedule maintenance": "Планиране на поддръжка",
"Affected Monitors": "Засегнати монитори",
"Pick Affected Monitors...": "Изберете засегнати монитори...",
"Pick Affected Monitors...": "Изберете засегнатите монитори…",
"Start of maintenance": "Стартирай поддръжка",
"All Status Pages": "Всички статус страници",
"Select status pages...": "Изберете статус страници...",
"Select status pages...": "Изберете статус страници",
"recurringIntervalMessage": "Изпълнявай ежедневно | Изпълнявай всеки {0} дни",
"affectedMonitorsDescription": "Изберете монитори, засегнати от текущата поддръжка",
"affectedStatusPages": "Покажи това съобщение за поддръжка на избрани статус страници",
@ -674,5 +674,14 @@
"Kook": "Kook",
"wayToGetKookBotToken": "Създайте приложение и вземете вашия бот токен на {0}",
"wayToGetKookGuildID": "Превключете в 'Developer Mode' в 'Kook' настройките, след което десен клик върху 'guild' за да вземете неговото 'ID'",
"Guild ID": "Guild ID"
}
"Guild ID": "Guild ID",
"Help": "Помощ",
"Game": "игрови",
"Custom": "Потребителски",
"infiniteRetention": "Задайте стойност 0 за безкрайно съхранение.",
"Monitor": "Монитор | Монитори",
"dataRetentionTimeError": "Периодът на съхранение трябва да е 0 или по-голям",
"confirmDeleteTagMsg": "Сигурни ли сте, че желаете да изтриете този таг? Мониторите, свързани с него, няма да бъдат изтрити.",
"promosmsAllowLongSMS": "Позволи дълъг SMS",
"Packet Size": "Размер на пакет"
}

View File

@ -23,7 +23,7 @@
"affectedMonitorsDescription": "Vyberte dohledy, které budou ovlivněny touto údržbou",
"affectedStatusPages": "Zobrazit tuto zprávu o údržbě na vybraných stavových stránkách",
"atLeastOneMonitor": "Vyberte alespoň jeden dotčený dohled",
"passwordNotMatchMsg": "Hesla se neshodují",
"passwordNotMatchMsg": "Hesla se neshodují.",
"notificationDescription": "Pro zajištění funkčnosti oznámení je nutné jej přiřadit dohledu.",
"keywordDescription": "Vyhledat klíčové slovo v prosté odpovědi HTML nebo JSON. Při hledání se rozlišuje velikost písmen.",
"pauseDashboardHome": "Pozastaveno",
@ -57,7 +57,7 @@
"List": "Seznam",
"Add": "Přidat",
"Add New Monitor": "Přidat nový dohled",
"Quick Stats": "Rychlé statistiky",
"Quick Stats": "Rychlý přehled",
"Up": "Běží",
"Down": "Nedostupný",
"Pending": "Čekám",
@ -122,7 +122,7 @@
"Enable Auth": "Povolit ověřování",
"disableauth.message1": "Opravdu chcete <strong>deaktivovat autentifikaci</strong>?",
"disableauth.message2": "Tato možnost je určena pro případy, kdy <strong>máte autentifikaci zajištěnou třetí stranou</strong> ještě před přístupem do Uptime Kuma, například prostřednictvím Cloudflare Access.",
"Please use this option carefully!": "Používejte ji prosím s rozmyslem.",
"Please use this option carefully!": "Používejte ji prosím s rozmyslem!",
"Logout": "Odhlásit",
"Leave": "Odejít",
"I understand, please disable": "Rozumím, chci ji deaktivovat",
@ -139,7 +139,7 @@
"Email": "E-mail",
"Test": "Test",
"Certificate Info": "Informace o certifikátu",
"Resolver Server": "Resolver Server",
"Resolver Server": "Server Resolveru",
"Resource Record Type": "Typ záznamu o prostředku",
"Last Result": "Poslední výsledek",
"Create your admin account": "Vytvořit účet administrátora",
@ -236,7 +236,7 @@
"smtpCC": "Kopie",
"smtpBCC": "Skrytá kopie",
"discord": "Discord",
"Discord Webhook URL": "Discord Webhook URL",
"Discord Webhook URL": "URL Webhooku Discord",
"wayToGetDiscordURL": "Získáte tak, že přejdete do Nastavení serveru - > Integrace - > Vytvořit Webhook",
"Bot Display Name": "Zobrazované jméno robota",
"Prefix Custom Message": "Předpona vlastní zprávy",
@ -250,7 +250,7 @@
"Recipients": "Příjemci",
"needSignalAPI": "Musíte mít Signal klienta s REST API.",
"wayToCheckSignalURL": "Pro zobrazení instrukcí, jak službu nastavit, přejděte na následující adresu:",
"signalImportant": "Důležité V seznamu příjemců není možné současně použít skupiny a čísla!",
"signalImportant": "Důležité: v seznamu příjemců není možné současně použít skupiny a čísla!",
"gotify": "Gotify",
"Application Token": "Token aplikace",
"Server URL": "URL adresa serveru",
@ -266,7 +266,7 @@
"rocket.chat": "Rocket.Chat",
"pushover": "Pushover",
"pushy": "Pushy",
"PushByTechulus": "Push by Techulus",
"PushByTechulus": "Push od Techulus",
"octopush": "Octopush",
"promosms": "PromoSMS",
"clicksendsms": "ClickSend SMS",
@ -323,7 +323,7 @@
"promosmsPhoneNumber": "Telefonní číslo (polští příjemci mohou vynechat telefonní předvolbu)",
"promosmsSMSSender": "Odesílatel SMS: Předem zaregistrovaný název nebo jeden z výchozích: InfoSMS, SMS Info, MaxSMS, INFO, SMS",
"promosmsAllowLongSMS": "Povolit dlouhé SMS",
"Feishu WebHookUrl": "Feishu WebHookURL",
"Feishu WebHookUrl": "URL Webhooku Feishu",
"matrixHomeserverURL": "URL adresa domácího serveru (s http(s):// a volitelně portem)",
"Internal Room Id": "ID interní místnosti",
"matrixDesc1": "ID interní místnosti naleznete v Matrix klientovi v rozšířeném nastavení místnosti. Mělo by být ve tvaru !QMdRCpUIfLwsfjxye6:home.server.",
@ -341,7 +341,7 @@
"One record": "Jeden záznam",
"steamApiKeyDescription": "Pro monitorování Steam Game Serveru je nutné zadat Steam Web-API klíč. Svůj API klíč získáte na následující stránce: ",
"Current User": "Aktuálně přihlášený uživatel",
"topic": "Topic",
"topic": "Téma",
"topicExplanation": "MQTT topic, který chcete sledovat",
"successMessage": "Zpráva o úspěchu",
"successMessageExplanation": "MQTT zpráva považovaná za úspěšnou",
@ -415,17 +415,17 @@
"smtpDkimheaderFieldNames": "Podepisovat tyto hlavičky (volitelné)",
"smtpDkimskipFields": "Nepodepisovat tyto hlavičky (volitelné)",
"wayToGetPagerDutyKey": "Získat jej můžete v sekci Service -> Service Directory -> (vyberte službu) -> Integrations -> Add integration. Následně vyhledejte \"Events API V2\". Více informace naleznete na adrese {0}",
"Integration Key": "Integration Key",
"Integration URL": "Integration URL",
"Auto resolve or acknowledged": "Auto resolve or acknowledged",
"do nothing": "do nothing",
"auto acknowledged": "auto acknowledged",
"auto resolve": "auto resolve",
"Integration Key": "Integrační klíč",
"Integration URL": "Integrační URL",
"Auto resolve or acknowledged": "Automatické řešení nebo potvrzení",
"do nothing": "nedělat nic",
"auto acknowledged": "automaticky uznáno",
"auto resolve": "automatické řešení",
"gorush": "Gorush",
"alerta": "Alerta",
"alertaApiEndpoint": "API Endpoint",
"alertaEnvironment": "Prostředí",
"alertaApiKey": "API Key",
"alertaApiKey": "API klíč",
"alertaAlertState": "Stav upozornění",
"alertaRecoverState": "Stav obnovení",
"deleteStatusPageMsg": "Opravdu chcete odstranit tuto stavovou stránku?",
@ -440,17 +440,17 @@
"Certificate Chain": "Řetězec certifikátu",
"Valid": "Platný",
"Invalid": "Neplatný",
"AccessKeyId": "AccessKey ID",
"SecretAccessKey": "AccessKey Secret",
"PhoneNumbers": "PhoneNumbers",
"AccessKeyId": "ID přístupového klíče",
"SecretAccessKey": "Tajemství přístupového klíče",
"PhoneNumbers": "Telefonní čísla",
"TemplateCode": "TemplateCode",
"SignName": "SignName",
"Sms template must contain parameters: ": "Sms template must contain parameters: ",
"Sms template must contain parameters: ": "Šablona SMS musí obsahovat parametry: ",
"Bark Endpoint": "Bark Endpoint",
"Bark Group": "Bark Group",
"Bark Sound": "Bark Sound",
"Bark Group": "Skupina Bark",
"Bark Sound": "Bark zvuk",
"WebHookUrl": "WebHookUrl",
"SecretKey": "SecretKey",
"SecretKey": "Tajný klíč",
"For safety, must use secret key": "Z důvodu bezpečnosti použijte secret key",
"Device Token": "Token zařízení",
"Platform": "Platforma",
@ -459,8 +459,8 @@
"Huawei": "Huawei",
"High": "Vysoký",
"Retry": "Opakovat",
"Topic": "Topic",
"WeCom Bot Key": "WeCom Bot Key",
"Topic": "Téma",
"WeCom Bot Key": "Klíč WeCom Bota",
"Setup Proxy": "Nastavit proxy",
"Proxy Protocol": "Protokol proxy",
"Proxy Server": "Proxy Server",
@ -521,15 +521,15 @@
"Domain Names": "Názvy domén",
"signedInDisp": "Přihlášen jako {0}",
"signedInDispDisabled": "Ověření je vypnuté.",
"RadiusSecret": "Radius Secret",
"RadiusSecret": "Tajemství Radius",
"RadiusSecretDescription": "Sdílený tajný klíč mezi klientem a serverem",
"RadiusCalledStationId": "ID volaného zařízení",
"RadiusCalledStationIdDescription": "Identifikátor volaného zařízení",
"RadiusCallingStationId": "ID volajícího zařízení",
"RadiusCallingStationIdDescription": "Identifikátor volajícího zařízení",
"Certificate Expiry Notification": "Oznámení na blížící se konec platnosti certifikátu",
"API Username": "API Username",
"API Key": "API Key",
"API Username": "Uživatelské jména API",
"API Key": "API klíč",
"Recipient Number": "Číslo příjemce",
"From Name/Number": "Jméno/číslo odesílatele",
"Leave blank to use a shared sender number.": "Ponechte prázdné, pokud chcete použít číslo sdíleného příjemce.",
@ -541,19 +541,19 @@
"promosmsLogin": "API Login Name",
"promosmsPassword": "API Password",
"pushoversounds pushover": "Pushover (výchozí)",
"pushoversounds bike": "Bike",
"pushoversounds bike": "Kolo",
"pushoversounds bugle": "Bugle",
"pushoversounds cashregister": "Cash Register",
"pushoversounds cashregister": "Pokladna",
"pushoversounds classical": "Classical",
"pushoversounds cosmic": "Cosmic",
"pushoversounds cosmic": "Kosmický",
"pushoversounds falling": "Falling",
"pushoversounds gamelan": "Gamelan",
"pushoversounds incoming": "Incoming",
"pushoversounds intermission": "Intermission",
"pushoversounds magic": "Magic",
"pushoversounds mechanical": "Mechanical",
"pushoversounds pianobar": "Piano Bar",
"pushoversounds siren": "Siren",
"pushoversounds incoming": "Příchozí",
"pushoversounds intermission": "Přestávka",
"pushoversounds magic": "Kouzlo",
"pushoversounds mechanical": "Mechanika",
"pushoversounds pianobar": "Barové piano",
"pushoversounds siren": "Siréna",
"pushoversounds spacealarm": "Space Alarm",
"pushoversounds tugboat": "Tug Boat",
"pushoversounds alien": "Alien Alarm (dlouhý)",
@ -563,7 +563,7 @@
"pushoversounds updown": "Up Down (dlouhý)",
"pushoversounds vibrate": "Pouze vibrace",
"pushoversounds none": "Žádný (ticho)",
"pushyAPIKey": "Secret API Key",
"pushyAPIKey": "Tajný API klíč",
"pushyToken": "Token zařízení",
"Show update if available": "Upozornit na aktualizace, pokud jsou k dispozici",
"Also check beta release": "Kontrolovat také dostupnost beta verzí",
@ -584,7 +584,7 @@
"certificationExpiryDescription": "Aktivovat oznámení nad HTTPS dohledy, pokud platnost TLS certifikátu vyprší za:",
"Setup Docker Host": "Nastavit Docker hostitele",
"Connection Type": "Typ připojení",
"Docker Daemon": "Docker Daemon",
"Docker Daemon": "Démon Dockeru",
"deleteDockerHostMsg": "Opravdu chcete odstranit tohoto docker hostitele ze všech dohledů?",
"socket": "Socket",
"tcp": "TCP / HTTP",
@ -592,7 +592,7 @@
"Container Name / ID": "ID / název kontejneru",
"Docker Host": "Docker hostitel",
"Docker Hosts": "Docker hostitelé",
"ntfy Topic": "ntfy Topic",
"ntfy Topic": "ntfy Téma",
"Domain": "Doména",
"Workstation": "Pracovní stanice",
"disableCloudflaredNoAuthMsg": "Používáte režim bez ověření, heslo není vyžadováno.",
@ -621,8 +621,8 @@
"Optional": "Volitelný",
"squadcast": "Squadcast",
"SendKey": "SendKey",
"SMSManager API Docs": "SMSManager API Docs ",
"Gateway Type": "Gateway Typ",
"SMSManager API Docs": "Dokumentace SMSManager API ",
"Gateway Type": "Typ brány",
"SMSManager": "SMSManager",
"You can divide numbers with": "Čísla můžete oddělit pomocí",
"or": "nebo",
@ -645,7 +645,7 @@
"lastDay3": "3. poslední den v měsíci",
"lastDay4": "4. poslední den v měsíci",
"No Maintenance": "Žádná údržba",
"pauseMaintenanceMsg": "Opravdu chcete pozastavit údržbu?",
"pauseMaintenanceMsg": "Opravdu chcete údržbu pozastavit?",
"maintenanceStatus-under-maintenance": "Údržba",
"maintenanceStatus-inactive": "Neaktivní",
"maintenanceStatus-scheduled": "Naplánováno",
@ -680,5 +680,7 @@
"Specific Monitor Type": "Konkrétní typ dohledu",
"dataRetentionTimeError": "Doba pro uchování musí být větší nebo rovna 0",
"infiniteRetention": "Pro nekonečný záznam zadejte 0.",
"confirmDeleteTagMsg": "Opravdu chcete odstranit tento štíte? Provedením této akce nedojde k odstranění dohledů, které jej mají přiřazeny."
}
"confirmDeleteTagMsg": "Opravdu chcete odstranit tento štítek? Provedením této akce nedojde k odstranění dohledů, které jej mají přiřazeny.",
"Help": "Nápověda",
"Game": "Hra"
}

View File

@ -96,7 +96,7 @@
"Certificate Info": "Certifikatoplysninger",
"keywordDescription": "Søg efter et søgeord i almindelig HTML- eller JSON -output. Bemærk, at der skelnes mellem store og små bogstaver.",
"deleteMonitorMsg": "Er du sikker på, at du vil slette overvågeren?",
"deleteNotificationMsg": "Er du sikker på, at du vil slette denne underretning for alle overvågere? ",
"deleteNotificationMsg": "Er du sikker på, at du vil slette denne underretning for alle overvågere?",
"resolverserverDescription": "Cloudflare er standardserveren, den kan til enhver tid ændres.",
"Resolver Server": "Navne-server",
"rrtypeDescription": "Vælg den type RR, du vil overvåge.",
@ -350,6 +350,5 @@
"serwersmsAPIUser": "API Brugernavn (inkl. webapi_ prefix)",
"serwersmsAPIPassword": "API Adgangskode",
"serwersmsPhoneNumber": "Telefonnummer",
"serwersmsSenderName": "SMS Afsender Navn (registreret via kundeportal)",
"stackfield": "Stackfield"
}
"serwersmsSenderName": "SMS Afsender Navn (registreret via kundeportal)"
}

View File

@ -79,7 +79,7 @@
"Enable Auth": "Authentifizierung aktivieren",
"disableauth.message1": "Bist du sicher das du die <strong>Authentifizierung deaktivieren</strong> möchtest?",
"disableauth.message2": "Dies ist für Szenarien gedacht, <strong>in denen man eine externe Authentifizierung</strong> vor Uptime Kuma geschaltet hat, wie z.B. Cloudflare Access, Authelia oder andere Authentifizierungsmechanismen.",
"Please use this option carefully!": "Bitte mit Vorsicht nutzen.",
"Please use this option carefully!": "Bitte mit Vorsicht nutzen!",
"Logout": "Ausloggen",
"notificationDescription": "Benachrichtigungen müssen einem Monitor zugewiesen werden, damit diese funktionieren.",
"Leave": "Verlassen",
@ -150,7 +150,7 @@
"Token": "Token",
"Show URI": "URI anzeigen",
"Tags": "Tags",
"Add New below or Select...": "Einen bestehenden Tag auswählen oder neuen hinzufügen...",
"Add New below or Select...": "Einen bestehenden Tag auswählen oder neuen hinzufügen",
"Tag with this name already exist.": "Ein Tag mit diesem Namen existiert bereits.",
"Tag with this value already exist.": "Ein Tag mit diesem Wert existiert bereits.",
"color": "Farbe",
@ -163,7 +163,7 @@
"Indigo": "Indigo",
"Purple": "Lila",
"Pink": "Pink",
"Search...": "Suchen...",
"Search...": "Suchen",
"Heartbeat Retry Interval": "Überprüfungsintervall",
"Resend Notification if Down X times consequently": "Benachrichtigung erneut senden, wenn Inaktiv X mal hintereinander",
"retryCheckEverySecond": "Alle {0} Sekunden neu versuchen",
@ -234,7 +234,7 @@
"wayToGetDiscordURL": "Du kannst diese erhalten, indem du zu den Servereinstellungen gehst -> Integrationen -> Neuer Webhook",
"Bot Display Name": "Bot-Anzeigename",
"Prefix Custom Message": "Benutzerdefinierter Nachrichten Präfix",
"Hello @everyone is...": "Hallo {'@'}everyone ist...",
"Hello @everyone is...": "Hallo {'@'}everyone ist",
"Webhook URL": "Webhook URL",
"wayToGetTeamsURL": "Wie eine Webhook-URL erstellt werden kann, erfährst du {0}.",
"Number": "Nummer",
@ -317,8 +317,8 @@
"Security": "Sicherheit",
"Steam API Key": "Steam API Key",
"Shrink Database": "Datenbank verkleinern",
"Pick a RR-Type...": "Wähle ein RR-Typ aus...",
"Pick Accepted Status Codes...": "Wähle akzeptierte Statuscodes aus...",
"Pick a RR-Type...": "Wähle ein RR-Typ aus",
"Pick Accepted Status Codes...": "Wähle akzeptierte Statuscodes aus",
"Default": "Standard",
"HTTP Options": "HTTP Optionen",
"Create Incident": "Vorfall erstellen",
@ -565,7 +565,7 @@
"Examples": "Beispiele",
"Home Assistant URL": "Home Assistant URL",
"Long-Lived Access Token": "Lange gültiges Access Token",
"Long-Lived Access Token can be created by clicking on your profile name (bottom left) and scrolling to the bottom then click Create Token. ": "Lange gültige Access Token können durch klicken auf den Profilnamen (unten links) und dann einen Klick auf Create Token am Ende erstellt werden. ",
"Long-Lived Access Token can be created by clicking on your profile name (bottom left) and scrolling to the bottom then click Create Token. ": "Lange gültige Access Token können durch klicken auf den Profilnamen (unten links) und dann einen Klick auf Create Token am Ende erstellt werden. ",
"Notification Service": "Benachrichtigungsdienst",
"default: notify all devices": "standard: Alle Geräte benachrichtigen",
"A list of Notification Services can be found in Home Assistant under \"Developer Tools > Services\" search for \"notification\" to find your device/phone name.": "Eine Liste der Benachrichtigungsdienste kann im Home Assistant unter \"Developer Tools > Services\" gefunden werden, wnen man nach \"notification\" sucht um den Geräte-/Telefonnamen zu finden.",
@ -580,10 +580,10 @@
"statusMaintenance": "Wartung",
"Schedule maintenance": "Geplante Wartung",
"Affected Monitors": "Betroffene Monitore",
"Pick Affected Monitors...": "Wähle betroffene Monitore...",
"Pick Affected Monitors...": "Wähle betroffene Monitore",
"Start of maintenance": "Beginn der Wartung",
"All Status Pages": "Alle Status Seiten",
"Select status pages...": "Wähle Status Seiten...",
"Select status pages...": "Wähle Status Seiten",
"recurringIntervalMessage": "einmal pro Tag ausgeführt | Wird alle {0} Tage ausgführt",
"affectedMonitorsDescription": "Wähle alle Monitore die von der Wartung betroffen sind",
"affectedStatusPages": "Zeige diese Nachricht auf ausgewählten Status Seiten",
@ -593,7 +593,7 @@
"goAlertInfo": "GoAlert ist eine Open-Source Applikation für Rufbereitschaftsplanung, automatische Eskalation und Benachrichtigung (z.B. SMS oder Telefonanrufe). Beauftragen Sie automatisch die richtige Person, auf die richtige Art und Weise und zum richtigen Zeitpunkt. {0}",
"goAlertIntegrationKeyInfo": "Bekommt einen generischen API Schlüssel in folgenden Format \"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\". Normalerweise entspricht dies dem Wert des Token aus der URL.",
"goAlert": "GoAlert",
"backupOutdatedWarning": "Veraltet: Eine menge Neuerungen sind eingeflossen und diese Funktion wurde etwas vernachlässigt worden. Es kann kein vollständiges Backup erstellt oder eingespielt werden.",
"backupOutdatedWarning": "Veraltet: Eine menge Neuerungen sind eingeflossen und diese Funktion wurde etwas vernachlässigt worden. Es kann kein vollständiges Backup erstellt oder eingespielt werden.",
"backupRecommend": "Bitte Backup das Volume oder den Ordner (./ data /) selbst.",
"Optional": "Optional",
"squadcast": "Squadcast",
@ -629,6 +629,5 @@
"maintenanceStatus-ended": "Ende",
"maintenanceStatus-unknown": "Unbekannt",
"Display Timezone": "Zeitzone anzeigen",
"Server Timezone": "Server Zeitzone",
"statusPageMaintenanceEndDate": "Ende"
}
"Server Timezone": "Server Zeitzone"
}

View File

@ -79,7 +79,7 @@
"Enable Auth": "Authentifizierung aktivieren",
"disableauth.message1": "Bist du sicher das du die <strong>Authentifizierung deaktivieren</strong> möchtest?",
"disableauth.message2": "Dies ist für Szenarien gedacht, <strong>in denen man eine externe Authentifizierung</strong> vor Uptime Kuma geschaltet hat, wie z.B. Cloudflare Access, Authelia oder andere Authentifizierungsmechanismen.",
"Please use this option carefully!": "Bitte mit Vorsicht nutzen.",
"Please use this option carefully!": "Bitte mit Vorsicht nutzen!",
"Logout": "Ausloggen",
"notificationDescription": "Benachrichtigungen müssen einem Monitor zugewiesen werden, damit diese funktionieren.",
"Leave": "Verlassen",
@ -150,7 +150,7 @@
"Token": "Token",
"Show URI": "URI anzeigen",
"Tags": "Tags",
"Add New below or Select...": "Einen bestehenden Tag auswählen oder neuen hinzufügen...",
"Add New below or Select...": "Einen bestehenden Tag auswählen oder neuen hinzufügen",
"Tag with this name already exist.": "Ein Tag mit diesem Namen existiert bereits.",
"Tag with this value already exist.": "Ein Tag mit diesem Wert existiert bereits.",
"color": "Farbe",
@ -163,7 +163,7 @@
"Indigo": "Indigo",
"Purple": "Lila",
"Pink": "Pink",
"Search...": "Suchen...",
"Search...": "Suchen",
"Heartbeat Retry Interval": "Überprüfungsintervall",
"Resend Notification if Down X times consequently": "Benachrichtigung erneut senden, wenn Inaktiv X mal hintereinander",
"retryCheckEverySecond": "Alle {0} Sekunden neu versuchen",
@ -234,7 +234,7 @@
"wayToGetDiscordURL": "Du kannst diese erhalten, indem du zu den Servereinstellungen gehst -> Integrationen -> Neuer Webhook",
"Bot Display Name": "Bot-Anzeigename",
"Prefix Custom Message": "Benutzerdefinierter Nachrichten Präfix",
"Hello @everyone is...": "Hallo {'@'}everyone ist...",
"Hello @everyone is...": "Hallo {'@'}everyone ist",
"Webhook URL": "Webhook URL",
"wayToGetTeamsURL": "Wie eine Webhook-URL erstellt werden kann, erfährst du {0}.",
"Number": "Nummer",
@ -317,8 +317,8 @@
"Security": "Sicherheit",
"Steam API Key": "Steam API Key",
"Shrink Database": "Datenbank verkleinern",
"Pick a RR-Type...": "Wähle ein RR-Typ aus...",
"Pick Accepted Status Codes...": "Wähle akzeptierte Statuscodes aus...",
"Pick a RR-Type...": "Wähle ein RR-Typ aus",
"Pick Accepted Status Codes...": "Wähle akzeptierte Statuscodes aus",
"Default": "Standard",
"HTTP Options": "HTTP Optionen",
"Create Incident": "Vorfall erstellen",
@ -565,7 +565,7 @@
"Examples": "Beispiele",
"Home Assistant URL": "Home Assistant URL",
"Long-Lived Access Token": "Lange gültiges Access Token",
"Long-Lived Access Token can be created by clicking on your profile name (bottom left) and scrolling to the bottom then click Create Token. ": "Lange gültige Access Token können durch klicken auf den Profilnamen (unten links) und dann einen Klick auf Create Token am Ende erstellt werden. ",
"Long-Lived Access Token can be created by clicking on your profile name (bottom left) and scrolling to the bottom then click Create Token. ": "Lange gültige Access Token können durch klicken auf den Profilnamen (unten links) und dann einen Klick auf Create Token am Ende erstellt werden. ",
"Notification Service": "Benachrichtigungsdienst",
"default: notify all devices": "standard: Alle Geräte benachrichtigen",
"A list of Notification Services can be found in Home Assistant under \"Developer Tools > Services\" search for \"notification\" to find your device/phone name.": "Eine Liste der Benachrichtigungsdienste kann im Home Assistant unter \"Developer Tools > Services\" gefunden werden, wnen man nach \"notification\" sucht um den Geräte-/Telefonnamen zu finden.",
@ -580,10 +580,10 @@
"statusMaintenance": "Wartung",
"Schedule maintenance": "Geplante Wartung",
"Affected Monitors": "Betroffene Monitore",
"Pick Affected Monitors...": "Wähle betroffene Monitore...",
"Pick Affected Monitors...": "Wähle betroffene Monitore",
"Start of maintenance": "Beginn der Wartung",
"All Status Pages": "Alle Status Seiten",
"Select status pages...": "Statusseiten auswählen...",
"Select status pages...": "Statusseiten auswählen",
"recurringIntervalMessage": "Einmal pro Tag ausgeführt | Wird alle {0} Tage ausgführt",
"affectedMonitorsDescription": "Wähle Monitore aus, die von der aktuellen Wartung betroffen sind",
"affectedStatusPages": "Diese Wartungsmeldung auf ausgewählten Statusseiten anzeigen",
@ -637,5 +637,11 @@
"Date and Time": "Datum und Zeit",
"DateTime Range": "Datums- und Zeitbereich",
"Strategy": "Strategie",
"statusPageMaintenanceEndDate": "Ende"
}
"statusPageMaintenanceEndDate": "Ende",
"Help": "Hilfe",
"Game": "Spiel",
"Custom": "Benutzerdefiniert",
"Enable DNS Cache": "DNS Cache aktivieren",
"Enable": "Aktivieren",
"Disable": "Deaktivieren"
}

View File

@ -584,4 +584,4 @@
"goAlert": "GoAlert",
"backupOutdatedWarning": "Καταργήθηκε: Επειδή προστέθηκαν πολλές δυνατότητες και αυτή η δυνατότητα δημιουργίας αντιγράφων ασφαλείας δεν διατηρείται πολη, δεν μπορεί να δημιουργήσει ή να επαναφέρει ένα πλήρες αντίγραφο ασφαλείας.",
"backupRecommend": "Παρακαλούμε δημιουργήστε αντίγραφα ασφαλείας του volume ή του φακέλου δεδομένων (./data/) απευθείας."
}
}

View File

@ -1,56 +1,14 @@
{
"languageName": "English",
"checkEverySecond": "Check every {0} seconds",
"retryCheckEverySecond": "Retry every {0} seconds",
"resendEveryXTimes": "Resend every {0} times",
"resendDisabled": "Resend disabled",
"retriesDescription": "Maximum retries before the service is marked as down and a notification is sent",
"ignoreTLSError": "Ignore TLS/SSL error for HTTPS websites",
"upsideDownModeDescription": "Flip the status upside down. If the service is reachable, it is DOWN.",
"maxRedirectDescription": "Maximum number of redirects to follow. Set to 0 to disable redirects.",
"enableGRPCTls": "Allow to send gRPC request with TLS connection",
"grpcMethodDescription": "Method name is convert to cammelCase format such as sayHello, check, etc.",
"acceptedStatusCodesDescription": "Select status codes which are considered as a successful response.",
"Maintenance": "Maintenance",
"statusMaintenance": "Maintenance",
"Schedule maintenance": "Schedule maintenance",
"Affected Monitors": "Affected Monitors",
"Pick Affected Monitors...": "Pick Affected Monitors...",
"Start of maintenance": "Start of maintenance",
"All Status Pages": "All Status Pages",
"Select status pages...": "Select status pages...",
"recurringIntervalMessage": "Run once every day | Run once every {0} days",
"affectedMonitorsDescription": "Select monitors that are affected by current maintenance",
"affectedStatusPages": "Show this maintenance message on selected status pages",
"atLeastOneMonitor": "Select at least one affected monitor",
"passwordNotMatchMsg": "The repeat password does not match.",
"notificationDescription": "Notifications must be assigned to a monitor to function.",
"keywordDescription": "Search keyword in plain HTML or JSON response. The search is case-sensitive.",
"pauseDashboardHome": "Pause",
"deleteMonitorMsg": "Are you sure want to delete this monitor?",
"deleteMaintenanceMsg": "Are you sure want to delete this maintenance?",
"deleteNotificationMsg": "Are you sure want to delete this notification for all monitors?",
"dnsPortDescription": "DNS server port. Defaults to 53. You can change the port at any time.",
"resolverserverDescription": "Cloudflare is the default server. You can change the resolver server anytime.",
"rrtypeDescription": "Select the RR type you want to monitor",
"pauseMonitorMsg": "Are you sure want to pause?",
"enableDefaultNotificationDescription": "This notification will be enabled by default for new monitors. You can still disable the notification separately for each monitor.",
"clearEventsMsg": "Are you sure want to delete all events for this monitor?",
"clearHeartbeatsMsg": "Are you sure want to delete all heartbeats for this monitor?",
"confirmClearStatisticsMsg": "Are you sure you want to delete ALL statistics?",
"importHandleDescription": "Choose 'Skip existing' if you want to skip every monitor or notification with the same name. 'Overwrite' will delete every existing monitor and notification.",
"confirmImportMsg": "Are you sure you want to import the backup? Please verify you've selected the correct import option.",
"twoFAVerifyLabel": "Please enter your token to verify 2FA:",
"tokenValidSettingsMsg": "Token is valid! You can now save the 2FA settings.",
"confirmEnableTwoFAMsg": "Are you sure you want to enable 2FA?",
"confirmDisableTwoFAMsg": "Are you sure you want to disable 2FA?",
"Settings": "Settings",
"Dashboard": "Dashboard",
"Help": "Help",
"New Update": "New Update",
"Language": "Language",
"Appearance": "Appearance",
"Theme": "Theme",
"General": "General",
"Game": "Game",
"Primary Base URL": "Primary Base URL",
"Version": "Version",
"Check Update On GitHub": "Check Update On GitHub",
@ -61,7 +19,13 @@
"Up": "Up",
"Down": "Down",
"Pending": "Pending",
"statusMaintenance": "Maintenance",
"Maintenance": "Maintenance",
"Unknown": "Unknown",
"General Monitor Type": "General Monitor Type",
"Passive Monitor Type": "Passive Monitor Type",
"Specific Monitor Type": "Specific Monitor Type",
"pauseDashboardHome": "Pause",
"Pause": "Pause",
"Name": "Name",
"Status": "Status",
@ -92,6 +56,14 @@
"Heartbeat Retry Interval": "Heartbeat Retry Interval",
"Resend Notification if Down X times consequently": "Resend Notification if Down X times consequently",
"Advanced": "Advanced",
"checkEverySecond": "Check every {0} seconds",
"retryCheckEverySecond": "Retry every {0} seconds",
"resendEveryXTimes": "Resend every {0} times",
"resendDisabled": "Resend disabled",
"retriesDescription": "Maximum retries before the service is marked as down and a notification is sent",
"ignoreTLSError": "Ignore TLS/SSL error for HTTPS websites",
"upsideDownModeDescription": "Flip the status upside down. If the service is reachable, it is DOWN.",
"maxRedirectDescription": "Maximum number of redirects to follow. Set to 0 to disable redirects.",
"Upside Down Mode": "Upside Down Mode",
"Max. Redirects": "Max. Redirects",
"Accepted Status Codes": "Accepted Status Codes",
@ -157,9 +129,12 @@
"Events": "Events",
"Heartbeats": "Heartbeats",
"Auto Get": "Auto Get",
"backupDescription": "You can backup all monitors and notifications into a JSON file.",
"backupDescription2": "Note: history and event data is not included.",
"backupDescription3": "Sensitive data such as notification tokens are included in the export file; please store export securely.",
"Schedule maintenance": "Schedule maintenance",
"Affected Monitors": "Affected Monitors",
"Pick Affected Monitors...": "Pick Affected Monitors…",
"Start of maintenance": "Start of maintenance",
"All Status Pages": "All Status Pages",
"Select status pages...": "Select status pages…",
"alertNoFile": "Please select a file to import.",
"alertWrongFileType": "Please select a JSON file.",
"Clear all statistics": "Clear all Statistics",
@ -178,7 +153,7 @@
"Token": "Token",
"Show URI": "Show URI",
"Tags": "Tags",
"Add New below or Select...": "Add New below or Select...",
"Add New below or Select...": "Add New below or Select",
"Tag with this name already exist.": "Tag with this name already exists.",
"Tag with this value already exist.": "Tag with this value already exists.",
"color": "Color",
@ -192,7 +167,7 @@
"Purple": "Purple",
"Pink": "Pink",
"Custom": "Custom",
"Search...": "Search...",
"Search...": "Search",
"Avg. Ping": "Avg. Ping",
"Avg. Response": "Avg. Response",
"Entry Page": "Entry Page",
@ -210,15 +185,6 @@
"defaultNotificationName": "My {notification} Alert ({number})",
"here": "here",
"Required": "Required",
"telegram": "Telegram",
"ZohoCliq": "ZohoCliq",
"Bot Token": "Bot Token",
"wayToGetTelegramToken": "You can get a token from {0}.",
"Chat ID": "Chat ID",
"supportTelegramChatID": "Support Direct Chat / Group / Channel's Chat ID",
"wayToGetTelegramChatID": "You can get your chat ID by sending a message to the bot and going to this URL to view the chat_id:",
"YOUR BOT TOKEN HERE": "YOUR BOT TOKEN HERE",
"chatIDNotFound": "Chat ID is not found; please send a message to this bot first",
"webhook": "Webhook",
"Post URL": "Post URL",
"Content Type": "Content Type",
@ -226,108 +192,14 @@
"webhookFormDataDesc": "{multipart} is good for PHP. The JSON will need to be parsed with {decodeFunction}",
"webhookAdditionalHeadersTitle": "Additional Headers",
"webhookAdditionalHeadersDesc": "Sets additional headers sent with the webhook.",
"smtp": "Email (SMTP)",
"secureOptionNone": "None / STARTTLS (25, 587)",
"secureOptionTLS": "TLS (465)",
"Ignore TLS Error": "Ignore TLS Error",
"From Email": "From Email",
"emailCustomSubject": "Custom Subject",
"To Email": "To Email",
"smtpCC": "CC",
"smtpBCC": "BCC",
"discord": "Discord",
"Discord Webhook URL": "Discord Webhook URL",
"wayToGetDiscordURL": "You can get this by going to Server Settings -> Integrations -> Create Webhook",
"Bot Display Name": "Bot Display Name",
"Prefix Custom Message": "Prefix Custom Message",
"Hello @everyone is...": "Hello {'@'}everyone is...",
"teams": "Microsoft Teams",
"Webhook URL": "Webhook URL",
"wayToGetTeamsURL": "You can learn how to create a webhook URL {0}.",
"wayToGetZohoCliqURL": "You can learn how to create a webhook URL {0}.",
"signal": "Signal",
"Number": "Number",
"Recipients": "Recipients",
"needSignalAPI": "You need to have a signal client with REST API.",
"wayToCheckSignalURL": "You can check this URL to view how to set one up:",
"signalImportant": "IMPORTANT: You cannot mix groups and numbers in recipients!",
"gotify": "Gotify",
"Application Token": "Application Token",
"Server URL": "Server URL",
"Priority": "Priority",
"slack": "Slack",
"Icon Emoji": "Icon Emoji",
"Channel Name": "Channel Name",
"Uptime Kuma URL": "Uptime Kuma URL",
"aboutWebhooks": "More info about Webhooks on: {0}",
"aboutChannelName": "Enter the channel name on {0} Channel Name field if you want to bypass the Webhook channel. Ex: #other-channel",
"aboutKumaURL": "If you leave the Uptime Kuma URL field blank, it will default to the Project GitHub page.",
"emojiCheatSheet": "Emoji cheat sheet: {0}",
"rocket.chat": "Rocket.Chat",
"pushover": "Pushover",
"pushy": "Pushy",
"PushByTechulus": "Push by Techulus",
"octopush": "Octopush",
"promosms": "PromoSMS",
"clicksendsms": "ClickSend SMS",
"lunasea": "LunaSea",
"apprise": "Apprise (Support 50+ Notification services)",
"GoogleChat": "Google Chat (Google Workspace only)",
"pushbullet": "Pushbullet",
"Kook": "Kook",
"wayToGetKookBotToken": "Create application and get your bot token at {0}",
"wayToGetKookGuildID": "Switch on 'Developer Mode' in Kook setting, and right click the guild to get its ID",
"Guild ID": "Guild ID",
"line": "Line Messenger",
"mattermost": "Mattermost",
"User Key": "User Key",
"Device": "Device",
"Message Title": "Message Title",
"Notification Sound": "Notification Sound",
"More info on:": "More info on: {0}",
"pushoverDesc1": "Emergency priority (2) has default 30 second timeout between retries and will expire after 1 hour.",
"pushoverDesc2": "If you want to send notifications to different devices, fill out Device field.",
"SMS Type": "SMS Type",
"octopushTypePremium": "Premium (Fast - recommended for alerting)",
"octopushTypeLowCost": "Low Cost (Slow - sometimes blocked by operator)",
"checkPrice": "Check {0} prices:",
"apiCredentials": "API credentials",
"octopushLegacyHint": "Do you use the legacy version of Octopush (2011-2020) or the new version?",
"Check octopush prices": "Check octopush prices {0}.",
"octopushPhoneNumber": "Phone number (intl format, eg : +33612345678) ",
"octopushSMSSender": "SMS Sender Name : 3-11 alphanumeric characters and space (a-zA-Z0-9)",
"LunaSea Device ID": "LunaSea Device ID",
"Apprise URL": "Apprise URL",
"Example:": "Example: {0}",
"Read more:": "Read more: {0}",
"Status:": "Status: {0}",
"Read more": "Read more",
"appriseInstalled": "Apprise is installed.",
"appriseNotInstalled": "Apprise is not installed. {0}",
"Access Token": "Access Token",
"Channel access token": "Channel access token",
"Line Developers Console": "Line Developers Console",
"lineDevConsoleTo": "Line Developers Console - {0}",
"Basic Settings": "Basic Settings",
"User ID": "User ID",
"Messaging API": "Messaging API",
"wayToGetLineChannelToken": "First access the {0}, create a provider and channel (Messaging API), then you can get the channel access token and user ID from the above mentioned menu items.",
"Icon URL": "Icon URL",
"aboutIconURL": "You can provide a link to a picture in \"Icon URL\" to override the default profile picture. Will not be used if Icon Emoji is set.",
"aboutMattermostChannelName": "You can override the default channel that the Webhook posts to by entering the channel name into \"Channel Name\" field. This needs to be enabled in the Mattermost Webhook settings. Ex: #other-channel",
"matrix": "Matrix",
"promosmsTypeEco": "SMS ECO - cheap but slow and often overloaded. Limited only to Polish recipients.",
"promosmsTypeFlash": "SMS FLASH - Message will automatically show on recipient device. Limited only to Polish recipients.",
"promosmsTypeFull": "SMS FULL - Premium tier of SMS, You can use your Sender Name (You need to register name first). Reliable for alerts.",
"promosmsTypeSpeed": "SMS SPEED - Highest priority in system. Very quick and reliable but costly (about twice of SMS FULL price).",
"promosmsPhoneNumber": "Phone number (for Polish recipient You can skip area codes)",
"promosmsSMSSender": "SMS Sender Name : Pre-registred name or one of defaults: InfoSMS, SMS Info, MaxSMS, INFO, SMS",
"promosmsAllowLongSMS": "Allow long SMS",
"Feishu WebHookUrl": "Feishu WebHookURL",
"matrixHomeserverURL": "Homeserver URL (with http(s):// and optionally port)",
"Internal Room Id": "Internal Room ID",
"matrixDesc1": "You can find the internal room ID by looking in the advanced section of the room settings in your Matrix client. It should look like !QMdRCpUIfLwsfjxye6:home.server.",
"matrixDesc2": "It is highly recommended you create a new user and do not use your own Matrix user's access token as it will allow full access to your account and all the rooms you joined. Instead, create a new user and only invite it to the room that you want to receive the notification in. You can get the access token by running {0}",
"Method": "Method",
"Body": "Body",
"Headers": "Headers",
@ -351,8 +223,8 @@
"Security": "Security",
"Steam API Key": "Steam API Key",
"Shrink Database": "Shrink Database",
"Pick a RR-Type...": "Pick a RR-Type...",
"Pick Accepted Status Codes...": "Pick Accepted Status Codes...",
"Pick a RR-Type...": "Pick a RR-Type",
"Pick Accepted Status Codes...": "Pick Accepted Status Codes",
"Default": "Default",
"HTTP Options": "HTTP Options",
"Create Incident": "Create Incident",
@ -386,48 +258,9 @@
"Cancel": "Cancel",
"Powered by": "Powered by",
"shrinkDatabaseDescription": "Trigger database VACUUM for SQLite. If your database is created after 1.10.0, AUTO_VACUUM is already enabled and this action is not needed.",
"serwersms": "SerwerSMS.pl",
"serwersmsAPIUser": "API Username (incl. webapi_ prefix)",
"serwersmsAPIPassword": "API Password",
"serwersmsPhoneNumber": "Phone number",
"serwersmsSenderName": "SMS Sender Name (registered via customer portal)",
"smseagle": "SMSEagle",
"smseagleTo": "Phone number(s)",
"smseagleGroup": "Phonebook group name(s)",
"smseagleContact": "Phonebook contact name(s)",
"smseagleRecipientType": "Recipient type",
"smseagleRecipient": "Recipient(s) (multiple must be separated with comma)",
"smseagleToken": "API Access token",
"smseagleUrl": "Your SMSEagle device URL",
"smseagleEncoding": "Send as Unicode",
"smseaglePriority": "Message priority (0-9, default = 0)",
"stackfield": "Stackfield",
"Customize": "Customize",
"Custom Footer": "Custom Footer",
"Custom CSS": "Custom CSS",
"smtpDkimSettings": "DKIM Settings",
"smtpDkimDesc": "Please refer to the Nodemailer DKIM {0} for usage.",
"documentation": "documentation",
"smtpDkimDomain": "Domain Name",
"smtpDkimKeySelector": "Key Selector",
"smtpDkimPrivateKey": "Private Key",
"smtpDkimHashAlgo": "Hash Algorithm (Optional)",
"smtpDkimheaderFieldNames": "Header Keys to sign (Optional)",
"smtpDkimskipFields": "Header Keys not to sign (Optional)",
"wayToGetPagerDutyKey": "You can get this by going to Service -> Service Directory -> (Select a service) -> Integrations -> Add integration. Here you can search for \"Events API V2\". More info {0}",
"Integration Key": "Integration Key",
"Integration URL": "Integration URL",
"Auto resolve or acknowledged": "Auto resolve or acknowledged",
"do nothing": "do nothing",
"auto acknowledged": "auto acknowledged",
"auto resolve": "auto resolve",
"gorush": "Gorush",
"alerta": "Alerta",
"alertaApiEndpoint": "API Endpoint",
"alertaEnvironment": "Environment",
"alertaApiKey": "API Key",
"alertaAlertState": "Alert State",
"alertaRecoverState": "Recover State",
"deleteStatusPageMsg": "Are you sure want to delete this status page?",
"Proxies": "Proxies",
"default": "Default",
@ -440,31 +273,6 @@
"Certificate Chain": "Certificate Chain",
"Valid": "Valid",
"Invalid": "Invalid",
"AccessKeyId": "AccessKey ID",
"SecretAccessKey": "AccessKey Secret",
"PhoneNumbers": "PhoneNumbers",
"TemplateCode": "TemplateCode",
"SignName": "SignName",
"Sms template must contain parameters: ": "Sms template must contain parameters: ",
"Bark Endpoint": "Bark Endpoint",
"Bark Group": "Bark Group",
"Bark Sound": "Bark Sound",
"WebHookUrl": "WebHookUrl",
"SecretKey": "SecretKey",
"For safety, must use secret key": "For safety, must use secret key",
"Device Token": "Device Token",
"Platform": "Platform",
"iOS": "iOS",
"Android": "Android",
"Huawei": "Huawei",
"High": "High",
"Retry": "Retry",
"Topic": "Topic",
"WeCom Bot Key": "WeCom Bot Key",
"Setup Proxy": "Setup Proxy",
"Proxy Protocol": "Proxy Protocol",
"Proxy Server": "Proxy Server",
"Proxy server has authentication": "Proxy server has authentication",
"User": "User",
"Installed": "Installed",
"Not installed": "Not installed",
@ -473,7 +281,6 @@
"Remove Token": "Remove Token",
"Start": "Start",
"Stop": "Stop",
"Uptime Kuma": "Uptime Kuma",
"Add New Status Page": "Add New Status Page",
"Slug": "Slug",
"Accept characters:": "Accept characters:",
@ -508,14 +315,6 @@
"Domain Name Expiry Notification": "Domain Name Expiry Notification",
"Proxy": "Proxy",
"Date Created": "Date Created",
"HomeAssistant": "Home Assistant",
"onebotHttpAddress": "OneBot HTTP Address",
"onebotMessageType": "OneBot Message Type",
"onebotGroupMessage": "Group",
"onebotPrivateMessage": "Private",
"onebotUserOrGroupId": "Group/User ID",
"onebotSafetyTips": "For safety, must set access token",
"PushDeer Key": "PushDeer Key",
"Footer Text": "Footer Text",
"Show Powered By": "Show Powered By",
"Domain Names": "Domain Names",
@ -530,41 +329,6 @@
"Certificate Expiry Notification": "Certificate Expiry Notification",
"API Username": "API Username",
"API Key": "API Key",
"Recipient Number": "Recipient Number",
"From Name/Number": "From Name/Number",
"Leave blank to use a shared sender number.": "Leave blank to use a shared sender number.",
"Octopush API Version": "Octopush API Version",
"Legacy Octopush-DM": "Legacy Octopush-DM",
"endpoint": "endpoint",
"octopushAPIKey": "\"API key\" from HTTP API credentials in control panel",
"octopushLogin": "\"Login\" from HTTP API credentials in control panel",
"promosmsLogin": "API Login Name",
"promosmsPassword": "API Password",
"pushoversounds pushover": "Pushover (default)",
"pushoversounds bike": "Bike",
"pushoversounds bugle": "Bugle",
"pushoversounds cashregister": "Cash Register",
"pushoversounds classical": "Classical",
"pushoversounds cosmic": "Cosmic",
"pushoversounds falling": "Falling",
"pushoversounds gamelan": "Gamelan",
"pushoversounds incoming": "Incoming",
"pushoversounds intermission": "Intermission",
"pushoversounds magic": "Magic",
"pushoversounds mechanical": "Mechanical",
"pushoversounds pianobar": "Piano Bar",
"pushoversounds siren": "Siren",
"pushoversounds spacealarm": "Space Alarm",
"pushoversounds tugboat": "Tug Boat",
"pushoversounds alien": "Alien Alarm (long)",
"pushoversounds climb": "Climb (long)",
"pushoversounds persistent": "Persistent (long)",
"pushoversounds echo": "Pushover Echo (long)",
"pushoversounds updown": "Up Down (long)",
"pushoversounds vibrate": "Vibrate Only",
"pushoversounds none": "None (silent)",
"pushyAPIKey": "Secret API Key",
"pushyToken": "Device token",
"Show update if available": "Show update if available",
"Also check beta release": "Also check beta release",
"Using a Reverse Proxy?": "Using a Reverse Proxy?",
@ -577,7 +341,6 @@
"Retype the address.": "Retype the address.",
"Go back to the previous page.": "Go back to the previous page.",
"Coming Soon": "Coming Soon",
"wayToGetClickSendSMSToken": "You can get API Username and API Key from {0} .",
"Connection String": "Connection String",
"Query": "Query",
"settingsCertificateExpiry": "TLS Certificate Expiry",
@ -592,9 +355,18 @@
"Container Name / ID": "Container Name / ID",
"Docker Host": "Docker Host",
"Docker Hosts": "Docker Hosts",
"ntfy Topic": "ntfy Topic",
"Domain": "Domain",
"Workstation": "Workstation",
"Packet Size": "Packet Size",
"telegram": "Telegram",
"ZohoCliq": "ZohoCliq",
"Bot Token": "Bot Token",
"wayToGetTelegramToken": "You can get a token from {0}.",
"Chat ID": "Chat ID",
"supportTelegramChatID": "Support Direct Chat / Group / Channel's Chat ID",
"wayToGetTelegramChatID": "You can get your chat ID by sending a message to the bot and going to this URL to view the chat_id:",
"YOUR BOT TOKEN HERE": "YOUR BOT TOKEN HERE",
"chatIDNotFound": "Chat ID is not found; please send a message to this bot first",
"disableCloudflaredNoAuthMsg": "You are in No Auth mode, a password is not required.",
"trustProxyDescription": "Trust 'X-Forwarded-*' headers. If you want to get the correct client IP and your Uptime Kuma is behind such as Nginx or Apache, you should enable this.",
"wayToGetLineNotifyToken": "You can get an access token from {0}",
@ -612,19 +384,10 @@
"Then choose an action, for example switch the scene to where an RGB light is red.": "Then choose an action, for example switch the scene to where an RGB light is red.",
"Frontend Version": "Frontend Version",
"Frontend Version do not match backend version!": "Frontend Version do not match backend version!",
"Base URL": "Base URL",
"goAlertInfo": "GoAlert is a An open source application for on-call scheduling, automated escalations and notifications (like SMS or voice calls). Automatically engage the right person, the right way, and at the right time! {0}",
"goAlertIntegrationKeyInfo": "Get generic API integration key for the service in this format \"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\" usually the value of token parameter of copied URL.",
"goAlert": "GoAlert",
"backupOutdatedWarning": "Deprecated: Since a lot of features added and this backup feature is a bit unmaintained, it cannot generate or restore a complete backup.",
"backupRecommend": "Please backup the volume or the data folder (./data/) directly instead.",
"Optional": "Optional",
"squadcast": "Squadcast",
"SendKey": "SendKey",
"SMSManager API Docs": "SMSManager API Docs ",
"Gateway Type": "Gateway Type",
"SMSManager": "SMSManager",
"You can divide numbers with": "You can divide numbers with",
"or": "or",
"recurringInterval": "Interval",
"Recurring": "Recurring",
@ -665,6 +428,143 @@
"Schedule Maintenance": "Schedule Maintenance",
"Date and Time": "Date and Time",
"DateTime Range": "DateTime Range",
"smtp": "Email (SMTP)",
"secureOptionNone": "None / STARTTLS (25, 587)",
"secureOptionTLS": "TLS (465)",
"Ignore TLS Error": "Ignore TLS Error",
"From Email": "From Email",
"emailCustomSubject": "Custom Subject",
"To Email": "To Email",
"smtpCC": "CC",
"smtpBCC": "BCC",
"Discord Webhook URL": "Discord Webhook URL",
"wayToGetDiscordURL": "You can get this by going to Server Settings -> Integrations -> Create Webhook",
"Bot Display Name": "Bot Display Name",
"Prefix Custom Message": "Prefix Custom Message",
"Hello @everyone is...": "Hello {'@'}everyone is…",
"wayToGetTeamsURL": "You can learn how to create a webhook URL {0}.",
"wayToGetZohoCliqURL": "You can learn how to create a webhook URL {0}.",
"needSignalAPI": "You need to have a signal client with REST API.",
"wayToCheckSignalURL": "You can check this URL to view how to set one up:",
"Number": "Number",
"Recipients": "Recipients",
"Access Token": "Access Token",
"Channel access token": "Channel access token",
"Line Developers Console": "Line Developers Console",
"lineDevConsoleTo": "Line Developers Console - {0}",
"Basic Settings": "Basic Settings",
"User ID": "User ID",
"Messaging API": "Messaging API",
"wayToGetLineChannelToken": "First access the {0}, create a provider and channel (Messaging API), then you can get the channel access token and user ID from the above mentioned menu items.",
"Icon URL": "Icon URL",
"aboutIconURL": "You can provide a link to a picture in \"Icon URL\" to override the default profile picture. Will not be used if Icon Emoji is set.",
"aboutMattermostChannelName": "You can override the default channel that the Webhook posts to by entering the channel name into \"Channel Name\" field. This needs to be enabled in the Mattermost Webhook settings. Ex: #other-channel",
"dataRetentionTimeError": "Retention period must be 0 or greater",
"infiniteRetention": "Set to 0 for infinite retention.",
"confirmDeleteTagMsg": "Are you sure you want to delete this tag? Monitors associated with this tag will not be deleted.",
"enableGRPCTls": "Allow to send gRPC request with TLS connection",
"grpcMethodDescription": "Method name is convert to cammelCase format such as sayHello, check, etc.",
"acceptedStatusCodesDescription": "Select status codes which are considered as a successful response.",
"deleteMonitorMsg": "Are you sure want to delete this monitor?",
"deleteMaintenanceMsg": "Are you sure want to delete this maintenance?",
"deleteNotificationMsg": "Are you sure want to delete this notification for all monitors?",
"dnsPortDescription": "DNS server port. Defaults to 53. You can change the port at any time.",
"resolverserverDescription": "Cloudflare is the default server. You can change the resolver server anytime.",
"rrtypeDescription": "Select the RR type you want to monitor",
"pauseMonitorMsg": "Are you sure want to pause?",
"enableDefaultNotificationDescription": "This notification will be enabled by default for new monitors. You can still disable the notification separately for each monitor.",
"clearEventsMsg": "Are you sure want to delete all events for this monitor?",
"clearHeartbeatsMsg": "Are you sure want to delete all heartbeats for this monitor?",
"confirmClearStatisticsMsg": "Are you sure you want to delete ALL statistics?",
"importHandleDescription": "Choose 'Skip existing' if you want to skip every monitor or notification with the same name. 'Overwrite' will delete every existing monitor and notification.",
"confirmImportMsg": "Are you sure you want to import the backup? Please verify you've selected the correct import option.",
"twoFAVerifyLabel": "Please enter your token to verify 2FA:",
"tokenValidSettingsMsg": "Token is valid! You can now save the 2FA settings.",
"confirmEnableTwoFAMsg": "Are you sure you want to enable 2FA?",
"confirmDisableTwoFAMsg": "Are you sure you want to disable 2FA?",
"recurringIntervalMessage": "Run once every day | Run once every {0} days",
"affectedMonitorsDescription": "Select monitors that are affected by current maintenance",
"affectedStatusPages": "Show this maintenance message on selected status pages",
"atLeastOneMonitor": "Select at least one affected monitor",
"passwordNotMatchMsg": "The repeat password does not match.",
"notificationDescription": "Notifications must be assigned to a monitor to function.",
"keywordDescription": "Search keyword in plain HTML or JSON response. The search is case-sensitive.",
"backupDescription": "You can backup all monitors and notifications into a JSON file.",
"backupDescription2": "Note: history and event data is not included.",
"backupDescription3": "Sensitive data such as notification tokens are included in the export file; please store export securely.",
"endpoint": "endpoint",
"octopushAPIKey": "\"API key\" from HTTP API credentials in control panel",
"octopushLogin": "\"Login\" from HTTP API credentials in control panel",
"promosmsLogin": "API Login Name",
"promosmsPassword": "API Password",
"pushoversounds pushover": "Pushover (default)",
"pushoversounds bike": "Bike",
"pushoversounds bugle": "Bugle",
"pushoversounds cashregister": "Cash Register",
"pushoversounds classical": "Classical",
"pushoversounds cosmic": "Cosmic",
"pushoversounds falling": "Falling",
"pushoversounds gamelan": "Gamelan",
"pushoversounds incoming": "Incoming",
"pushoversounds intermission": "Intermission",
"pushoversounds magic": "Magic",
"pushoversounds mechanical": "Mechanical",
"pushoversounds pianobar": "Piano Bar",
"pushoversounds siren": "Siren",
"pushoversounds spacealarm": "Space Alarm",
"pushoversounds tugboat": "Tug Boat",
"pushoversounds alien": "Alien Alarm (long)",
"pushoversounds climb": "Climb (long)",
"pushoversounds persistent": "Persistent (long)",
"pushoversounds echo": "Pushover Echo (long)",
"pushoversounds updown": "Up Down (long)",
"pushoversounds vibrate": "Vibrate Only",
"pushoversounds none": "None (silent)",
"pushyAPIKey": "Secret API Key",
"pushyToken": "Device token",
"discord": "Discord",
"teams": "Microsoft Teams",
"signal": "Signal",
"gotify": "Gotify",
"slack": "Slack",
"rocket.chat": "Rocket.Chat",
"pushover": "Pushover",
"pushy": "Pushy",
"PushByTechulus": "Push by Techulus",
"octopush": "Octopush",
"promosms": "PromoSMS",
"clicksendsms": "ClickSend SMS",
"lunasea": "LunaSea",
"apprise": "Apprise (Support 50+ Notification services)",
"GoogleChat": "Google Chat (Google Workspace only)",
"pushbullet": "Pushbullet",
"Kook": "Kook",
"wayToGetKookBotToken": "Create application and get your bot token at {0}",
"wayToGetKookGuildID": "Switch on 'Developer Mode' in Kook setting, and right click the guild to get its ID",
"Guild ID": "Guild ID",
"line": "Line Messenger",
"mattermost": "Mattermost",
"User Key": "User Key",
"Device": "Device",
"Message Title": "Message Title",
"Notification Sound": "Notification Sound",
"More info on:": "More info on: {0}",
"pushoverDesc1": "Emergency priority (2) has default 30 second timeout between retries and will expire after 1 hour.",
"pushoverDesc2": "If you want to send notifications to different devices, fill out Device field.",
"SMS Type": "SMS Type",
"octopushTypePremium": "Premium (Fast - recommended for alerting)",
"octopushTypeLowCost": "Low Cost (Slow - sometimes blocked by operator)",
"checkPrice": "Check {0} prices:",
"apiCredentials": "API credentials",
"octopushLegacyHint": "Do you use the legacy version of Octopush (2011-2020) or the new version?",
"Check octopush prices": "Check octopush prices {0}.",
"octopushPhoneNumber": "Phone number (intl format, eg : +33612345678) ",
"octopushSMSSender": "SMS Sender Name : 3-11 alphanumeric characters and space (a-zA-Z0-9)",
"LunaSea Device ID": "LunaSea Device ID",
"Apprise URL": "Apprise URL",
"Example:": "Example: {0}",
"Read more:": "Read more: {0}",
"Status:": "Status: {0}",
"Strategy": "Strategy",
"Free Mobile User Identifier": "Free Mobile User Identifier",
"Free Mobile API Key": "Free Mobile API Key",
@ -675,11 +575,112 @@
"Economy": "Economy",
"Lowcost": "Lowcost",
"high": "high",
"General Monitor Type": "General Monitor Type",
"Passive Monitor Type": "Passive Monitor Type",
"Specific Monitor Type": "Specific Monitor Type",
"dataRetentionTimeError": "Retention period must be 0 or greater",
"infiniteRetention": "Set to 0 for infinite retention.",
"confirmDeleteTagMsg": "Are you sure you want to delete this tag? Monitors associated with this tag will not be deleted.",
"Help": "Help"
"SendKey": "SendKey",
"SMSManager API Docs": "SMSManager API Docs ",
"Gateway Type": "Gateway Type",
"SMSManager": "SMSManager",
"You can divide numbers with": "You can divide numbers with",
"Base URL": "Base URL",
"goAlertInfo": "GoAlert is a An open source application for on-call scheduling, automated escalations and notifications (like SMS or voice calls). Automatically engage the right person, the right way, and at the right time! {0}",
"goAlertIntegrationKeyInfo": "Get generic API integration key for the service in this format \"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\" usually the value of token parameter of copied URL.",
"goAlert": "GoAlert",
"AccessKeyId": "AccessKey ID",
"SecretAccessKey": "AccessKey Secret",
"PhoneNumbers": "PhoneNumbers",
"TemplateCode": "TemplateCode",
"SignName": "SignName",
"Sms template must contain parameters: ": "Sms template must contain parameters: ",
"Bark Endpoint": "Bark Endpoint",
"Bark Group": "Bark Group",
"Bark Sound": "Bark Sound",
"WebHookUrl": "WebHookUrl",
"SecretKey": "SecretKey",
"For safety, must use secret key": "For safety, must use secret key",
"Device Token": "Device Token",
"Platform": "Platform",
"iOS": "iOS",
"Android": "Android",
"Huawei": "Huawei",
"High": "High",
"Retry": "Retry",
"Topic": "Topic",
"WeCom Bot Key": "WeCom Bot Key",
"Setup Proxy": "Setup Proxy",
"Proxy Protocol": "Proxy Protocol",
"Proxy Server": "Proxy Server",
"Proxy server has authentication": "Proxy server has authentication",
"matrix": "Matrix",
"promosmsTypeEco": "SMS ECO - cheap but slow and often overloaded. Limited only to Polish recipients.",
"promosmsTypeFlash": "SMS FLASH - Message will automatically show on recipient device. Limited only to Polish recipients.",
"promosmsTypeFull": "SMS FULL - Premium tier of SMS, You can use your Sender Name (You need to register name first). Reliable for alerts.",
"promosmsTypeSpeed": "SMS SPEED - Highest priority in system. Very quick and reliable but costly (about twice of SMS FULL price).",
"promosmsPhoneNumber": "Phone number (for Polish recipient You can skip area codes)",
"promosmsSMSSender": "SMS Sender Name : Pre-registred name or one of defaults: InfoSMS, SMS Info, MaxSMS, INFO, SMS",
"promosmsAllowLongSMS": "Allow long SMS",
"Feishu WebHookUrl": "Feishu WebHookURL",
"matrixHomeserverURL": "Homeserver URL (with http(s):// and optionally port)",
"Internal Room Id": "Internal Room ID",
"matrixDesc1": "You can find the internal room ID by looking in the advanced section of the room settings in your Matrix client. It should look like !QMdRCpUIfLwsfjxye6:home.server.",
"matrixDesc2": "It is highly recommended you create a new user and do not use your own Matrix user's access token as it will allow full access to your account and all the rooms you joined. Instead, create a new user and only invite it to the room that you want to receive the notification in. You can get the access token by running {0}",
"Channel Name": "Channel Name",
"Uptime Kuma URL": "Uptime Kuma URL",
"Icon Emoji": "Icon Emoji",
"signalImportant": "IMPORTANT: You cannot mix groups and numbers in recipients!",
"aboutWebhooks": "More info about Webhooks on: {0}",
"aboutChannelName": "Enter the channel name on {0} Channel Name field if you want to bypass the Webhook channel. Ex: #other-channel",
"aboutKumaURL": "If you leave the Uptime Kuma URL field blank, it will default to the Project GitHub page.",
"smtpDkimSettings": "DKIM Settings",
"smtpDkimDesc": "Please refer to the Nodemailer DKIM {0} for usage.",
"documentation": "documentation",
"smtpDkimDomain": "Domain Name",
"smtpDkimKeySelector": "Key Selector",
"smtpDkimPrivateKey": "Private Key",
"smtpDkimHashAlgo": "Hash Algorithm (Optional)",
"smtpDkimheaderFieldNames": "Header Keys to sign (Optional)",
"smtpDkimskipFields": "Header Keys not to sign (Optional)",
"wayToGetPagerDutyKey": "You can get this by going to Service -> Service Directory -> (Select a service) -> Integrations -> Add integration. Here you can search for \"Events API V2\". More info {0}",
"Integration Key": "Integration Key",
"Integration URL": "Integration URL",
"Auto resolve or acknowledged": "Auto resolve or acknowledged",
"do nothing": "do nothing",
"auto acknowledged": "auto acknowledged",
"auto resolve": "auto resolve",
"gorush": "Gorush",
"alerta": "Alerta",
"alertaApiEndpoint": "API Endpoint",
"alertaEnvironment": "Environment",
"alertaApiKey": "API Key",
"alertaAlertState": "Alert State",
"alertaRecoverState": "Recover State",
"serwersms": "SerwerSMS.pl",
"serwersmsAPIUser": "API Username (incl. webapi_ prefix)",
"serwersmsAPIPassword": "API Password",
"serwersmsPhoneNumber": "Phone number",
"serwersmsSenderName": "SMS Sender Name (registered via customer portal)",
"smseagle": "SMSEagle",
"smseagleTo": "Phone number(s)",
"smseagleGroup": "Phonebook group name(s)",
"smseagleContact": "Phonebook contact name(s)",
"smseagleRecipientType": "Recipient type",
"smseagleRecipient": "Recipient(s) (multiple must be separated with comma)",
"smseagleToken": "API Access token",
"smseagleUrl": "Your SMSEagle device URL",
"smseagleEncoding": "Send as Unicode",
"smseaglePriority": "Message priority (0-9, default = 0)",
"stackfield": "Stackfield",
"Recipient Number": "Recipient Number",
"From Name/Number": "From Name/Number",
"Leave blank to use a shared sender number.": "Leave blank to use a shared sender number.",
"Octopush API Version": "Octopush API Version",
"Legacy Octopush-DM": "Legacy Octopush-DM",
"ntfy Topic": "ntfy Topic",
"HomeAssistant": "Home Assistant",
"onebotHttpAddress": "OneBot HTTP Address",
"onebotMessageType": "OneBot Message Type",
"onebotGroupMessage": "Group",
"onebotPrivateMessage": "Private",
"onebotUserOrGroupId": "Group/User ID",
"onebotSafetyTips": "For safety, must set access token",
"PushDeer Key": "PushDeer Key",
"wayToGetClickSendSMSToken": "You can get API Username and API Key from {0} ."
}

View File

@ -206,4 +206,4 @@
"records": "registros",
"One record": "Un registro",
"steamApiKeyDescription": "Para monitorear un servidor de juegos de Steam, necesitas una clave Steam Web-API. Puedes registrar tu clave API aquí: "
}
}

View File

@ -206,4 +206,4 @@
"alertaApiKey": "API võti",
"alertaAlertState": "Häireseisund",
"alertaRecoverState": "Taasta algolek"
}
}

View File

@ -538,4 +538,4 @@
"Domain": "Domeinua",
"Workstation": "Lan gunea",
"disableCloudflaredNoAuthMsg": "Ez Auth moduan zaude, pasahitza ez da beharrezkoa."
}
}

View File

@ -187,22 +187,5 @@
"One record": "یک مورد",
"Info": "اطلاعات",
"Powered by": "نیرو گرفته از",
"telegram": "Telegram",
"webhook": "Webhook",
"smtp": "Email (SMTP)",
"discord": "Discord",
"teams": "Microsoft Teams",
"signal": "Signal",
"gotify": "Gotify",
"slack": "Slack",
"rocket.chat": "Rocket.chat",
"pushover": "Pushover",
"pushy": "Pushy",
"octopush": "Octopush",
"promosms": "PromoSMS",
"lunasea": "LunaSea",
"apprise": "Apprise (Support 50+ Notification services)",
"pushbullet": "Pushbullet",
"line": "Line Messenger",
"mattermost": "Mattermost"
}
"apprise": "Apprise (Support 50+ Notification services)"
}

View File

@ -170,7 +170,7 @@
"Setup 2FA": "Configurer la double authentification (2FA)",
"Enable 2FA": "Activer la double authentification (2FA)",
"Disable 2FA": "Désactiver la double authentification (2FA)",
"2FA Settings": "Paramètres de la la double authentification (2FA)",
"2FA Settings": "Paramètres de la double authentification (2FA)",
"Two Factor Authentication": "Double authentification",
"Active": "Actif",
"Inactive": "Inactif",
@ -309,7 +309,7 @@
"Basic Settings": "Paramètres de base",
"User ID": "Identifiant utilisateur",
"Messaging API": "Messaging API",
"wayToGetLineChannelToken": "Premièrement accédez à {0}, créez un <i>provider</i> et définissez un type de salon à « Messaging API ». Vous pourrez alors avoir puis vous pourrez avoir le jeton d'accès du salon et l'identifiant utilisateur demandés.",
"wayToGetLineChannelToken": "Premièrement accédez à {0}, créez un <i>provider</i> et définissez un type de salon à «Messaging API». Vous obtiendrez alors le jeton d'accès du salon et l'identifiant utilisateur demandés.",
"Icon URL": "URL vers l'icône",
"aboutIconURL": "Vous pouvez mettre un lien vers une image dans « URL vers l'icône » pour remplacer l'image de profil par défaut. Elle ne sera utilisé que si « Icône émoji » n'est pas défini.",
"aboutMattermostChannelName": "Vous pouvez remplacer le salon par défaut que le webhook utilise en mettant le nom du salon dans le champ « Nom du salon ». Vous aurez besoin de l'activer depuis les paramètres de Mattermost. Ex. : #autre-salon",
@ -680,5 +680,8 @@
"Monitor": "Sonde | Sondes",
"Custom": "Personnalisé",
"confirmDeleteTagMsg": "Voulez-vous vraiment supprimer cette étiquettes ? Les moniteurs associés ne seront pas supprimés.",
"promosmsAllowLongSMS": "Autoriser les longs SMS"
}
"promosmsAllowLongSMS": "Autoriser les longs SMS",
"Help": "Aide",
"Game": "Jeux",
"Packet Size": "Taille du paquet"
}

View File

@ -669,4 +669,4 @@
"General Monitor Type": "מוניטור כללי",
"Passive Monitor Type": "מוניטור פסיבי",
"Specific Monitor Type": "סוג מוניטור ספציפי"
}
}

View File

@ -578,4 +578,4 @@
"Then choose an action, for example switch the scene to where an RGB light is red.": "Potrebno je i odabrati akciju za izvođenje na Home Assistantu.",
"Frontend Version": "Inačica sučelja",
"Frontend Version do not match backend version!": "Inačica sučelja ne odgovara poslužitelju!"
}
}

View File

@ -373,4 +373,4 @@
"alertaAlertState": "Figyelmeztetési állapot",
"alertaRecoverState": "Visszaállási állapot",
"deleteStatusPageMsg": "Biztos, hogy törölni akarja a státusz oldalt?"
}
}

View File

@ -582,4 +582,4 @@
"goAlert": "GoAlert",
"backupOutdatedWarning": "Tidak digunakan lagi: Karena banyak fitur ditambahkan dan fitur cadangan ini agak tidak terawat, itu tidak dapat menghasilkan atau memulihkan cadangan lengkap.",
"backupRecommend": "Harap cadangkan volume atau folder data (./data/) secara langsung."
}
}

View File

@ -100,7 +100,7 @@
"Update Password": "Modifica password",
"Disable Auth": "Disabilita autenticazione",
"Enable Auth": "Abilita autenticazione",
"disableauth.message1": "<strong>Disabilitare l'autenticazione?</strong>",
"disableauth.message1": "<strong>Disabilitare l'autenticazione</strong>?",
"disableauth.message2": "<strong>Questa opzione è per chi un sistema di autenticazione gestito da terze parti</strong> messo davanti ad Uptime Kuma, ad esempio Cloudflare Access.",
"Please use this option carefully!": "Utilizzare con attenzione!",
"Logout": "Esci",
@ -364,4 +364,4 @@
"smtpDkimheaderFieldNames": "Campi Intestazione da firmare (opzionale)",
"smtpDkimskipFields": "Campi Intestazione da non firmare (opzionale)",
"GoogleChat": "Google Chat (solo per Google Workspace)"
}
}

View File

@ -136,10 +136,6 @@
"Disable 2FA": "2段階認証を無効にする",
"2FA Settings": "2段階認証の設定",
"Two Factor Authentication": "2段階認証",
"Active": "Active",
"Inactive": "Inactive",
"Token": "Token",
"Show URI": "Show URI",
"Clear all statistics": "すべての記録を削除",
"retryCheckEverySecond": "Retry every {0} seconds.",
"importHandleDescription": "同じ名前のすべての監視または通知方法を上書きしない場合は、「既存のをスキップ」を選択します。 「上書きする」は、既存のすべてのモニターと通知を削除します。",
@ -157,14 +153,6 @@
"Tag with this value already exist.": "この値のタグはすでに存在しています。",
"color": "色",
"value (optional)": "値 (optional)",
"Gray": "Gray",
"Red": "Red",
"Orange": "Orange",
"Green": "Green",
"Blue": "Blue",
"Indigo": "Indigo",
"Purple": "Purple",
"Pink": "Pink",
"Search...": "検索...",
"Avg. Ping": "平均Ping時間",
"Avg. Response": "平均応答時間",
@ -179,23 +167,5 @@
"Edit Status Page": "ステータスページ編集",
"Go to Dashboard": "ダッシュボード",
"Status Page": "ステータスページ",
"Status Pages": "ステータスページ",
"telegram": "Telegram",
"webhook": "Webhook",
"smtp": "Email (SMTP)",
"discord": "Discord",
"teams": "Microsoft Teams",
"signal": "Signal",
"gotify": "Gotify",
"slack": "Slack",
"rocket.chat": "Rocket.chat",
"pushover": "Pushover",
"pushy": "Pushy",
"octopush": "Octopush",
"promosms": "PromoSMS",
"lunasea": "LunaSea",
"apprise": "Apprise (Support 50+ Notification services)",
"pushbullet": "Pushbullet",
"line": "Line Messenger",
"mattermost": "Mattermost"
}
"Status Pages": "ステータスページ"
}

View File

@ -528,4 +528,4 @@
"Go back to the previous page.": "이전 페이지로 돌아가기",
"Coming Soon": "Coming Soon...",
"wayToGetClickSendSMSToken": "{0}에서 API 사용자 이름과 키를 얻을 수 있어요."
}
}

View File

@ -271,7 +271,7 @@
"Basic Settings": "Grunnleggende instillinger",
"User ID": "Bruker-ID",
"Messaging API": "Meldings-API",
"wayToGetLineChannelToken": "Først, få tilgang til {0}, lag en leverandør og kanal (Meldings-API), deretter kan du hente kanaltilgangs-token og bruker id fra menu-valgene nevnt over.",
"wayToGetLineChannelToken": "Først, få tilgang til {0}, lag en leverandør og kanal (Meldings-API), deretter kan du hente kanaltilgangs-token og bruker id fra menu-valgene nevnt over.",
"Icon URL": "Ikon URL",
"aboutIconURL": "Du kan gi en link til et bilde i \"Ikon URL\" for å overskrive det standard profilbildet. Vil ikke bli brukt hvis Ikon Emoji ikke er satt.",
"aboutMattermostChannelName": "Du kan overskrive standardkanalen som webhook-en poster i ved å skrive enn kanalnavnet i \"Kanalnavn\" feltet. Dette må være skrudd på i Mattermost webhook-instillingene. Eks: #other-channel",
@ -282,4 +282,4 @@
"promosmsTypeSpeed": "SMS SPEED - Høyest prioritet i systemet.Veldig rask på pålitelig, men dyrt (omtrent det dobbeltet av SMS FULL pris).",
"promosmsPhoneNumber": "Telefonnummber (for polske mottakere. Du trenger ikke områdekode.)",
"promosmsSMSSender": "SMS Avsendernavn : Forhåndsregistert navn eller en av standardnavnene: InfoSMS, SMS Info, MaxSMS, INFO, SMS"
}
}

View File

@ -519,7 +519,7 @@
"Retype the address.": "De URL controleren en/of opnnieuw typen.",
"Go back to the previous page.": "Terug naar de vorige pagina.",
"Coming Soon": "Binnenkort beschikbaar",
"wayToGetClickSendSMSToken": "Je kan een API Username en API Key krijgen vanuit {0} .",
"wayToGetClickSendSMSToken": "Je kan een API Username en API Key krijgen vanuit {0} .",
"Connection String": "Connection String",
"Query": "Query",
"settingsCertificateExpiry": "TLS Certificate Expiry",
@ -528,4 +528,4 @@
"Domain": "Domein",
"Workstation": "Werkstation",
"disableCloudflaredNoAuthMsg": "De \"Geen authenticatie\" modus staat aan, wachtwoord is niet vereist."
}
}

View File

@ -14,7 +14,7 @@
"deleteMonitorMsg": "Czy na pewno chcesz usunąć ten monitor?",
"deleteNotificationMsg": "Czy na pewno chcesz usunąć to powiadomienie dla wszystkich monitorów?",
"resolverserverDescription": "Cloudflare jest domyślnym serwerem, możesz zmienić serwer resolver w każdej chwili.",
"rrtypeDescription": "Wybierz rodzaj rekordu, który chcesz monitorować.",
"rrtypeDescription": "Wybierz rodzaj rekordu, który chcesz monitorować",
"pauseMonitorMsg": "Czy na pewno chcesz wstrzymać monitorowanie?",
"enableDefaultNotificationDescription": "Dla każdego nowego monitora to powiadomienie będzie domyślnie włączone. Nadal możesz wyłączyć powiadomienia osobno dla każdego monitora.",
"clearEventsMsg": "Jesteś pewien, że chcesz wyczyścić historię zdarzeń dla tego monitora?",
@ -22,7 +22,7 @@
"confirmClearStatisticsMsg": "Jesteś pewien, że chcesz usunąć WSZYSTKIE statystyki?",
"importHandleDescription": "Wybierz 'Pomiń istniejące', jeśli chcesz pominąć każdy monitor lub powiadomienie o tej samej nazwie. 'Nadpisz' spowoduje usunięcie każdego istniejącego monitora i powiadomienia.",
"confirmImportMsg": "Czy na pewno chcesz zaimportować kopię zapasową? Upewnij się, że wybrałeś właściwą opcję importu.",
"twoFAVerifyLabel": "Proszę, podaj swój token 2FA, aby sprawdzić, czy 2FA działa.",
"twoFAVerifyLabel": "Proszę, podaj swój token 2FA, aby sprawdzić, czy 2FA działa:",
"tokenValidSettingsMsg": "Token jest prawidłowy! Teraz możesz zapisać ustawienia 2FA.",
"confirmEnableTwoFAMsg": "Jesteś pewien, że chcesz włączyć 2FA?",
"confirmDisableTwoFAMsg": "Jesteś pewien, że chcesz wyłączyć 2FA?",
@ -56,9 +56,9 @@
"Uptime": "Czas pracy",
"Cert Exp.": "Certyfikat wygasa",
"day": "dzień | dni",
"-day": " dni",
"-day": "dni",
"hour": "godzina",
"-hour": " godzin",
"-hour": "godzin",
"Response": "Odpowiedź",
"Ping": "Ping",
"Monitor Type": "Rodzaj monitora",
@ -98,7 +98,7 @@
"Enable Auth": "Włącz autoryzację",
"disableauth.message1": "Czy na pewno chcesz <strong>wyłączyć autoryzację</strong>?",
"disableauth.message2": "Jest przeznaczony dla <strong>kogoś, kto ma autoryzację zewnętrzną</strong> przed Uptime Kuma, taką jak Cloudflare Access.",
"Please use this option carefully!": "Proszę używać ostrożnie.",
"Please use this option carefully!": "Proszę używać tej opcji ostrożnie!",
"Logout": "Wyloguj",
"Leave": "Zostaw",
"I understand, please disable": "Rozumiem, proszę wyłączyć",
@ -154,7 +154,7 @@
"Token": "Token",
"Show URI": "Pokaż URI",
"Tags": "Tagi",
"Add New below or Select...": "Dodaj nowy poniżej lub wybierz...",
"Add New below or Select...": "Dodaj nowy poniżej lub wybierz",
"Tag with this name already exist.": "Tag o tej nazwie już istnieje.",
"Tag with this value already exist.": "Tag o tej wartości już istnieje.",
"color": "kolor",
@ -167,7 +167,7 @@
"Indigo": "Indygo",
"Purple": "Fioletowy",
"Pink": "Różowy",
"Search...": "Szukaj...",
"Search...": "Szukaj",
"Avg. Ping": "Średni ping",
"Avg. Response": "Średnia odpowiedź",
"Entry Page": "Strona startowa",
@ -211,7 +211,7 @@
"wayToGetDiscordURL": "Możesz go uzyskać, przechodząc do Ustawienia serwera -> Integracje -> Tworzenie webhooka",
"Bot Display Name": "Wyświetlana nazwa bota",
"Prefix Custom Message": "Własny początek wiadomości",
"Hello @everyone is...": "Hej {'@'}everyone ...",
"Hello @everyone is...": "Hej {'@'}everyone",
"teams": "Microsoft Teams",
"Webhook URL": "URL webhooka",
"wayToGetTeamsURL": "Możesz dowiedzieć się, jak utworzyć adres url webhooka {0}.",
@ -256,7 +256,7 @@
"octopushTypePremium": "Premium (szybki - rekomendowany dla powiadomień)",
"octopushTypeLowCost": "Low Cost (wolny, czasami blokowany przez operatorów)",
"Check octopush prices": "Sprawdź ceny Octopush {0}.",
"octopushPhoneNumber": "Numer telefonu (format międzynarodowy np.: +33612345678)",
"octopushPhoneNumber": "Numer telefonu (format międzynarodowy np.: +33612345678) ",
"octopushSMSSender": "Nadawca SMS: 3-11 znaków alfanumerycznych i spacji (a-zA-Z0-9)",
"LunaSea Device ID": "Identyfikator urządzenia LunaSea",
"Apprise URL": "URL Apprise",
@ -278,16 +278,16 @@
"aboutIconURL": "Możesz podać link do zdjęcia w \"Adres URL ikony\", aby zastąpić domyślne zdjęcie profilowe. Nie będzie używany, jeśli ustawiona jest ikona emoji.",
"aboutMattermostChannelName": "Możesz zastąpić domyślny kanał, na którym publikowane są posty webhooka, wpisując nazwę kanału w polu \"Nazwa kanału\". Należy to włączyć w ustawieniach webhooka Mattermost. Np.: #inny-kanał",
"matrix": "Matrix",
"promosmsTypeEco": "SMS ECO - tanie, lecz wolne. Dostępne tylko w Polsce",
"promosmsTypeEco": "SMS ECO - tanie, lecz wolne. Dostępne tylko w Polsce.",
"promosmsTypeFlash": "SMS FLASH - wiadomość automatycznie wyświetli się na urządzeniu. Dostępne tylko w Polsce.",
"promosmsTypeFull": "SMS FULL - szybkie i dostępne międzynarodowo. Wersja premium usługi, która pozwala min. ustawić własną nazwę nadawcy.",
"promosmsTypeSpeed": "SMS SPEED - wysyłka priorytetowa, ma wszystkie zalety SMS FULL",
"promosmsTypeSpeed": "SMS SPEED - wysyłka priorytetowa, ma wszystkie zalety SMS FULL.",
"promosmsPhoneNumber": "Numer odbiorcy",
"promosmsSMSSender": "Nadawca SMS (wcześniej zatwierdzone nazwy z panelu PromoSMS)",
"promosmsAllowLongSMS": "Zezwól na długie SMSy",
"Primary Base URL": "Główny URL",
"Push URL": "Push URL",
"needPushEvery": "Powinieneś wywoływać ten URL co {0} sekund",
"needPushEvery": "Powinieneś wywoływać ten URL co {0} sekund.",
"pushOptionalParams": "Parametry opcjonalne: {0}",
"emailCustomSubject": "Niestandardowy temat",
"checkPrice": "Sprawdź ceny {0}:",
@ -320,8 +320,8 @@
"Security": "Bezpieczeństwo",
"Steam API Key": "Klucz Steam API",
"Shrink Database": "Zmniejsz bazę danych",
"Pick a RR-Type...": "Wybierz typ RR...",
"Pick Accepted Status Codes...": "Wybierz akceptowalne kody statusu...",
"Pick a RR-Type...": "Wybierz typ RR",
"Pick Accepted Status Codes...": "Wybierz akceptowalne kody statusu",
"Default": "Domyślnie",
"HTTP Options": "Opcje HTTP",
"Create Incident": "Stwórz incydent",
@ -375,7 +375,7 @@
"Custom Footer": "Niestandardowa stopka",
"Custom CSS": "Niestandardowy CSS",
"smtpDkimSettings": "Ustawienia DKIM",
"smtpDkimDesc": "Zapoznaj się z Nodemailer DKIM {0}, aby dowiedzieć się więcej",
"smtpDkimDesc": "Zapoznaj się z Nodemailer DKIM {0}, aby dowiedzieć się więcej.",
"documentation": "dokumentacja",
"smtpDkimDomain": "Nazwa domeny",
"smtpDkimKeySelector": "Selektor klucza",
@ -412,7 +412,7 @@
"WebHookUrl": "WebHookUrl",
"SecretKey": "Tajny klucz",
"For safety, must use secret key": "Ze względów bezpieczeństwa musisz użyć tajnego klucza",
"Device Token": "Device Token",
"Device Token": "Token urządzenia",
"Platform": "Platforma",
"iOS": "iOS",
"Android": "Android",
@ -484,10 +484,10 @@
"statusMaintenance": "Konserwacja",
"Schedule maintenance": "Planowanie konserwacji",
"Affected Monitors": "Monitory dotknięte problemem",
"Pick Affected Monitors...": "Wybierz monitory, których to dotyczy...",
"Pick Affected Monitors...": "Wybierz monitory, których to dotyczy",
"Start of maintenance": "Rozpoczęcie konserwacji",
"All Status Pages": "Wszystkie strony statusu",
"Select status pages...": "Wybierz strony statusu...",
"Select status pages...": "Wybierz strony statusu",
"recurringIntervalMessage": "Uruchom raz dziennie | Uruchom raz na {0} dni",
"affectedMonitorsDescription": "Wybierz monitory, których dotyczy bieżąca konserwacja",
"affectedStatusPages": "Pokaż ten komunikat o konserwacji na wybranych stronach statusu",
@ -641,5 +641,46 @@
"maintenanceStatus-unknown": "Nieznany",
"Display Timezone": "Wyświetlana strefa czasowa",
"Server Timezone": "Strefa czasowa serwera",
"statusPageMaintenanceEndDate": "Koniec"
}
"statusPageMaintenanceEndDate": "Koniec",
"Help": "Pomoc",
"Passive Monitor Type": "Pasywny typ monitora",
"Enable": "Włącz",
"confirmDeleteTagMsg": "Czy na pewno chcesz usunąć ten tag? Monitory powiązane z tym tagiem nie zostaną usunięte.",
"Kook": "Kook",
"Enable TLS": "Włącz TLS",
"webhookAdditionalHeadersDesc": "Ustawia dodatkowe nagłówki wysyłane z webhookiem.",
"dnsCacheDescription": "Może nie działać w niektórych środowiskach z IPv6. Wyłącz, jeśli napotkasz jakiekolwiek problemy.",
"wayToGetKookBotToken": "Utwórz aplikację i uzyskaj swój token bota na {0}",
"wayToGetKookGuildID": "Włącz 'Developer Mode' w ustawieniach Kook'a i kliknij prawym przyciskiem myszy na gildię, aby uzyskać jej ID",
"Game": "Gra",
"Specific Monitor Type": "Konkretny typ monitora",
"Monitor": "Monitor | Monitory",
"webhookAdditionalHeadersTitle": "Dodatkowe nagłówki",
"Custom": "Własny",
"ZohoCliq": "ZohoCliq",
"Disable": "Wyłącz",
"Date and Time": "Data i czas",
"IconUrl": "URL ikony",
"Enable DNS Cache": "Włącz pamięć podręczną DNS",
"Single Maintenance Window": "Pojedyncze okno konserwacji",
"Effective Date Range": "Zakres dat obowiązywania",
"Schedule Maintenance": "Planowanie konserwacji",
"DateTime Range": "Zakres czasowy",
"Maintenance Time Window of a Day": "Okno czasowe konserwacji na dzień",
"wayToGetZohoCliqURL": "Możesz dowiedzieć się, jak utworzyć adres URL webhook {0}.",
"dataRetentionTimeError": "Okres przechowywania musi wynosić 0 lub więcej",
"infiniteRetention": "Ustaw na 0, aby uzyskać nieskończony okres przechowywania.",
"enableGRPCTls": "Zezwalaj na wysyłanie żądania gRPC z połączeniem TLS",
"grpcMethodDescription": "Nazwa metody jest konwertowana na format cammelCase, taki jak sayHello, check, itp.",
"Guild ID": "ID gildii",
"Proto Content": "Zawartość Proto",
"Proto Method": "Metoda Proto",
"Proto Service Name": "Nazwa usługi Proto",
"Economy": "Ekonomia",
"Strategy": "Strategia",
"Free Mobile User Identifier": "Darmowy mobilny identyfikator użytkownika",
"Free Mobile API Key": "Darmowy mobilny klucz API",
"Lowcost": "Tani",
"high": "wysoki",
"General Monitor Type": "Ogólny typ monitora"
}

View File

@ -1,7 +1,7 @@
{
"languageName": "Português (Brasileiro)",
"checkEverySecond": "Verificar cada {0} segundos.",
"retryCheckEverySecond": "Tentar novamente a cada {0} segundos.",
"checkEverySecond": "Verificar a cada {0} segundos",
"retryCheckEverySecond": "Tentar novamente a cada {0} segundos",
"retriesDescription": "Máximo de tentativas antes que o serviço seja marcado como inativo e uma notificação seja enviada",
"ignoreTLSError": "Ignorar erros TLS/SSL para sites HTTPS",
"upsideDownModeDescription": "Inverta o status de cabeça para baixo. Se o serviço estiver acessível, ele está OFFLINE.",
@ -9,7 +9,7 @@
"acceptedStatusCodesDescription": "Selecione os códigos de status que são considerados uma resposta bem-sucedida.",
"passwordNotMatchMsg": "A senha repetida não corresponde.",
"notificationDescription": "Atribua uma notificação ao (s) monitor (es) para que funcione.",
"keywordDescription": "Pesquise a palavra-chave em html simples ou resposta JSON e diferencia maiúsculas de minúsculas",
"keywordDescription": "Pesquise a palavra-chave em html simples ou resposta JSON e diferencia maiúsculas de minúsculas.",
"pauseDashboardHome": "Pausar",
"deleteMonitorMsg": "Tem certeza de que deseja excluir este monitor?",
"deleteNotificationMsg": "Tem certeza de que deseja excluir esta notificação para todos os monitores?",
@ -22,7 +22,7 @@
"confirmClearStatisticsMsg": "Tem certeza que deseja excluir TODAS as estatísticas?",
"importHandleDescription": "Escolha 'Ignorar existente' se quiser ignorar todos os monitores ou notificações com o mesmo nome. 'Substituir' excluirá todos os monitores e notificações existentes.",
"confirmImportMsg": "Tem certeza que deseja importar o backup? Certifique-se de que selecionou a opção de importação correta.",
"twoFAVerifyLabel": "Digite seu token para verificar se 2FA está funcionando",
"twoFAVerifyLabel": "Digite seu token para verificar se 2FA está funcionando:",
"tokenValidSettingsMsg": "O token é válido! Agora você pode salvar as configurações 2FA.",
"confirmEnableTwoFAMsg": "Tem certeza de que deseja habilitar 2FA?",
"confirmDisableTwoFAMsg": "Tem certeza de que deseja desativar 2FA?",
@ -72,7 +72,7 @@
"Heartbeat Retry Interval": "Intervalo de repetição de Heartbeat",
"Advanced": "Avançado",
"Upside Down Mode": "Modo de cabeça para baixo",
"Max. Redirects": "Redirecionamento Máx.",
"Max. Redirects": "Redirecionamentos Máx",
"Accepted Status Codes": "Status Code Aceitáveis",
"Save": "Salvar",
"Notifications": "Notificações",
@ -98,10 +98,10 @@
"Enable Auth": "Ativar Autenticação",
"disableauth.message1": "Você tem certeza que deseja <strong>desativar a autenticação</strong>?",
"disableauth.message2": "Isso é para <strong>alguém que tem autenticação de terceiros</strong> na frente do 'UpTime Kuma' como o Cloudflare Access.",
"Please use this option carefully!": "Por favor, utilize isso com cautela.",
"Please use this option carefully!": "Por favor, utilize isso com cautela!",
"Logout": "Deslogar",
"Leave": "Sair",
"I understand, please disable": "Eu entendo, por favor desative.",
"I understand, please disable": "Eu entendo, por favor desative",
"Confirm": "Confirmar",
"Yes": "Sim",
"No": "Não",
@ -114,7 +114,7 @@
"Notification Type": "Tipo de Notificação",
"Email": "Email",
"Test": "Testar",
"Certificate Info": "Info. do Certificado ",
"Certificate Info": "Info. do Certificado",
"Resolver Server": "Resolver Servidor",
"Resource Record Type": "Tipo de registro de aplicação",
"Last Result": "Último resultado",
@ -147,14 +147,14 @@
"Setup 2FA": "Configurar 2FA",
"Enable 2FA": "Ativar 2FA",
"Disable 2FA": "Desativar 2FA",
"2FA Settings": "Configurações do 2FA ",
"2FA Settings": "Configurações do 2FA",
"Two Factor Authentication": "Autenticação e Dois Fatores",
"Active": "Ativo",
"Inactive": "Inativo",
"Token": "Token",
"Show URI": "Mostrar URI",
"Tags": "Tag",
"Add New below or Select...": "Adicionar Novo abaixo ou Selecionar ...",
"Add New below or Select...": "Adicionar Novo abaixo ou Selecionar",
"Tag with this name already exist.": "Já existe uma etiqueta com este nome.",
"Tag with this value already exist.": "Já existe uma etiqueta com este valor.",
"color": "cor",
@ -167,9 +167,9 @@
"Indigo": "Índigo",
"Purple": "Roxo",
"Pink": "Rosa",
"Search...": "Buscar...",
"Avg. Ping": "Ping Médio.",
"Avg. Response": "Resposta Média. ",
"Search...": "Buscar",
"Avg. Ping": "Ping Médio",
"Avg. Response": "Resposta Média",
"Status Page": "Página de Status",
"Status Pages": "Página de Status",
"Entry Page": "Página de entrada",
@ -182,22 +182,92 @@
"Add a monitor": "Adicionar um monitor",
"Edit Status Page": "Editar Página de Status",
"Go to Dashboard": "Ir para a dashboard",
"telegram": "Telegram",
"webhook": "Webhook",
"smtp": "Email (SMTP)",
"discord": "Discord",
"teams": "Microsoft Teams",
"signal": "Signal",
"gotify": "Gotify",
"slack": "Slack",
"rocket.chat": "Rocket.chat",
"pushover": "Pushover",
"pushy": "Pushy",
"octopush": "Octopush",
"promosms": "PromoSMS",
"lunasea": "LunaSea",
"apprise": "Apprise (Support 50+ Notification services)",
"pushbullet": "Pushbullet",
"line": "Line Messenger",
"mattermost": "Mattermost"
}
"apprise": "Apprise (Suporta mais de 50 serviços de notificação)",
"Help": "Ajuda",
"Select status pages...": "Selecionar status pages…",
"Game": "Jogo",
"Passive Monitor Type": "Tipo de monitoramento passivo",
"Specific Monitor Type": "Especificar tipo de monitoramento",
"Monitor": "Monitoramento | Monitoramentos",
"needPushEvery": "Você deve chamar esta URL a cada {0} segundos.",
"Push URL": "Push URL",
"Custom": "Personalizado",
"here": "aqui",
"Required": "Requerido",
"webhookJsonDesc": "{0} é bom para qualquer servidor HTTP moderno, como Express.js",
"webhookAdditionalHeadersTitle": "Cabeçalhos Adicionais",
"webhookAdditionalHeadersDesc": "Define cabeçalhos adicionais enviados com o webhook.",
"Webhook URL": "Webhook URL",
"Priority": "Prioridade",
"Read more": "Ver mais",
"appriseInstalled": "Apprise está instalado.",
"appriseNotInstalled": "Apprise não está instalado. {0}",
"Headers": "Cabeçalhos",
"BodyInvalidFormat": "O corpo da solicitação não é um JSON válido: ",
"Monitor History": "Histórico de monitoramento",
"clearDataOlderThan": "Mantenha os dados do histórico do monitoramento por {0} dias.",
"PasswordsDoNotMatch": "As senhas não coincidem.",
"records": "registros",
"One record": "Um registro",
"Current User": "Usuário atual",
"successMessage": "Mensagem de sucesso",
"Post URL": "Posto URL",
"Application Token": "Token de aplicativo",
"Server URL": "URL do servidor",
"Body": "Corpo",
"PushUrl": "Push URL",
"recent": "Recente",
"Done": "Feito",
"Info": "Informação",
"Security": "Segurança",
"Steam API Key": "API Key da Steam",
"Default": "Padrão",
"HTTP Options": "Opções HTTP",
"Create Incident": "Criar incidente",
"Title": "Título",
"Style": "Estilo",
"info": "informação",
"danger": "perigo",
"Please input title and content": "Por favor, inclua título e o conteúdo",
"Created": "Criado",
"Last Updated": "Última atualização",
"Switch to Light Theme": "Mudar para tema claro",
"Show Tags": "Mostrar tags",
"Hide Tags": "Esconder tags",
"Description": "Descrição",
"No monitors available.": "Nenhum monitoramento disponível.",
"Add one": "Adicionar um",
"No Monitors": "Sem monitoramentos",
"Services": "Serviços",
"Discard": "Descartar",
"Cancel": "Cancelar",
"Customize": "Customizar",
"Custom CSS": "CSS personalizado",
"deleteStatusPageMsg": "Tem certeza que deseja apagar essa status page?",
"Proxies": "Proxies",
"default": "Padrão",
"enabled": "Ativado",
"setAsDefault": "Definir como padrão",
"Primary Base URL": "URL base principal",
"Resend Notification if Down X times consequently": "Reenviar notificação se OFFLINE X vezes consecutivamente",
"pushOptionalParams": "Parâmetros opcionais: {0}",
"webhookFormDataDesc": "{multipart} é bom para PHP. O JSON precisará ser analisado com {decodeFunction}",
"HeadersInvalidFormat": "Os cabeçalhos da solicitação não são um JSON válidos: ",
"steamApiKeyDescription": "Para monitorar um Steam Game Server, você precisa de uma chave Steam Web-API. Você pode registrar sua chave de API aqui: ",
"warning": "atenção",
"Switch to Dark Theme": "Mudar para tema escuro",
"Custom Footer": "Rodapé personalizado",
"error": "erro",
"critical": "crítico",
"dark": "escuro",
"statusMaintenance": "Manutenção",
"Maintenance": "Manutenção",
"resendEveryXTimes": "Reenviar a cada {0} vezes",
"resendDisabled": "Reenvio desativado",
"Schedule maintenance": "Manutenção agendada",
"Affected Monitors": "Monitoramentos afetados",
"Start of maintenance": "Iniciar manutenção",
"All Status Pages": "Todas as Status Pages",
"Method": "Método",
"General Monitor Type": "Tipo de monitoramento geral"
}

View File

@ -181,23 +181,5 @@
"Add Group": "Adicionar Grupo",
"Add a monitor": "Adicionar um monitor",
"Edit Status Page": "Editar Página de Status",
"Go to Dashboard": "Ir para o dashboard",
"telegram": "Telegram",
"webhook": "Webhook",
"smtp": "Email (SMTP)",
"discord": "Discord",
"teams": "Microsoft Teams",
"signal": "Signal",
"gotify": "Gotify",
"slack": "Slack",
"rocket.chat": "Rocket.chat",
"pushover": "Pushover",
"pushy": "Pushy",
"octopush": "Octopush",
"promosms": "PromoSMS",
"lunasea": "LunaSea",
"apprise": "Apprise (Support 50+ Notification services)",
"pushbullet": "Pushbullet",
"line": "Line Messenger",
"mattermost": "Mattermost"
}
"Go to Dashboard": "Ir para o dashboard"
}

View File

@ -577,5 +577,24 @@
"Gateway Type": "Тип шлюза",
"SMSManager": "SMSManager",
"You can divide numbers with": "Вы можете делить числа с",
"or": "или"
}
"or": "или",
"Maintenance": "Обслуживание",
"Schedule maintenance": "Запланировать обслуживание",
"affectedMonitorsDescription": "Выберите мониторы, которые будут затронуты во время обслуживания",
"affectedStatusPages": "Показывать уведомление об обслуживании на выбранных страницах статуса",
"atLeastOneMonitor": "Выберите больше одного затрагиваемого монитора",
"dnsPortDescription": "По умолчанию порт DNS сервера - 53. Мы можете изменить его в любое время.",
"Monitor": "Монитор | Мониторы",
"webhookAdditionalHeadersTitle": "Дополнительные Заголовки",
"recurringIntervalMessage": "Запускать 1 раз каждый день | Запускать 1 раз каждые {0} дней",
"error": "ошибка",
"statusMaintenance": "Обслуживание",
"Affected Monitors": "Затронутые мониторы",
"Start of maintenance": "Начало обслуживания",
"All Status Pages": "Все страницы статусов",
"Select status pages...": "Выберите страницу статуса...",
"resendEveryXTimes": "Повторная отправка каждые {0} раз",
"resendDisabled": "Повторная отправка отключена",
"deleteMaintenanceMsg": "Вы действительно хотите удалить это обслуживание?",
"critical": "критично"
}

View File

@ -352,6 +352,5 @@
"serwersmsAPIUser": "API uporabniško ime (vključno z webapi_ prefix)",
"serwersmsAPIPassword": "API geslo",
"serwersmsPhoneNumber": "Telefonska številka",
"serwersmsSenderName": "Ime SMS pošiljatelja (registrirani prek portala za stranke)",
"stackfield": "Stackfield"
}
"serwersmsSenderName": "Ime SMS pošiljatelja (registrirani prek portala za stranke)"
}

View File

@ -109,96 +109,5 @@
"Create your admin account": "Naprivi administratorski nalog",
"Repeat Password": "Ponovite lozinku",
"respTime": "Vreme odg. (ms)",
"notAvailableShort": "N/A",
"Create": "Create",
"clearEventsMsg": "Are you sure want to delete all events for this monitor?",
"clearHeartbeatsMsg": "Are you sure want to delete all heartbeats for this monitor?",
"confirmClearStatisticsMsg": "Are you sure want to delete ALL statistics?",
"Clear Data": "Clear Data",
"Events": "Events",
"Heartbeats": "Heartbeats",
"Auto Get": "Auto Get",
"enableDefaultNotificationDescription": "For every new monitor this notification will be enabled by default. You can still disable the notification separately for each monitor.",
"Default enabled": "Default enabled",
"Also apply to existing monitors": "Also apply to existing monitors",
"Export": "Export",
"Import": "Import",
"backupDescription": "You can backup all monitors and all notifications into a JSON file.",
"backupDescription2": "PS: History and event data is not included.",
"backupDescription3": "Sensitive data such as notification tokens is included in the export file, please keep it carefully.",
"alertNoFile": "Please select a file to import.",
"alertWrongFileType": "Please select a JSON file.",
"twoFAVerifyLabel": "Please type in your token to verify that 2FA is working",
"tokenValidSettingsMsg": "Token is valid! You can now save the 2FA settings.",
"confirmEnableTwoFAMsg": "Are you sure you want to enable 2FA?",
"confirmDisableTwoFAMsg": "Are you sure you want to disable 2FA?",
"Apply on all existing monitors": "Apply on all existing monitors",
"Verify Token": "Verify Token",
"Setup 2FA": "Setup 2FA",
"Enable 2FA": "Enable 2FA",
"Disable 2FA": "Disable 2FA",
"2FA Settings": "2FA Settings",
"Two Factor Authentication": "Two Factor Authentication",
"Active": "Active",
"Inactive": "Inactive",
"Token": "Token",
"Show URI": "Show URI",
"Clear all statistics": "Clear all Statistics",
"retryCheckEverySecond": "Retry every {0} seconds.",
"importHandleDescription": "Choose 'Skip existing' if you want to skip every monitor or notification with the same name. 'Overwrite' will delete every existing monitor and notification.",
"confirmImportMsg": "Are you sure to import the backup? Please make sure you've selected the right import option.",
"Heartbeat Retry Interval": "Heartbeat Retry Interval",
"Import Backup": "Import Backup",
"Export Backup": "Export Backup",
"Skip existing": "Skip existing",
"Overwrite": "Overwrite",
"Options": "Options",
"Keep both": "Keep both",
"Tags": "Tags",
"Add New below or Select...": "Add New below or Select...",
"Tag with this name already exist.": "Tag with this name already exist.",
"Tag with this value already exist.": "Tag with this value already exist.",
"color": "color",
"value (optional)": "value (optional)",
"Gray": "Gray",
"Red": "Red",
"Orange": "Orange",
"Green": "Green",
"Blue": "Blue",
"Indigo": "Indigo",
"Purple": "Purple",
"Pink": "Pink",
"Search...": "Search...",
"Avg. Ping": "Avg. Ping",
"Avg. Response": "Avg. Response",
"Entry Page": "Entry Page",
"statusPageNothing": "Nothing here, please add a group or a monitor.",
"No Services": "No Services",
"All Systems Operational": "All Systems Operational",
"Partially Degraded Service": "Partially Degraded Service",
"Degraded Service": "Degraded Service",
"Add Group": "Add Group",
"Add a monitor": "Add a monitor",
"Edit Status Page": "Edit Status Page",
"Go to Dashboard": "Go to Dashboard",
"Status Page": "Status Page",
"Status Pages": "Status Pages",
"telegram": "Telegram",
"webhook": "Webhook",
"smtp": "Email (SMTP)",
"discord": "Discord",
"teams": "Microsoft Teams",
"signal": "Signal",
"gotify": "Gotify",
"slack": "Slack",
"rocket.chat": "Rocket.chat",
"pushover": "Pushover",
"pushy": "Pushy",
"octopush": "Octopush",
"promosms": "PromoSMS",
"lunasea": "LunaSea",
"apprise": "Apprise (Support 50+ Notification services)",
"pushbullet": "Pushbullet",
"line": "Line Messenger",
"mattermost": "Mattermost"
}
"notAvailableShort": "N/A"
}

View File

@ -108,97 +108,5 @@
"Last Result": "Последњи резултат",
"Create your admin account": "Наприви администраторски налог",
"Repeat Password": "Поновите лозинку",
"respTime": "Време одг. (мс)",
"notAvailableShort": "N/A",
"Create": "Create",
"clearEventsMsg": "Are you sure want to delete all events for this monitor?",
"clearHeartbeatsMsg": "Are you sure want to delete all heartbeats for this monitor?",
"confirmClearStatisticsMsg": "Are you sure want to delete ALL statistics?",
"Clear Data": "Clear Data",
"Events": "Events",
"Heartbeats": "Heartbeats",
"Auto Get": "Auto Get",
"enableDefaultNotificationDescription": "For every new monitor this notification will be enabled by default. You can still disable the notification separately for each monitor.",
"Default enabled": "Default enabled",
"Also apply to existing monitors": "Also apply to existing monitors",
"Export": "Export",
"Import": "Import",
"backupDescription": "You can backup all monitors and all notifications into a JSON file.",
"backupDescription2": "PS: History and event data is not included.",
"backupDescription3": "Sensitive data such as notification tokens is included in the export file, please keep it carefully.",
"alertNoFile": "Please select a file to import.",
"alertWrongFileType": "Please select a JSON file.",
"twoFAVerifyLabel": "Please type in your token to verify that 2FA is working",
"tokenValidSettingsMsg": "Token is valid! You can now save the 2FA settings.",
"confirmEnableTwoFAMsg": "Are you sure you want to enable 2FA?",
"confirmDisableTwoFAMsg": "Are you sure you want to disable 2FA?",
"Apply on all existing monitors": "Apply on all existing monitors",
"Verify Token": "Verify Token",
"Setup 2FA": "Setup 2FA",
"Enable 2FA": "Enable 2FA",
"Disable 2FA": "Disable 2FA",
"2FA Settings": "2FA Settings",
"Two Factor Authentication": "Two Factor Authentication",
"Active": "Active",
"Inactive": "Inactive",
"Token": "Token",
"Show URI": "Show URI",
"Clear all statistics": "Clear all Statistics",
"retryCheckEverySecond": "Retry every {0} seconds.",
"importHandleDescription": "Choose 'Skip existing' if you want to skip every monitor or notification with the same name. 'Overwrite' will delete every existing monitor and notification.",
"confirmImportMsg": "Are you sure to import the backup? Please make sure you've selected the right import option.",
"Heartbeat Retry Interval": "Heartbeat Retry Interval",
"Import Backup": "Import Backup",
"Export Backup": "Export Backup",
"Skip existing": "Skip existing",
"Overwrite": "Overwrite",
"Options": "Options",
"Keep both": "Keep both",
"Tags": "Tags",
"Add New below or Select...": "Add New below or Select...",
"Tag with this name already exist.": "Tag with this name already exist.",
"Tag with this value already exist.": "Tag with this value already exist.",
"color": "color",
"value (optional)": "value (optional)",
"Gray": "Gray",
"Red": "Red",
"Orange": "Orange",
"Green": "Green",
"Blue": "Blue",
"Indigo": "Indigo",
"Purple": "Purple",
"Pink": "Pink",
"Search...": "Search...",
"Avg. Ping": "Avg. Ping",
"Avg. Response": "Avg. Response",
"Entry Page": "Entry Page",
"statusPageNothing": "Nothing here, please add a group or a monitor.",
"No Services": "No Services",
"All Systems Operational": "All Systems Operational",
"Partially Degraded Service": "Partially Degraded Service",
"Degraded Service": "Degraded Service",
"Add Group": "Add Group",
"Add a monitor": "Add a monitor",
"Edit Status Page": "Edit Status Page",
"Go to Dashboard": "Go to Dashboard",
"Status Page": "Status Page",
"Status Pages": "Status Pages",
"telegram": "Telegram",
"webhook": "Webhook",
"smtp": "Email (SMTP)",
"discord": "Discord",
"teams": "Microsoft Teams",
"signal": "Signal",
"gotify": "Gotify",
"slack": "Slack",
"rocket.chat": "Rocket.chat",
"pushover": "Pushover",
"pushy": "Pushy",
"octopush": "Octopush",
"promosms": "PromoSMS",
"lunasea": "LunaSea",
"apprise": "Apprise (Support 50+ Notification services)",
"pushbullet": "Pushbullet",
"line": "Line Messenger",
"mattermost": "Mattermost"
}
"respTime": "Време одг. (мс)"
}

View File

@ -105,6 +105,5 @@
"Last Result": "Senaste resultat",
"Create your admin account": "Skapa ditt administratörskonto",
"Repeat Password": "Upprepa Lösenord",
"respTime": "Svarstid (ms)",
"notAvailableShort": "Ej Tillg."
}
"respTime": "Svarstid (ms)"
}

View File

@ -577,4 +577,4 @@
"Then choose an action, for example switch the scene to where an RGB light is red.": "จากนั้นเลือกการกระทำ, ตัวอย่าง เช่น เปลี่ยนเป็นไฟสีแดง",
"Frontend Version": "เวอร์ชั่น Frontend",
"Frontend Version do not match backend version!": "เวอร์ชั่น Frontend ไม่ตรงกับ Backend !"
}
}

View File

@ -8,7 +8,7 @@
"ignoreTLSError": "HTTPS web siteleri için TLS/SSL hatasını yoksay",
"upsideDownModeDescription": "Servisin durumunu tersine çevirir. Servis çalışıyorsa kapalı olarak işaretler.",
"maxRedirectDescription": "İzlenecek maksimum yönlendirme sayısı. Yönlendirmeleri devre dışı bırakmak için 0'a ayarlayın.",
"acceptedStatusCodesDescription": "Servisin çalıştığını hangi durum kodları belirlesin?",
"acceptedStatusCodesDescription": "Başarılı bir yanıt olarak kabul edilen durum kodlarını seçin.",
"passwordNotMatchMsg": "Şifre eşleşmiyor.",
"notificationDescription": "Servislerin bildirim gönderebilmesi için bir bildirim yöntemi belirleyin.",
"keywordDescription": "Anahtar kelimeyi düz html veya JSON yanıtında arayın ve büyük/küçük harfe duyarlıdır",
@ -25,7 +25,7 @@
"confirmClearStatisticsMsg": "Tüm istatistikleri silmek istediğinden emin misin?",
"importHandleDescription": "Aynı isimdeki bütün servisleri ve bildirimleri atlamak için 'Var olanı atla' seçiniz. 'Üzerine yaz' var olan bütün servisleri ve bildirimleri silecektir. ",
"confirmImportMsg": "Yedeği içeri aktarmak istediğinize emin misiniz? Lütfen doğru içeri aktarma seçeneğini seçtiğinizden emin olunuz. ",
"twoFAVerifyLabel": "Lütfen tokeni yazarak 2FA doğrulamanın çalıştığından emin olunuz.",
"twoFAVerifyLabel": "2FA doğrulamasını sağlamak için lütfen token bilgisini giriniz:",
"tokenValidSettingsMsg": "Token geçerli! Şimdi 2FA ayarlarını kaydedebilirsiniz. ",
"confirmEnableTwoFAMsg": "2FA'ı etkinleştirmek istediğinizden emin misiniz?",
"confirmDisableTwoFAMsg": "2FA'ı devre dışı bırakmak istediğinize emin misiniz?",
@ -106,7 +106,7 @@
"Enable Auth": "Şifreli girişi aktif et.",
"disableauth.message1": "<strong>Şifreli girişi devre dışı bırakmak istediğinizden</strong>emin misiniz?",
"disableauth.message2": "Bu, Uptime Kuma'nın önünde Cloudflare Access gibi <strong>üçüncü taraf yetkilendirmesi olan</strong> kişiler içindir.",
"Please use this option carefully!": "Lütfen dikkatli kullanın.",
"Please use this option carefully!": "Lütfen dikkatli kullanın!",
"Logout": ıkış yap",
"Leave": "Ayrıl",
"I understand, please disable": "Evet farkındayım, iptal et",
@ -234,7 +234,6 @@
"Application Token": "Uygulama Tokeni",
"Server URL": "Sunucu URL",
"Priority": "Öncelik",
"slack": "Slack",
"Icon Emoji": "İkon Emoji",
"Channel Name": "Kanal Adı",
"Uptime Kuma URL": "Uptime Kuma URL",
@ -242,19 +241,10 @@
"aboutChannelName": "Webhook kanalını atlamak istiyorsanız, {0} Kanal Adı alanına kanal adını girin. Ör: #diğer-kanal",
"aboutKumaURL": "Uptime Kuma URL alanını boş bırakırsanız, varsayılan olarak Project GitHub sayfası olur.",
"emojiCheatSheet": "Emoji cheat sheet: {0}",
"rocket.chat": "Rocket.Chat",
"pushover": "Pushover",
"pushy": "Pushy",
"PushByTechulus": "Push by Techulus",
"octopush": "Octopush",
"promosms": "PromoSMS",
"clicksendsms": "ClickSend SMS",
"lunasea": "LunaSea",
"apprise": "Apprise (50'den fazla Bildirim hizmetini destekler)",
"GoogleChat": "Google Chat (sadece Google Workspace)",
"pushbullet": "Pushbullet",
"line": "Line Messenger",
"mattermost": "Mattermost",
"User Key": "Kullancı Anahtarı",
"Device": "Cihaz",
"Message Title": "Mesaj Başlığı",
@ -306,8 +296,8 @@
"Body": "Gövde",
"Headers": "Başlıklar",
"PushUrl": "Push URL",
"HeadersInvalidFormat": "İstek başlıkları geçerli JSON değil:",
"BodyInvalidFormat": "İstek gövdesi geçerli JSON değil:",
"HeadersInvalidFormat": "İstek başlıkları geçerli JSON değil. ",
"BodyInvalidFormat": "İstek gövdesi geçerli JSON değil: ",
"Monitor History": "Servis Geçmişi",
"clearDataOlderThan": "{0} gün boyunca izleme geçmişi verilerini saklayın.",
"PasswordsDoNotMatch": "Parolalar uyuşmuyor.",
@ -409,7 +399,7 @@
"PhoneNumbers": "PhoneNumbers",
"TemplateCode": "TemplateCode",
"SignName": "SignName",
"Sms template must contain parameters: ": "Sms şablonu parametreleri içermelidir:",
"Sms template must contain parameters: ": "Sms şablonu parametreleri içermelidir: ",
"Bark Endpoint": "Bark Endpoint",
"Bark Group": "Bark Group",
"Bark Sound": "Bark Sound",
@ -674,5 +664,12 @@
"high": "Yüksek",
"General Monitor Type": "Genel Monitör Tipi",
"Passive Monitor Type": "Pasif Monitör Tipi",
"Specific Monitor Type": "Özel Monitör Tipi"
}
"Specific Monitor Type": "Özel Monitör Tipi",
"Help": "Yardım",
"Monitor": "Ekran | Ekranlar",
"Custom": "Özel",
"dataRetentionTimeError": "Saklama süresi 0 veya daha büyük olmalıdır",
"confirmDeleteTagMsg": "Bu etiketi silmek istediğinizden emin misiniz? Bu etiketle ilişkili monitörler silinmez.",
"promosmsAllowLongSMS": "Uzun SMS'e izin ver",
"infiniteRetention": "Sonsuza dek saklamak için 0 giriniz."
}

View File

@ -527,4 +527,4 @@
"Domain": "Домен",
"Workstation": "Робоча станція",
"disableCloudflaredNoAuthMsg": "Ви перебуваєте в режимі без авторизації, пароль не потрібен."
}
}

View File

@ -265,7 +265,7 @@
"apiCredentials": "API credentials",
"octopushLegacyHint": "Bạn muốn sử dụng phiên bản cũ của Octopush (2011-2020) hay phiên bản mới?",
"Check octopush prices": "Kiểm tra giá octopush {0}.",
"octopushPhoneNumber": "Số điện thoại (Định dạng intl, vd : +84692341165) ",
"octopushPhoneNumber": "Số điện thoại (Định dạng intl, vd : +84692341165) ",
"octopushSMSSender": "SMS người gửi : 3-11 ký tự chữ, số và dấu cách (a-zA-Z0-9)",
"LunaSea Device ID": "LunaSea ID thiết bị",
"Apprise URL": "Apprise URL",
@ -459,11 +459,5 @@
"onebotGroupMessage": "Group",
"onebotPrivateMessage": "Private",
"onebotUserOrGroupId": "Group/User ID",
"onebotSafetyTips": "Để đảm bảo an toàn, hãy thiết lập access token",
"PushDeer Key": "PushDeer Key",
"Footer Text": "Footer Text",
"Show Powered By": "Show Powered By",
"Domain Names": "Domain Names",
"signedInDisp": "Signed in as {0}",
"signedInDispDisabled": "Auth Disabled."
}
"onebotSafetyTips": "Để đảm bảo an toàn, hãy thiết lập access token"
}

16
src/lang/yue.json Normal file
View File

@ -0,0 +1,16 @@
{
"languageName": "繁體中文 (廣東話 / 粵語)",
"Settings": "設定",
"General": "一般",
"Dashboard": "表板",
"Help": "幫助",
"New Update": "有新版本",
"Language": "語言",
"Appearance": "外觀",
"Theme": "主題",
"Game": "遊戲",
"Version": "版本",
"Check Update On GitHub": "去 GitHub 睇下有冇更新",
"List": "列表",
"Add": "新增"
}

View File

@ -9,7 +9,7 @@
"upsideDownModeDescription": "反转状态监控,如果服务可访问,则认为是故障。",
"maxRedirectDescription": "允许的最大重定向次数。设置为 0 禁用重定向。",
"enableGRPCTls": "允许通过 TLS 连接发送 gRPC 请求",
"grpcMethodDescription": "方法名会转换为小驼峰格式,例如 sayHello、check 等等",
"grpcMethodDescription": "方法名会转换为小驼峰格式,例如 sayHello、check 等等",
"acceptedStatusCodesDescription": "选择被视为成功响应的状态码。",
"Maintenance": "维护",
"statusMaintenance": "维护",
@ -30,7 +30,7 @@
"deleteMonitorMsg": "确定要删除此监控项吗?",
"deleteMaintenanceMsg": "确定要删除此维护吗?",
"deleteNotificationMsg": "确定要为所有监控项删除此通知吗?",
"dnsPortDescription": "DNS 服务器端口,默认为 53您可以在任何时候更改此端口.",
"dnsPortDescription": "DNS 服务器端口,默认为 53您可以在任何时候更改此端口",
"resolverserverDescription": "默认服务器是 Cloudflare。您随时可以修改解析服务器。",
"rrtypeDescription": "选择要监控的资源记录类型",
"pauseMonitorMsg": "确定要暂停吗?",
@ -75,7 +75,7 @@
"Uptime": "在线时间",
"Cert Exp.": "证书有效期",
"day": "天",
"-day": " 天",
"-day": "天",
"hour": "小时",
"-hour": " 小时",
"Response": "响应",
@ -95,11 +95,11 @@
"Max. Redirects": "最大重定向次数",
"Accepted Status Codes": "有效状态码",
"Push URL": "推送 URL",
"needPushEvery": "您需要每 {0} 秒调用一次该 URL",
"needPushEvery": "您需要每 {0} 秒调用一次该 URL",
"pushOptionalParams": "可选参数:{0}",
"Save": "保存",
"Notifications": "通知",
"Not available, please setup.": "暂不可用,请先设置",
"Not available, please setup.": "暂不可用,请先设置",
"Setup Notification": "设置通知",
"Light": "明亮",
"Dark": "黑暗",
@ -120,7 +120,7 @@
"Disable Auth": "禁用身份验证",
"Enable Auth": "启用身份验证",
"disableauth.message1": "是否确定 <strong>取消登录验证</strong>",
"disableauth.message2": "这是为 <strong>有第三方认证</strong> 的用户提供的功能,如 Cloudflare Access",
"disableauth.message2": "这是为 <strong>有第三方认证</strong> 的用户提供的功能,如 Cloudflare Access",
"Please use this option carefully!": "请谨慎使用!",
"Logout": "退出",
"Leave": "离开",
@ -158,9 +158,9 @@
"Auto Get": "自动获取",
"backupDescription": "您可以将所有监控项和通知备份到 JSON 文件。",
"backupDescription2": "注意: 不包括历史状态和事件数据。",
"backupDescription3": "导出的文件可能包含敏感信息,例如通知的令牌信息,请小心存放!",
"alertNoFile": "请选择要导入的文件",
"alertWrongFileType": "请选择一个 JSON 文件",
"backupDescription3": "导出的文件可能包含敏感信息,例如通知的令牌,请小心存放。",
"alertNoFile": "请选择要导入的文件",
"alertWrongFileType": "请选择一个 JSON 文件",
"Clear all statistics": "清除所有统计数据",
"Skip existing": "跳过已存在",
"Overwrite": "覆盖",
@ -210,13 +210,13 @@
"Required": "必填",
"telegram": "Telegram",
"ZohoCliq": "ZohoCliq",
"Bot Token": "Bot Token",
"Bot Token": "机器人令牌",
"wayToGetTelegramToken": "您可以从 {0} 获取 Token。",
"Chat ID": "Chat ID",
"supportTelegramChatID": "支持对话/群组/频道的 Chat ID",
"wayToGetTelegramChatID": "您可以发送一条消息给您的机器人,然后访问此链接来查看 chat_id",
"YOUR BOT TOKEN HERE": "这里替换成您的 BOT TOKEN",
"chatIDNotFound": "未找到 Chat ID请先给您的机器人发送一条消息",
"chatIDNotFound": "未找到 Chat ID请先给您的机器人发送一条消息",
"webhook": "Webhook",
"Post URL": "Post URL",
"Content Type": "Content Type",
@ -234,13 +234,13 @@
"smtpCC": "抄送",
"smtpBCC": "密送",
"discord": "Discord",
"Discord Webhook URL": "Discord Webhook URL",
"Discord Webhook URL": "Discord Webhook 网址",
"wayToGetDiscordURL": "要获取,可以前往服务器设置 -> 整合 -> 创建 Webhook",
"Bot Display Name": "机器人显示名称",
"Prefix Custom Message": "自定义消息前缀",
"Hello @everyone is...": "{'@'}everyone……",
"teams": "Microsoft Teams",
"Webhook URL": "Webhook URL",
"Webhook URL": "Webhook 网址",
"wayToGetTeamsURL": "您可以在{0}了解如何获取 Webhook URL。",
"wayToGetZohoCliqURL": "您可以在{0}了解如何创建 Webhook URL。",
"signal": "Signal",
@ -250,7 +250,7 @@
"wayToCheckSignalURL": "您可以通过下面的 URL 了解如何设置:",
"signalImportant": "重要:您不能混合设定收件人的分组和号码!",
"gotify": "Gotify",
"Application Token": "Application Token",
"Application Token": "应用程序令牌",
"Server URL": "服务器 URL",
"Priority": "优先级",
"slack": "Slack",
@ -279,7 +279,7 @@
"Guild ID": "频道 ID",
"line": "Line Messenger",
"mattermost": "Mattermost",
"User Key": "User Key",
"User Key": "用户密钥",
"Device": "设备",
"Message Title": "消息标题",
"Notification Sound": "通知铃声",
@ -293,17 +293,17 @@
"apiCredentials": "API Credentials",
"octopushLegacyHint": "您是否在使用旧版本的 Octopush2011-2020",
"Check octopush prices": "查看 Octopush 的价格 {0}。",
"octopushPhoneNumber": "电话号码(国际格式,例如:+33612345678",
"octopushPhoneNumber": "电话号码(国际格式,例如:+33612345678 ",
"octopushSMSSender": "短信发送名称3-11 位大小写字母、数字和空格a-zA-Z0-9",
"LunaSea Device ID": "LunaSea 设备 ID",
"Apprise URL": "Apprise URL",
"Apprise URL": "Apprise 网址",
"Example:": "例如:{0}",
"Read more:": "了解更多:{0}",
"Status:": "状态:{0}",
"Read more": "了解更多",
"appriseInstalled": "Apprise 已安装",
"appriseInstalled": "Apprise 已安装",
"appriseNotInstalled": "Apprise 未安装。{0}",
"Access Token": "Access Token",
"Access Token": "访问令牌",
"Channel access token": "频道 Access Token",
"Line Developers Console": "Line 开发者控制台",
"lineDevConsoleTo": "Line 开发者控制台 - {0}",
@ -335,7 +335,7 @@
"BodyInvalidFormat": "请求体不是有效的 JSON: ",
"Monitor History": "监控历史",
"clearDataOlderThan": "保留监控历史数据 {0} 天。",
"PasswordsDoNotMatch": "密码不匹配",
"PasswordsDoNotMatch": "密码不匹配",
"records": "记录",
"One record": "一条记录",
"steamApiKeyDescription": "要监控 Steam 游戏服务器,您需要 Steam Web-API 密钥。您可以在这里注册您的 API 密钥: ",
@ -383,7 +383,7 @@
"Services": "服务",
"Discard": "放弃",
"Cancel": "取消",
"Powered by": "Powered by",
"Powered by": "技术支持:",
"shrinkDatabaseDescription": "触发 SQLite 数据库的 VACUUM 命令,如果您的数据库是在 1.10.0 版本之后创建的,则已启用 AUTO_VACUUM不再需要此操作。",
"serwersms": "SerwerSMS.pl",
"serwersmsAPIUser": "API 用户名(包括 webapi_ 前缀)",
@ -396,7 +396,7 @@
"smseagleContact": "通讯录联系人",
"smseagleRecipientType": "收信人类型",
"smseagleRecipient": "收信人(多个需用半角逗号分隔)",
"smseagleToken": "API Access token",
"smseagleToken": "API访问令牌",
"smseagleUrl": "您的 SMSEagle 设备 URL",
"smseagleEncoding": "以 Unicode 发送",
"smseaglePriority": "消息优先级0-9默认为 0",
@ -414,8 +414,8 @@
"smtpDkimheaderFieldNames": "包含在哈希计算对象内的 Header 列表(可选)",
"smtpDkimskipFields": "不包含在哈希计算对象内的 Header 列表(可选)",
"wayToGetPagerDutyKey": "您可以在 Service -> Service Directory -> (选择一个 Service) -> Integrations -> Add integration 页面中搜索“Events API V2”以获取此 Integration Key更多信息请看{0}",
"Integration Key": "Integration Key",
"Integration URL": "Integration URL",
"Integration Key": "集成密钥",
"Integration URL": "集成网址",
"Auto resolve or acknowledged": "自动标记为已解决或已读",
"do nothing": "不做任何操作",
"auto acknowledged": "自动标记为已读",
@ -440,11 +440,11 @@
"Valid": "有效",
"Invalid": "无效",
"AccessKeyId": "AccessKey ID",
"SecretAccessKey": "AccessKey Secret",
"SecretAccessKey": "AccessKey 密码",
"PhoneNumbers": "PhoneNumbers",
"TemplateCode": "TemplateCode",
"SignName": "SignName",
"Sms template must contain parameters: ": "短信模板必须包含以下变量:",
"Sms template must contain parameters: ": "短信模板必须包含以下变量: ",
"Bark Endpoint": "Bark 接入点",
"Bark Group": "Bark 群组",
"Bark Sound": "Bark 铃声",
@ -522,7 +522,7 @@
"Show Powered By": "显示 Powered By",
"Domain Names": "域名",
"signedInDisp": "当前用户: {0}",
"signedInDispDisabled": "已禁用身份验证",
"signedInDispDisabled": "已禁用身份验证",
"RadiusSecret": "Radius 共享机密",
"RadiusSecretDescription": "客户端和服务器之间共享的密钥",
"RadiusCalledStationId": "NAS 网络访问服务器号码Called Station Id",
@ -534,7 +534,7 @@
"API Key": "API Key",
"Recipient Number": "收件人手机号码",
"From Name/Number": "发件人名称/手机号码",
"Leave blank to use a shared sender number.": "留空以使用平台共享的发件人手机号码",
"Leave blank to use a shared sender number.": "留空以使用平台共享的发件人手机号码",
"Octopush API Version": "Octopush API 版本",
"Legacy Octopush-DM": "旧版本 Octopush-DM",
"endpoint": "接入点",
@ -564,7 +564,7 @@
"pushoversounds echo": "Pushover Echo长铃声",
"pushoversounds updown": "Up Down长铃声",
"pushoversounds vibrate": "仅震动",
"pushoversounds none": "无(音)",
"pushoversounds none": "无(音)",
"pushyAPIKey": "API 密钥",
"pushyToken": "设备 Token",
"Show update if available": "有更新时通知",
@ -573,10 +573,10 @@
"Check how to config it for WebSocket": "查看如何将反向代理与 WebSocket 一起使用",
"Steam Game Server": "Steam 游戏服务器",
"Most likely causes:": "最可能的原因:",
"The resource is no longer available.": "您所请求的资源已不再可用",
"The resource is no longer available.": "您所请求的资源已不再可用",
"There might be a typing error in the address.": "您输入的地址可能有误。",
"What you can try:": "您可以尝试以下操作:",
"Retype the address.": "重新输入地址",
"Retype the address.": "重新输入地址",
"Go back to the previous page.": "返回到上一页面。",
"Coming Soon": "即将推出",
"wayToGetClickSendSMSToken": "您可以在{0}获取 API Username 和 API Key。",
@ -587,7 +587,7 @@
"Setup Docker Host": "配置 Docker 宿主信息",
"Connection Type": "连接方式",
"Docker Daemon": "Docker 守护进程",
"deleteDockerHostMsg": "您确定要删除此 Docker 宿主设置吗?这会影响所有 Docker 监控项",
"deleteDockerHostMsg": "您确定为所有监控项删除此 Docker 宿主设置吗?",
"socket": "Socket",
"tcp": "TCP / HTTP",
"Docker Container": "Docker 容器",
@ -597,13 +597,13 @@
"ntfy Topic": "ntfy Topic",
"Domain": "域名",
"Workstation": "工作站",
"disableCloudflaredNoAuthMsg": "您现在正处于 No Auth 模式,无需输入密码",
"disableCloudflaredNoAuthMsg": "您现在正处于 No Auth 模式,无需输入密码",
"trustProxyDescription": "信任 'X-Forwarded-*' 头。如果您的 Uptime Kuma 是通过 Nginx 或 Apache 等反代服务对外提供访问的话,则您应当启用本功能以获取正确的客户端 IP。",
"wayToGetLineNotifyToken": "您可以在 {0} 获取 Access token",
"Examples": "例如",
"Home Assistant URL": "Home Assistant 地址",
"Long-Lived Access Token": "长期访问令牌",
"Long-Lived Access Token can be created by clicking on your profile name (bottom left) and scrolling to the bottom then click Create Token. ": "长期访问令牌可通过点击左下角您的用户名,滚动到页面底部并点击 Create Token 按钮获取。",
"Long-Lived Access Token can be created by clicking on your profile name (bottom left) and scrolling to the bottom then click Create Token. ": "长期访问令牌可通过点击左下角您的用户名,滚动到页面底部并点击 Create Token 按钮获取。 ",
"Notification Service": "Notification Service",
"default: notify all devices": "默认:通知所有设备",
"A list of Notification Services can be found in Home Assistant under \"Developer Tools > Services\" search for \"notification\" to find your device/phone name.": "通知服务的列表可在 Home Assistant 中的 Developer Tools > Services 通过搜索您的设备或手机的名称来获得。",
@ -611,7 +611,7 @@
"Trigger type:": "触发类型:",
"Event type:": "事件类型:",
"Event data:": "事件数据:",
"Then choose an action, for example switch the scene to where an RGB light is red.": "然后您可以选择关联操作,例如切换到 RGB 灯发出红光的场景",
"Then choose an action, for example switch the scene to where an RGB light is red.": "然后您可以选择关联操作,例如切换到 RGB 灯发出红光的场景",
"Frontend Version": "前端版本",
"Frontend Version do not match backend version!": "前端版本与后端版本不匹配!",
"Base URL": "API 基础地址",
@ -623,10 +623,10 @@
"Optional": "可选的",
"squadcast": "Squadcast",
"SendKey": "SendKey",
"SMSManager API Docs": "SMSManager API 文档",
"SMSManager API Docs": "SMSManager API 文档 ",
"Gateway Type": "网关类型",
"SMSManager": "SMSManager",
"You can divide numbers with": "可用的分隔符:",
"You can divide numbers with": "可用的数字分隔符包括",
"or": "或",
"recurringInterval": "时间间隔",
"Recurring": "重复",
@ -679,5 +679,13 @@
"high": "高价",
"General Monitor Type": "常规监控类型",
"Passive Monitor Type": "被动监控类型",
"Specific Monitor Type": "针对监控类型"
}
"Specific Monitor Type": "针对监控类型",
"dataRetentionTimeError": "保留期必须为0或更大",
"Monitor": "监控项 | 监控项",
"Custom": "自定义",
"promosmsAllowLongSMS": "允许长的短信",
"confirmDeleteTagMsg": "你确定你要删除这个标签?与此标签关联的监视器不会被删除。",
"infiniteRetention": "设为0表示无限保留期。",
"Help": "帮助",
"Game": "游戏"
}

View File

@ -384,5 +384,22 @@
"statusMaintenance": "維護中",
"Enable DNS Cache": "啟用 DNS 快取",
"Enable": "啟用",
"Disable": "停用"
}
"Disable": "停用",
"Schedule maintenance": "計劃維護",
"Help": "幫助",
"Valid To:": "有效期至:",
"Date Created": "新增日期",
"resendEveryXTimes": "每 {0} 次便重新傳送",
"resendDisabled": "重新傳送已停用",
"enableGRPCTls": "允許以 TLS 連線傳送 gRPC 要求",
"recurringIntervalMessage": "每天一次 | 每 {0} 天一次",
"affectedMonitorsDescription": "選擇受目前維護影響的監測器",
"affectedStatusPages": "在已選取的狀態頁中顯示此維護訊息",
"Primary Base URL": "主要 Base URL",
"Passive Monitor Type": "被動監測器類型",
"Resend Notification if Down X times consequently": "若 X 次心跳皆離線,重新傳送通知",
"Game": "遊戲",
"Specific Monitor Type": "特定監測器類型",
"Monitor": "監測器 | 監測器",
"General Monitor Type": "一般監測器類型"
}

View File

@ -669,4 +669,4 @@
"General Monitor Type": "一般監測器類型",
"Passive Monitor Type": "被動監測器類型",
"Specific Monitor Type": "指定監測器類型"
}
}

View File

@ -45,6 +45,9 @@
<option value="steam">
{{ $t("Steam Game Server") }}
</option>
<option value="gamedig">
GameDig
</option>
<option value="mqtt">
MQTT
</option>
@ -107,16 +110,27 @@
</div>
</div>
<!-- Game -->
<!-- GameDig only -->
<div v-if="monitor.type === 'gamedig'" class="my-3">
<label for="game" class="form-label"> {{ $t("Game") }} </label>
<select id="game" v-model="monitor.game" class="form-select" required>
<option v-for="game in gameList" :key="game.keys[0]" :value="game.keys[0]">
{{ game.pretty }}
</option>
</select>
</div>
<!-- Hostname -->
<!-- TCP Port / Ping / DNS / Steam / MQTT / Radius only -->
<div v-if="monitor.type === 'port' || monitor.type === 'ping' || monitor.type === 'dns' || monitor.type === 'steam' || monitor.type === 'mqtt' || monitor.type === 'radius'" class="my-3">
<div v-if="monitor.type === 'port' || monitor.type === 'ping' || monitor.type === 'dns' || monitor.type === 'steam' || monitor.type === 'gamedig' ||monitor.type === 'mqtt' || monitor.type === 'radius'" class="my-3">
<label for="hostname" class="form-label">{{ $t("Hostname") }}</label>
<input id="hostname" v-model="monitor.hostname" type="text" class="form-control" :pattern="`${monitor.type === 'mqtt' ? mqttIpOrHostnameRegexPattern : ipOrHostnameRegexPattern}`" required>
</div>
<!-- Port -->
<!-- For TCP Port / Steam / MQTT / Radius Type -->
<div v-if="monitor.type === 'port' || monitor.type === 'steam' || monitor.type === 'mqtt' || monitor.type === 'radius'" class="my-3">
<div v-if="monitor.type === 'port' || monitor.type === 'steam' || monitor.type === 'gamedig' || monitor.type === 'mqtt' || monitor.type === 'radius'" class="my-3">
<label for="port" class="form-label">{{ $t("Port") }}</label>
<input id="port" v-model="monitor.port" type="number" class="form-control" required min="0" max="65535" step="1">
</div>
@ -351,6 +365,12 @@
</div>
</div>
<!-- Ping packet size -->
<div v-if="monitor.type === 'ping'" class="my-3">
<label for="packet-size" class="form-label">{{ $t("Packet Size") }}</label>
<input id="packet-size" v-model="monitor.packetSize" type="number" class="form-control" required min="1" max="65500" step="1">
</div>
<!-- HTTP / Keyword only -->
<template v-if="monitor.type === 'http' || monitor.type === 'keyword' || monitor.type === 'grpc-keyword' ">
<div class="my-3">
@ -635,7 +655,8 @@ export default {
acceptedStatusCodeOptions: [],
dnsresolvetypeOptions: [],
ipOrHostnameRegexPattern: hostNameRegexPattern(),
mqttIpOrHostnameRegexPattern: hostNameRegexPattern(true)
mqttIpOrHostnameRegexPattern: hostNameRegexPattern(true),
gameList: null,
};
},
@ -712,7 +733,18 @@ message HealthCheckResponse {
{
"HeaderName": "HeaderValue"
}` ]);
}
},
currentGameObject() {
if (this.gameList) {
for (let game of this.gameList) {
if (game.keys[0] === this.monitor.game) {
return game;
}
}
}
return null;
},
},
watch: {
@ -756,6 +788,24 @@ message HealthCheckResponse {
this.monitor.port = undefined;
}
}
// Get the game list from server
if (this.monitor.type === "gamedig") {
this.$root.getSocket().emit("getGameList", (res) => {
if (res.ok) {
this.gameList = res.gameList;
} else {
toast.error(res.msg);
}
});
}
},
currentGameObject(newGameObject, previousGameObject) {
if (!this.monitor.port || (previousGameObject && previousGameObject.options.port === this.monitor.port)) {
this.monitor.port = newGameObject.options.port;
}
this.monitor.game = newGameObject.keys[0];
}
},
@ -807,6 +857,7 @@ message HealthCheckResponse {
notificationIDList: {},
ignoreTls: false,
upsideDown: false,
packetSize: 56,
expiryNotification: false,
maxredirects: 10,
accepted_statuscodes: [ "200-299" ],
@ -947,7 +998,7 @@ message HealthCheckResponse {
// Enable it if the Docker Host is added in EditMonitor.vue
addedDockerHost(id) {
this.monitor.docker_host = id;
}
},
},
};
</script>