@ -17,8 +17,11 @@ The frontend code build into "dist" directory. The server (express.js) exposes t
## Directories
- config (dev config files)
- data (App data)
- db (Base database and migration scripts)
- dist (Frontend build)
- docker (Dockerfiles)
- extra (Extra useful scripts)
- public (Frontend resources for dev only)
- server (Server source code)
@ -80,13 +83,13 @@ Before deep into coding, discussion first is preferred. Creating an empty pull r
## Project Styles
I personally do not like it when something requires so much learning and configuration before you can finally start the app.
I personally do not like something that requires so many configurations before you can finally start the app. I hope Uptime Kuma installation could be as easy as like installing a mobile app.
- Easy to install for non-Docker users, no native build dependency is needed (at least for x86_64), no extra config, no extra effort required to get it running
- Easy to install for non-Docker users, no native build dependency is needed (for x86_64/armv7/arm64), no extra config, no extra effort required to get it running
- Single container for Docker users, no very complex docker-compose file. Just map the volume and expose the port, then good to go
- Settings should be configurable in the frontend. Environment variable is not encouraged, unless it is related to startup such as `DATA_DIR`.
- Settings should be configurable in the frontend. Environment variable is not encouraged, unless it is related to startup such as `DATA_DIR`
- Easy to use
- The web UI styling should be consistent and nice.
- The web UI styling should be consistent and nice
## Coding Styles
@ -95,7 +98,7 @@ I personally do not like it when something requires so much learning and configu
- Follow ESLint
- Methods and functions should be documented with JSDoc
## Name convention
## Name Conventions
- Javascript/Typescript: camelCaseType
- SQLite: snake_case (Underscore)
@ -109,7 +112,7 @@ I personally do not like it when something requires so much learning and configu
- IDE that supports ESLint and EditorConfig (I am using IntelliJ IDEA)
- A SQLite GUI tool (SQLite Expert Personal is suggested)
## Install dependencies
## Install Dependencies for Development
```bash
npm ci
@ -127,6 +130,12 @@ Port `3000` and port `3001` will be used.
npm run dev
```
But sometimes, you would like to keep restart the server, but not the frontend, you can run these command in two terminals:
```
npm run start-frontend-dev
npm run start-server-dev
```
## Backend Server
It binds to `0.0.0.0:3001` by default.
@ -142,12 +151,15 @@ express.js is used for:
### Structure in /server/
- jobs/ (Jobs that are running in another process)
- model/ (Object model, auto mapping to the database table name)
"No Monitors, please":"Все още няма монитори. Моля, добавете поне",
"add one":"един.",
"No Monitors, please":"Все още няма монитори. Моля,",
"add one":"добавете един.",
"Notification Type":"Тип известие",
"Email":"Имейл",
"Test":"Тест",
@ -561,7 +561,7 @@
"Container Name / ID":"Име на контейнер / ID",
"Docker Host":"Docker хост",
"Docker Hosts":"Docker хостове",
"trustProxyDescription":"Trust 'X-Forwarded-*' headers. Ако искате да получавате правилния IP адрес на клиента, а Uptime Kuma е зад системи като Nginx или Apache, трябва да разрешите тази опция.",
"trustProxyDescription":"Доверяване на 'X-Forwarded-*' хедърите. В случай, че желаете да получавате реалния IP адрес на клиента и Uptime Kuma е зад системи като Nginx или Apache, трябва да разрешите тази опция.",
"Examples":"Примери",
"Home Assistant URL":"Home Assistant URL адрес",
"Long-Lived Access Token":"Long-Lived токен за достъп",
@ -580,8 +580,8 @@
"goAlertInfo":"GoAlert е приложение с отворен код за планиране на повиквания, автоматизирани ескалации и известия (като SMS или гласови повиквания). Автоматично ангажирайте точния човек, по точния начин и в точното време! {0}",
"goAlertIntegrationKeyInfo":"Вземете общ API интеграционен ключ за услугата във формат \"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\" обикновено стойността на параметъра token на копирания URL адрес.",
"goAlert":"GoAlert",
"backupOutdatedWarning":"Отпаднало: Тъй като са добавени много функции, тази опция за архивиране не е достатъчно поддържана и не може да генерира или възстанови пълен архив.",
"backupRecommend":"Моля, архивирайте дяла или папката (./data/) директно вместо това.",
"backupOutdatedWarning":"Отпаднала: Тъй като са добавени много функции, тази опция за архивиране не е достатъчно поддържана и не може да генерира или възстанови пълен архив.",
"backupRecommend":"Вместо това моля, архивирайте директно дяла или папката (./data/).",
"Maintenance":"Поддръжка",
"statusMaintenance":"Поддръжка",
"Schedule maintenance":"Планиране на поддръжка",
@ -683,5 +683,13 @@
"dataRetentionTimeError":"Периодът на съхранение трябва да е 0 или по-голям",
"confirmDeleteTagMsg":"Сигурни ли сте, че желаете да изтриете този таг? Мониторите, свързани с него, няма да бъдат изтрити.",
"promosmsAllowLongSMS":"Позволи дълъг SMS",
"Packet Size":"Размер на пакет"
"Packet Size":"Размер на пакет",
"Custom Monitor Type":"Потребителски тип монитор",
"loadingError":"Данните не могат да бъдат изтеглени. Моля, опитайте отново по-късно.",
"plugin":"Плъгин | Плъгини",
"install":"Инсталирай",
"installing":"Инсталиране",
"uninstall":"Деинсталирай",
"uninstalling":"Деинсталиране",
"confirmUninstallPlugin":"Сигурни ли сте, че желаете да деинсталирате този плъгин?"
"certificationExpiryDescription":"Aktivovat oznámení nad HTTPS dohledy, pokud platnost TLS certifikátu vyprší za:",
@ -596,7 +596,7 @@
"Domain":"Doména",
"Workstation":"Pracovní stanice",
"disableCloudflaredNoAuthMsg":"Používáte režim bez ověření, heslo není vyžadováno.",
"trustProxyDescription":"Důvěřovat 'X-Forwarded-*' hlavičkám. Pokud chcete získat správnou IP adresu klientů a vaše instance Uptime Kuma je schována za Nginx nebo Apache, měli byste tuto možnost zapnout.",
"trustProxyDescription":"Důvěřovat 'X-Forwarded-*' hlavičkám. Pokud chcete získat správnou IP adresu klientů a vaše instance Uptime Kuma je za Nginx nebo Apache, měli byste tuto možnost zapnout.",
"wayToGetLineNotifyToken":"Přístupový token můžete získat na adrese {0}",
"Examples":"Příklady",
"Home Assistant URL":"Home Assistant URL",
@ -616,7 +616,7 @@
"goAlertInfo":"GoAlert je aplikace s otevřeným zdrojovým kódem pro plánování hovorů, automatické eskalace a upozornění (jako jsou SMS nebo hlasové hovory). Automaticky zapojte správnou osobu, správným způsobem a ve správný čas! {0}",
"goAlertIntegrationKeyInfo":"Obecný API integrační klíč pro danou službu ve formátu \"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\" se obvykle nachází ve zkopírované URL jako hodnota parametru token.",
"goAlert":"GoAlert",
"backupOutdatedWarning":"Zastaralé: V poslední době byla funkčnost aplikace značně rozšířena, nicméně součást pro zálohování nepokrývá všechny možnosti. Z tohoto důvodu není možné vygenerovat úplnou zálohu a zajistit obnovení všech dat.",
"backupOutdatedWarning":"Zastaralé: Vzhledem k tomu, že bylo přidáno mnoho funkcí a tato funkce zálohování je poněkud neudržovaná, nemůže vytvářet nebo obnovit kompletní zálohu.",
"backupRecommend":"Prosím, zálohujte si ručně celý svazek nebo datovou složku (./data/).",
"Optional":"Volitelný",
"squadcast":"Squadcast",
@ -666,12 +666,12 @@
"Date and Time":"Datum a čas",
"DateTime Range":"Rozsah data a času",
"Strategy":"Strategie",
"Free Mobile User Identifier":"Free Mobile User Identifier",
"Free Mobile API Key":"Free Mobile API Key",
"Free Mobile User Identifier":"Identifikátor uživatele Free Mobile",
"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.",
"trustProxyDescription":"Trust 'X-Forwarded-*' headers. If you want to get the correct client IP and your Uptime Kuma is behind a proxy such as Nginx or Apache, you should enable this.",
"wayToGetLineNotifyToken":"You can get an access token from {0}",
"Examples":"Examples",
"Home Assistant URL":"Home Assistant URL",
@ -384,7 +384,7 @@
"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!",
"backupOutdatedWarning":"Deprecated: Since a lot of features added and this backup feature is a bit unmaintained, it cannot generate or restore a complete backup.",
"backupOutdatedWarning":"Deprecated: Since a lot of features were 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",
@ -690,5 +690,6 @@
"onebotSafetyTips":"For safety, must set access token",
"PushDeer Key":"PushDeer Key",
"wayToGetClickSendSMSToken":"You can get API Username and API Key from {0} .",
"checkEverySecond":"Comprobar cada {0} segundos.",
"retriesDescription":"Número máximo de intentos antes de que el servicio se marque como CAÍDO y una notificación sea enviada.",
"checkEverySecond":"Comprobar cada {0} segundos",
"retriesDescription":"Número máximo de intentos antes de que el servicio se marque como CAÍDO y una notificación sea enviada",
"ignoreTLSError":"Ignorar error TLS/SSL para sitios web HTTPS",
"upsideDownModeDescription":"Invertir el estado. Si el servicio es alcanzable, está CAÍDO.",
"maxRedirectDescription":"Número máximo de direcciones a seguir. Establecer a 0 para deshabilitar.",
"acceptedStatusCodesDescription":"Seleccionar los códigos de estado que se consideran como respuesta exitosa.",
"passwordNotMatchMsg":"La contraseña repetida no coincide.",
"notificationDescription":"Por favor asigna una notificación a el/los monitor(es) para hacerlos funcional(es).",
"keywordDescription":"Palabra clave en HTML plano o respuesta JSON, es sensible a mayúsculas",
"keywordDescription":"Buscar palabra clave en HTML plano o respuesta JSON. La búsqueda es sensible a mayúsculas.",
"pauseDashboardHome":"Pausado",
"deleteMonitorMsg":"¿Seguro que quieres eliminar este monitor?",
"deleteNotificationMsg":"¿Seguro que quieres eliminar esta notificación para todos los monitores?",
@ -86,7 +86,7 @@
"Enable Auth":"Habilitar autenticación",
"disableauth.message1":"Seguro que deseas <strong>deshabilitar la autenticación</strong>?",
"disableauth.message2":"Es para <strong>quien implementa autenticación de terceros</strong> ante Uptime Kuma como por ejemplo Cloudflare Access.",
"Please use this option carefully!":"Por favor usar con cuidado.",
"Please use this option carefully!":"¡Utilice esta opción con cuidado!",
"Logout":"Cerrar sesión",
"Leave":"Salir",
"I understand, please disable":"Entiendo, por favor deshabilitar",
@ -128,7 +128,7 @@
"backupDescription3":"Los datos confidenciales, como los tokens de notificación, se incluyen en el archivo de exportación. Guárdalo con cuidado.",
"alertNoFile":"Selecciona un archivo para importar.",
"alertWrongFileType":"Selecciona un archivo JSON.",
"twoFAVerifyLabel":"Ingresa tu token para verificar que 2FA está funcionando",
"twoFAVerifyLabel":"Ingresa tu token para verificar que 2FA está funcionando:",
"tokenValidSettingsMsg":"¡El token es válido! Ahora puedes guardar la configuración de 2FA.",
"confirmEnableTwoFAMsg":"¿Estás seguro de que quieres habilitar 2FA?",
"confirmDisableTwoFAMsg":"¿Estás seguro de que quieres desactivar 2FA?",
@ -144,7 +144,7 @@
"Token":"Token",
"Show URI":"Mostrar URI",
"Clear all statistics":"Borrar todas las estadísticas",
"retryCheckEverySecond":"Reintentar cada {0} segundo.",
"retryCheckEverySecond":"Reintentar cada {0} segundos",
"importHandleDescription":"Elige 'Omitir existente' si deseas omitir todos los monitores o notificaciones con el mismo nombre. 'Sobrescribir' eliminará todos los monitores y notificaciones existentes.",
"confirmImportMsg":"¿Estás seguro de importar la copia de seguridad? Asegúrate de haber seleccionado la opción de importación correcta.",
"Heartbeat Retry Interval":"Intervalo de reintento de latido",
@ -155,7 +155,7 @@
"Options":"Opciones",
"Keep both":"Manténer ambos",
"Tags":"Etiquetas",
"Add New below or Select...":"Agregar nuevo a continuación o seleccionar...",
"Add New below or Select...":"Agregar nuevo a continuación o seleccionar…",
"Tag with this name already exist.":"Una etiqueta con este nombre ya existe.",
"Tag with this value already exist.":"Una etiqueta con este valor ya existe.",
"color":"color",
@ -168,7 +168,7 @@
"Indigo":"Índigo",
"Purple":"Morado",
"Pink":"Rosa",
"Search...":"Buscar...",
"Search...":"Buscar…",
"Avg. Ping":"Ping promedio",
"Avg. Response":"Respuesta promedio",
"Entry Page":"Página de entrada",
@ -188,7 +188,7 @@
"smtp":"Email (SMTP)",
"discord":"Discord",
"teams":"Microsoft Teams",
"signal":"Signal",
"signal":"Señal",
"gotify":"Gotify",
"slack":"Slack",
"rocket.chat":"Rocket.chat",
@ -205,5 +205,455 @@
"clearDataOlderThan":"Mantener los datos del historial del monitor durante {0} días.",
"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í: "
"steamApiKeyDescription":"Para monitorear un servidor de juegos de Steam, necesitas una clave Steam Web-API. Puedes registrar tu clave API aquí: ",
"Custom Monitor Type":"Monitor Tipo Personalizado",
"RadiusCallingStationIdDescription":"Identificador del dispositivo llamante",
"Using a Reverse Proxy?":"¿Usando un Proxy Inverso?",
"Check how to config it for WebSocket":"Compruebe cómo configurarlo para WebSocket",
"The resource is no longer available.":"El recurso ya no está disponible.",
"Push URL":"URL Push",
"Webhook URL":"URL Webhook",
"Application Token":"Token de Aplicación",
"appriseNotInstalled":"Apprise no está instalado. {0}",
"PushUrl":"URL Push",
"HeadersInvalidFormat":"Los encabezados de solicitud no son JSON válido: ",
"Post URL":"URL Post",
"emojiCheatSheet":"Hoja de trucos Emoji: {0}",
"webhookJsonDesc":"{0} es bueno para cualquier servidor HTTP moderno como Express.js",
"webhookFormDataDesc":"{multipart} es bueno para PHP. El JSON deberá analizarse con {decodeFunction}",
"webhookAdditionalHeadersDesc":"Establece encabezados adicionales enviados con el webhook.",
"appriseInstalled":"Apprise está instalado.",
"successMessage":"Mensaje de éxito",
"Pick Accepted Status Codes...":"Elija códigos de estado aceptados…",
"Post":"Post",
"shrinkDatabaseDescription":"Activar ASPIRADORA para SQLite. Si tu base de datos fue creada después 1.10.0, AUTO_ASPIRADORA ya está habilitada y esta acción no es necesaria.",
"deleteStatusPageMsg":"¿Estas seguro que quieres eliminar esta página de estado?",
"default":"Predeterminado",
"enabled":"Habilitado",
"setAsDefault":"Establecer Por Defecto",
"proxyDescription":"Proxies deben ser asignados a un monitor para que funcionen.",
"warningTimezone":"Está usando la zona horaria del servidor",
"trustProxyDescription":"Confiar en los encabezados 'X-Forwarded-*'. Si desea obtener la IP de cliente correcta y su Uptime Kuma está detrás de un proxy como Nginx o Apache, debe habilitar esto.",
"enableProxyDescription":"Este proxy no afectará las solicitudes de monitoreo hasta que se active. Puede controlar deshabilitar temporalmente el proxy de todos los monitores por estado de activación.",
"setAsDefaultProxyDescription":"Este proxy estará habilitado de forma predeterminada para los nuevos monitores. Todavía puede deshabilitar el proxy por separado para cada monitor.",
"Certificate Chain":"Cadena de certificado",
"Valid":"Válido",
"Invalid":"Inválido",
"User":"Usuario",
"Installed":"Instalado",
"Not installed":"No instalado",
"Running":"Funcionando",
"Not running":"No funcionando",
"Slug":"Slug",
"Accept characters:":"Aceptar caracteres:",
"Proxies":"Proxys",
"startOrEndWithOnly":"Empezar o terminar sólo con {0}",
"No consecutive dashes":"Sin guiones consecutivos",
"Next":"Siguiente",
"The slug is already taken. Please choose another slug.":"Este slug ya está en uso. Por favor, elige otro slug.",
"No Proxy":"Sin Proxy",
"Authentication":"Autenticación",
"HTTP Basic Auth":"Autenticación básica HTTP",
"New Status Page":"Nueva Página de Estado",
"Page Not Found":"Página No Encontrada",
"Reverse Proxy":"Proxy Inverso",
"About":"Acerca de",
"wayToGetCloudflaredURL":"(Descargar cloudflared de {0})",
"cloudflareWebsite":"Web de Cloudflare",
"Message:":"Mensaje:",
"Don't know how to get the token? Please read the guide:":"No sabes como obtener el token? Por favor, lee la guía:",
"The current connection may be lost if you are currently connecting via Cloudflare Tunnel. Are you sure want to stop it? Type your current password to confirm it.":"La conexión actual puede perderse si actualmente se está conectando a través del Tunel Cloudflare. ¿Seguro que quieres detenerlo? Escriba su contraseña actual para confirmarlo.",
"HTTP Headers":"Encabezados HTTP",
"Trust Proxy":"Proxy de Confianza",
"Other Software":"Otro Software",
"For example: nginx, Apache and Traefik.":"Por ejemplo: nginx, Apache y Traefik.",
"Please read":"Por favor lee",
"Subject:":"Asunto:",
"Valid To:":"Válido Para:",
"Days Remaining:":"Días Restantes:",
"Issuer:":"Emisor:",
"Fingerprint:":"Huella:",
"No status pages":"Sin páginas de estado",
"Domain Name Expiry Notification":"Notificación de Caducidad de Nombre de Dominio",
"Proxy":"Proxy",
"RadiusSecret":"Secreto de Radius",
"socket":"Socket",
"tcp":"TCP / HTTP",
"Docker Container":"Contenedor de Docker",
"Container Name / ID":"Nombre / ID de Contenedor",
"Docker Host":"Host Docker",
"Docker Hosts":"Hosts Docker",
"Domain":"Dominio",
"Workstation":"Puesto de Trabajo",
"Packet Size":"Tamaño del Paquete",
"ZohoCliq":"ZohoCliq",
"Bot Token":"Token de Bot",
"wayToGetTelegramToken":"Puedes conseguir un token desde {0}.",
"Chat ID":"ID de Chat",
"supportTelegramChatID":"Chat Directo de Soporte / Grupo / ID de Chat del Canal",
"wayToGetTelegramChatID":"Puedes obtener tu ID de chat enviando un mensaje al bot y visitando esta URL para ver el chat_id:",
"YOUR BOT TOKEN HERE":"TU TOKEN DE BOT AQUÍ",
"chatIDNotFound":"ID de Chat no encontrada; por favor, primero envía un mensaje a este bot",
"disableCloudflaredNoAuthMsg":"Estas en modo No Autenticado, no es necesaria una contraseña.",
"wayToGetLineNotifyToken":"Puede obtener un token de acceso desde {0}",
"Home Assistant URL":"URL de Asistente de Hogar",
"Long-Lived Access Token":"Token de acceso de larga duración",
"Notification Service":"Servicio de Notificaciones",
"default: notify all devices":"predeterminado: notificar todos los dispositivos",
"A list of Notification Services can be found in Home Assistant under \"Developer Tools > Services\" search for \"notification\" to find your device/phone name.":"Puede encontrar una lista de Servicios de notificación en Asistente de Hogar en \"Herramientas para desarrolladores > Servicios\", busque \"notificación\" para encontrar el nombre de su dispositivo/teléfono.",
"Automations can optionally be triggered in Home Assistant:":"Las automatizaciones se pueden activar opcionalmente en Asistente de Hogar:",
"Trigger type:":"Tipo de disparador:",
"Event type:":"Tipo de Evento:",
"Event data:":"Datos del Evento:",
"Then choose an action, for example switch the scene to where an RGB light is red.":"Luego elija una acción, por ejemplo, cambie la escena a donde una luz RGB es roja.",
"Frontend Version":"Versión de Interfaz",
"Frontend Version do not match backend version!":"La Versión de Interfaz no coincide con la versión backend!",
"backupRecommend":"Por favor, haz copia de seguridad del volumen o el archivo de datos (./data/) directamente en su lugar.",
"recurringInterval":"Intervalo",
"Recurring":"Periódico",
"strategyManual":"Activo/Inactivo Manualmente",
"lastDay2":"Penúltimo Día del Mes",
"lastDay3":"Antepenúltimo día del mes",
"lastDay4":"Trasantepenúltimo Día del Mes",
"IconUrl":"URL de Icono",
"dnsCacheDescription":"Es posible que no funcione en algunos entornos IPv6; desactívelo si encuentra algún problema.",
"Single Maintenance Window":"Ventana de Mantenimiento Único",
"secureOptionTLS":"TLS (465)",
"aboutMattermostChannelName":"Puedes sobreescribir el canal por defecto en el cual el Webhook publica introduciendo el nombre del canal en el campo \"Nombre del Canal\". Esto tiene que estar habilitado en la configuración de Mattermost Webhook. Ejemplo: #otro-canal",
"dataRetentionTimeError":"El periodo de retención debe ser 0 o mayor",
"Enable TLS":"Habilita TLS",
"Lowcost":"Bajo coste",
"You can divide numbers with":"Puedes dividir números con",
"Base URL":"URL Base",
"Proto Service Name":"Nombre de Servicio Proto",
"Proto Method":"Método Proto",
"Proto Content":"Contenido Proto",
"Economy":"Económico",
"iOS":"iOS",
"Android":"Android",
"Platform":"Plataforma",
"onebotPrivateMessage":"Privado",
"onebotMessageType":"Tipo de Mensaje OneBot",
"smseagleRecipientType":"Tipo de destinatario",
"smseagleRecipient":"Destinatario(s) (multiples deben separarse por comas)",
"smseagleEncoding":"Enviar como Unicode",
"smseaglePriority":"Prioridad del mensaje (0-9, predeterminado = 0)",
"stackfield":"Stackfield",
"Leave blank to use a shared sender number.":"Dejar en blanco para usar un número de remitente compartido.",
"Octopush API Version":"Versión API Octopush",
"From Name/Number":"De Nombre/Número",
"Recipient Number":"Número de Destinatario",
"Long-Lived Access Token can be created by clicking on your profile name (bottom left) and scrolling to the bottom then click Create Token. ":"El token de acceso de larga duración se puede crear haciendo clic en el nombre de su perfil (abajo a la izquierda) y desplazándose hasta la parte inferior y luego haciendo clic en Crear token. ",
"backupOutdatedWarning":"Obsoleto: dado que se agregaron muchas funciones y esta función de copia de seguridad no se mantiene desde hace un tiempo, no puede generar ni restaurar una copia de seguridad completa.",
"Optional":"Opcional",
"loadingError":"No se pueden obtener los datos, inténtelo de nuevo más tarde.",
"pushoverDesc2":"Si quieres enviar notificaciones a diferentes dispositivos, rellena el campo Dispositivo.",
"octopushLegacyHint":"Utilizas la versión anterior de Octopush (2011-2020) o la nueva versión?",
"For safety, must use secret key":"Por seguridad, deberías usar key secreta",
"signalImportant":"IMPORTANTE: No puedes mezclar grupos y números en destinatarios!",
"aboutWebhooks":"Más información sobre Webhooks en: {0}",
"smtpDkimHashAlgo":"Algoritmo Hash (Opcional)",
"promosmsPhoneNumber":"Número de teléfono (para destinatarios Polacos puedes omitir los códigos de área)",
"promosmsTypeFlash":"SMS FLASH - Mensaje se mostrará automáticamente en el dispositivo del destinatario. Limitado sólo a destinatarios Polacos.",
"promosmsSMSSender":"Nombre de Remitente SMS: Nombre pre-registrado o uno de los predeterminados: InfoSMS, SMS Info, MaxSMS, INFO, SMS",
"matrixDesc1":"Puedes encontrar la ID de sala interna mirando en la sección avanzado de los ajustes de sala en tu cliente Matrix. Debería ser algo como !QMdRCpUIfLwsfjxye6:home.server.",
"matrixDesc2":"Es altamente recomendable crear un nuevo usuario y no usar el token de acceso propio de tu usuario porque otorgaría acceso completo a tu cuenta y todas las salas que hayas entrado. En su lugar, crea un usuario nuevo e invítalo a la sala donde quieres recibir las notificaciones. Puedes obtener el token de acceso ejecutando {0}",
"plugin":"Complemento | Complementos",
"From Email":"Desde el Email",
"emailCustomSubject":"Asunto Personalizado",
"To Email":"Al Email",
"smtpCC":"CC",
"smtpBCC":"CCO",
"Discord Webhook URL":"URL Webhook de Discord",
"wayToGetDiscordURL":"Puede obtener esto yendo a Configuración del servidor -> Integraciones -> Crear webhook",
"Bot Display Name":"Nombre para mostrar del Bot",
"Hello @everyone is...":"Hola {'@'}todos están…",
"wayToGetTeamsURL":"Puedes aprender cómo crear una URL webhook {0}.",
"wayToGetZohoCliqURL":"Puedes aprender cómo crear una URL webhook {0}.",
"needSignalAPI":"Necesitas tener un cliente de señal con API REST.",
"wayToCheckSignalURL":"Puedes revisar esta URL para ver cómo configurar uno:",
"Number":"Número",
"Access Token":"Token de Acceso",
"Channel access token":"Token de acceso al canal",
"Line Developers Console":"Consola de Desarrolladores de Line",
"lineDevConsoleTo":"Consola de Desarrolladores de Line - {0}",
"Basic Settings":"Configuración Básica",
"Messaging API":"API de Mensajería",
"wayToGetLineChannelToken":"Primero accede al {0}, crea un proveedor y un canal (API de Mensajería), entonces puedes obtener el token de acceso al cana y el ID de usuario de los elementos de menú anteriormente mencionados.",
"Icon URL":"URL de Icono",
"aboutIconURL":"Puede proporcionar un enlace a una imagen en \"URL de icono\" para anular la imagen de perfil predeterminada. No se utilizará si se establece Icono Emoji.",
"enableGRPCTls":"Permite enviar solicitudes gRPC con conexión TLS",
"grpcMethodDescription":"Nombre del método es convertido a formato cammelCase tal como digoHola, verificandoTodo, etc.",
"dnsPortDescription":"Puerto servidor DNS. Por defecto al 53. Puedes cambiar el puerto en cualquier momento.",
"recurringIntervalMessage":"Ejecutar una vez al día | Ejecutar una vez cada {0} días",
"affectedMonitorsDescription":"Selecciona los monitores que se ven afectados por el mantenimiento actual",
"affectedStatusPages":"Muestra este mensaje de mantenimiento en las páginas de estado seleccionadas",
"atLeastOneMonitor":"Selecciona al menos un monitor afectado",
"Schedule maintenance":"Planifier la maintenance",
"Affected Monitors":"Sondes concernées",
"Pick Affected Monitors...":"Sélectionner les sondes concernées...",
"Pick Affected Monitors...":"Sélectionner les sondes concernées…",
"Start of maintenance":"Début de la maintenance",
"All Status Pages":"Toutes les pages d'état",
"Select status pages...":"Sélectionner les pages d'état...",
"Select status pages...":"Sélectionner les pages d'état…",
"recurringIntervalMessage":"Exécuter une fois par jour | Exécuter une fois tous les {0}jours",
"affectedMonitorsDescription":"Sélectionnez les sondes concernées par la maintenance en cours",
"affectedStatusPages":"Afficher ce message de maintenance sur les pages d'état sélectionnées",
@ -29,7 +29,7 @@
"pauseDashboardHome":"En pause",
"deleteMonitorMsg":"Êtes-vous sûr de vouloir supprimer cette sonde?",
"deleteMaintenanceMsg":"Voulez-vous vraiment supprimer cette maintenance?",
"deleteNotificationMsg":"Êtes-vous sûr de vouloir supprimer ce type de notifications ? Une fois désactivée, les services qui l'utilisent ne pourront plus envoyer de notifications.",
"deleteNotificationMsg":"Êtes-vous sûr de vouloir supprimer ce type de notification pour toutes les sondes?",
"dnsPortDescription":"Port du serveur DNS. La valeur par défaut est 53. Vous pouvez modifier le port à tout moment.",
"resolverserverDescription":"Le DNS de Cloudflare est utilisé par défaut, mais vous pouvez le changer si vous le souhaitez.",
"rrtypeDescription":"Veuillez sélectionner un type d'enregistrement DNS",
@ -177,7 +177,7 @@
"Token":"Jeton",
"Show URI":"Afficher l'URI",
"Tags":"Étiquettes",
"Add New below or Select...":"Ajoutez-en un en dessous ou sélectionnez-le ici...",
"Add New below or Select...":"Ajoutez-en un en dessous ou sélectionnez-le ici…",
"Tag with this name already exist.":"Une étiquette portant ce nom existe déjà.",
"Tag with this value already exist.":"Une étiquette avec cette valeur existe déjà.",
"color":"Couleur",
@ -190,7 +190,7 @@
"Indigo":"Indigo",
"Purple":"Violet",
"Pink":"Rose",
"Search...":"Rechercher...",
"Search...":"Rechercher…",
"Avg. Ping":"Ping moyen",
"Avg. Response":"Réponse moyenne",
"Entry Page":"Page d'accueil",
@ -238,7 +238,7 @@
"wayToGetDiscordURL":"Vous pouvez l'obtenir en allant dans « Paramètres du serveur » -> « Intégrations » -> « Créer un Webhook »",
"Bot Display Name":"Nom du robot (affiché)",
"Prefix Custom Message":"Préfixe du message personnalisé",
"wayToGetTeamsURL":"Vous pouvez apprendre comment créer une URL Webhook {0}.",
@ -348,8 +348,8 @@
"Security":"Sécurité",
"Steam API Key":"Clé d'API Steam",
"Shrink Database":"Réduire la base de données",
"Pick a RR-Type...":"Choisissez un type d'enregistrement...",
"Pick Accepted Status Codes...":"Choisissez les codes de statut acceptés...",
"Pick a RR-Type...":"Choisissez un type d'enregistrement…",
"Pick Accepted Status Codes...":"Choisissez les codes de statut acceptés…",
"Default":"Défaut",
"HTTP Options":"Options HTTP",
"Create Incident":"Créer un incident",
@ -593,7 +593,7 @@
"Domain":"Domaine",
"Workstation":"Poste de travail",
"disableCloudflaredNoAuthMsg":"Vous êtes en mode No Auth, un mot de passe n'est pas nécessaire.",
"trustProxyDescription":"Faire confiance aux en-têtes 'X-Forwarded-*'. Si vous souhaitez obtenir la bonne adresse IP client et que votre Uptime Kuma se situe derrière (nginx ou Apache) vous devez l'activer.",
"trustProxyDescription":"Faire confiance aux en-têtes 'X-Forwarded-*'. Si vous souhaitez obtenir la bonne adresse IP client et que votre Uptime Kuma se situe derrière un proxy (comme nginx ou Apache) vous devez l'activer.",
"wayToGetLineNotifyToken":"Vous pouvez obtenir un jeton d'accès auprès de {0}",
"Examples":"Exemples",
"Home Assistant URL":"URL vers Home Assistant",
@ -613,7 +613,7 @@
"goAlertInfo":"GoAlert est une application open source pour la planification des appels, les escalades automatisées et les notifications (comme les SMS ou les appels vocaux). Impliquez automatiquement la bonne personne, de la bonne manière et au bon moment ! {0}",
"goAlertIntegrationKeyInfo":"Obtenez la clé d'intégration d'API générique pour le service dans ce format \"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\" généralement la valeur du paramètre de jeton de l'URL copiée.",
"goAlert":"GoAlert",
"backupOutdatedWarning":"Obsolète:étant donné que de nombreuses fonctionnalités ont été ajoutées et que cette fonctionnalité de sauvegarde est non maintenue, elle ne peut pas générer ou restaurer une sauvegarde complète.",
"backupOutdatedWarning":"Obsolète:étant donné que de nombreuses fonctionnalités ont été ajoutées et que cette fonctionnalité de sauvegarde est non maintenue, elle ne peut pas générer ou restaurer une sauvegarde complète.",
"backupRecommend":"Veuillez sauvegarder le volume ou le dossier de données (./data/) directement à la place.",
"Optional":"Optionnel",
"squadcast":"Squadcast",
@ -683,5 +683,13 @@
"promosmsAllowLongSMS":"Autoriser les longs SMS",
"Help":"Aide",
"Game":"Jeux",
"Packet Size":"Taille du paquet"
"Packet Size":"Taille du paquet",
"loadingError":"Impossible de récupérer les données, veuillez réessayer plus tard.",
"plugin":"Plugin | Plugins",
"install":"Installer",
"installing":"Installation",
"uninstall":"Désinstaller",
"uninstalling":"Désinstallation",
"confirmUninstallPlugin":"Voulez-vous vraiment désinstaller ce plugin ?",
"Custom Monitor Type":"Type de sonde personnalisé"
"tokenValidSettingsMsg":"토큰이 유효해요! 이제 2단계 인증 설정을 저장할 수 있어요.",
"confirmEnableTwoFAMsg":"정말 2단계 인증을 활성화할까요?",
"confirmDisableTwoFAMsg":"정말 2단계 인증을 비활성화할까요?",
@ -98,7 +98,7 @@
"Enable Auth":"인증 활성화",
"disableauth.message1":"정말로 <strong>인증 기능을 끌까요</strong>?",
"disableauth.message2":"이 기능은 <strong>Cloudflare Access와 같은 서드파티 인증</strong>을 Uptime Kuma 앞에 둔 사용자를 위한 기능이에요.",
"Please use this option carefully!":"신중하게 사용하세요.",
"Please use this option carefully!":"신중하게 사용하세요!",
"Logout":"로그아웃",
"Leave":"나가기",
"I understand, please disable":"기능에 대해 이해했으니 꺼주세요.",
@ -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":"첫 페이지",
@ -189,15 +189,15 @@
"Bot Token":"봇 토큰",
"wayToGetTelegramToken":"토큰은 여기서 얻을 수 있어요: {0}.",
"Chat ID":"채팅 ID",
"supportTelegramChatID":"개인 채팅 / 그룹 / 채널의 ID를 지원해요.",
"wayToGetTelegramChatID":"봇에 메시지를 보내 채팅 ID를 얻고 밑에 URL로 이동해 chat_id를 볼 수 있어요.",
"supportTelegramChatID":"개인 채팅 / 그룹 / 채널의 ID를 지원해요",
"wayToGetTelegramChatID":"봇에 메시지를 보내 채팅 ID를 얻고 밑에 URL로 이동해 chat_id를 볼 수 있어요",
"YOUR BOT TOKEN HERE":"봇 토큰",
"chatIDNotFound":"채팅 ID를 찾을 수 없어요. 먼저 봇에게 메시지를 보내주세요.",
"chatIDNotFound":"채팅 ID를 찾을 수 없어요. 먼저 봇에게 메시지를 보내주세요",
"webhook":"Webhook",
"Post URL":"Post URL",
"Content Type":"Content Type",
"webhookJsonDesc":"{0}은 express.js와 같은 최신 HTTP 서버에 적합해요.",
"webhookFormDataDesc":"{multipart}은 PHP에 적합해요. {decodeFunction}를 기준으로 json을 디코딩하면 되어요.",
"webhookJsonDesc":"{0}은 Express.js와 같은 최신 HTTP 서버에 적합해요",
"webhookFormDataDesc":"{multipart}은 PHP에 적합해요. {decodeFunction}를 기준으로 JSON을 디코딩하면 되어요",
"smtp":"Email (SMTP)",
"secureOptionNone":"없음 / STARTTLS (25, 587)",
"secureOptionTLS":"TLS (465)",
@ -207,24 +207,24 @@
"smtpCC":"참조",
"smtpBCC":"숨은 참조",
"discord":"Discord",
"Discord Webhook URL":"Discord Webhook URL",
"wayToGetDiscordURL":"서버 설정 -> 연동 -> 웹후크 보기 -> 새 웹후크에서 얻을 수 있어요!",
"Discord Webhook URL":"Discord 웹훅 URL",
"wayToGetDiscordURL":"서버 설정 -> 연동 -> 웹후크 보기 -> 새 웹후크에서 얻을 수 있어요",
"Bot Display Name":"표시 이름",
"Prefix Custom Message":"접두사 메시지",
"Hello @everyone is...":"{'@'}everyone 서버 상태 알림이에요...",
"Hello @everyone is...":"{'@'}everyone 서버 상태 알림이에요…",
"teams":"Microsoft Teams",
"Webhook URL":"Webhook URL",
"wayToGetTeamsURL":"{0}에서 Webhook을 어떻게 만드는지 알아보세요!",
"Webhook URL":"웹훅 URL",
"wayToGetTeamsURL":"{0}에서 Webhook을 어떻게 만드는지 알아보세요.",
"signal":"Signal",
"Number":"숫자",
"Recipients":"받는 사람",
"needSignalAPI":"REST API를 사용하는 Signal 클라이언트가 있어야 해요.",
"wayToCheckSignalURL":"밑에 URL을 확인해 URL 설정 방법을 볼 수 있어요.",
"wayToCheckSignalURL":"밑에 URL을 확인해 URL 설정 방법을 볼 수 있어요:",
"signalImportant":"경고: 받는 사람의 그룹과 숫자는 섞을 수 없어요!",
"gotify":"Gotify",
"Application Token":"애플리케이션 토큰",
"Server URL":"서버 URL",
"Priority":"Priority",
"Priority":"우선 순위",
"slack":"Slack",
"Icon Emoji":"아이콘 이모지",
"Channel Name":"채널 이름",
@ -276,7 +276,7 @@
"aboutIconURL":"\"아이콘 URL\"에 사진 링크를 입력해 프로필 사진을 설정할 수 있어요. 아이콘 이모지가 설정되어 있으면 적용되지 않을 거예요.",
"aboutMattermostChannelName":"채널 이름을 입력하면 Webhook이 게시할 기본 채널을 재설정할 수 있어요. 이 설정은 Mattermost 웹훅 설정에서 활성화해야 해요. 예: #기타-채널",
"matrix":"Matrix",
"promosmsTypeEco":"SMS ECO - 저렴하지만 느리고 가끔 과부하에 걸려요. 폴란드 수신자만 사용할 수 있어요.",
"promosmsTypeEco":"SMS ECO - 저렴하지만 느리고 가끔 과부하에 걸려요. 폴란드 수신자만 사용할 수 있어요.",
"promosmsTypeFlash":"SMS FLASH - 메시지가 받는 사람 장치에 자동으로 표시되어요. 폴란드 수신자만 사용할 수 있어요.",
"promosmsTypeFull":"SMS FULL - SMS 프리미엄 티어, 보내는 사람 이름을 먼저 등록해야 해요. 알림 기능에 적합해요.",
"promosmsTypeSpeed":"SMS SPEED - 시스템에서 가장 높은 우선순위예요. 매우 빠르고 신뢰할 수 있지만 비용이 많이 들어요 (SMS 전체 가격의 약 두 배).",
@ -295,10 +295,10 @@
"matrixHomeserverURL":"Homeserver URL (http(s):// 와 함께 적어주세요. 그리고 포트 번호는 선택적 입니다.)",
"Internal Room Id":"내부 방 ID",
"matrixDesc1":"Matrix 클라이언트 방 설정의 고급 섹션에서 내부 방 ID를 찾을 수 있어요. 내부 방 ID는 이렇게 생겼답니다: !QMdRCpUIfLwsfjxye6:home.server.",
"matrixDesc2":"사용자의 모든 방에 대한 엑세스가 허용될 수 있어서 새로운 사용자를 만들고 원하는 방에만 초대한 후 엑세스 토큰을 사용하는 것이 좋아요. {0} 이 명령어를 통해 엑세스 토큰을 얻을 수 있어요.",
"Method":"Method",
"matrixDesc2":"사용자의 모든 방에 대한 엑세스가 허용될 수 있어서 새로운 사용자를 만들고 원하는 방에만 초대한 후 엑세스 토큰을 사용하는 것이 좋아요. {0} 이 명령어를 통해 엑세스 토큰을 얻을 수 있어요",
"Method":"메서드",
"Body":"Body",
"Headers":"Headers",
"Headers":"헤더",
"PushUrl":"Push URL",
"HeadersInvalidFormat":"요청 Headers의 JSON 형식이 올바르지 않아요: ",
"BodyInvalidFormat":"요청 Body의 JSON 형식이 올바르지 않아요: ",
@ -315,8 +315,8 @@
"Security":"보안",
"Steam API Key":"스팀 API 키",
"Shrink Database":"데이터베이스 축소",
"Pick a RR-Type...":"RR-Type을 골라주세요...",
"Pick Accepted Status Codes...":"상태 코드를 골라주세요...",
"Pick a RR-Type...":"RR-Type을 골라주세요…",
"Pick Accepted Status Codes...":"상태 코드를 골라주세요…",
"Default":"기본",
"HTTP Options":"HTTP 옵션",
"Create Incident":"인시던트 만들기",
@ -330,7 +330,7 @@
"light":"화이트",
"dark":"다크",
"Post":"게시",
"Please input title and content":"제목과 내용을 작성해주세요.",
"Please input title and content":"제목과 내용을 작성해주세요",
"Created":"생성 날짜",
"Last Updated":"마지막 업데이트",
"Unpin":"제거",
@ -375,7 +375,7 @@
"smtpDkimHashAlgo":"해시 알고리즘 (선택)",
"smtpDkimheaderFieldNames":"서명할 헤더 키 (선택)",
"smtpDkimskipFields":"서명하지 않을 헤더 키 (선택)",
"wayToGetPagerDutyKey":"Service -> Service Directory -> (서비스 선택) -> Integrations -> Add integration. 에서 찾을 수 있어요. 자세히 알아보려면 {0}에서 \"Events API V2\"를 검색해봐요.",
"wayToGetPagerDutyKey":"Service -> Service Directory -> (서비스 선택) -> Integrations -> Add integration. 에서 찾을 수 있어요. 자세히 알아보려면 {0}에서 \"Events API V2\"를 검색해봐요",
"Integration Key":"Integration 키",
"Integration URL":"Integration URL",
"Auto resolve or acknowledged":"자동 해결 혹은 승인",
@ -406,7 +406,7 @@
"PhoneNumbers":"휴대전화 번호",
"TemplateCode":"템플릿 코드",
"SignName":"SignName",
"Sms template must contain parameters: ":"SMS 템플릿은 다음과 같은 파라미터가 포함되어야 해요:",
"Sms template must contain parameters: ":"SMS 템플릿은 다음과 같은 파라미터가 포함되어야 해요:",
"Bark Endpoint":"Bark Endpoint",
"WebHookUrl":"웹훅 URL",
"SecretKey":"Secret Key",
@ -436,7 +436,7 @@
"Add New Status Page":"새로운 상태 페이지 만들기",
"Slug":"주소",
"Accept characters:":"허용되는 문자열:",
"startOrEndWithOnly":"{0}로 시작하거나 끝나야 해요.",
"startOrEndWithOnly":"{0}로 시작하거나 끝나야 해요",
"No consecutive dashes":"연속되는 대시는 허용되지 않아요",
"Next":"다음",
"The slug is already taken. Please choose another slug.":"이미 존재하는 주소에요. 다른 주소를 사용해 주세요.",
@ -456,10 +456,10 @@
"Other Software":"다른 소프트웨어",
"For example: nginx, Apache and Traefik.":"nginx, Apache, Traefik 등을 사용할 수 있어요.",
"Please read":"이 문서를 참조하세요:",
"Subject:":"Subject:",
"Valid To:":"Valid To:",
"Subject:":"발급 대상:",
"Valid To:":"유효 기간:",
"Days Remaining:":"남은 일수:",
"Issuer:":"Issuer:",
"Issuer:":"발급 기관:",
"Fingerprint:":"Fingerprint:",
"No status pages":"상태 페이지 없음",
"Domain Name Expiry Notification":"도메인 이름 만료 알림",
@ -470,7 +470,7 @@
"onebotGroupMessage":"그룹 메시지",
"onebotPrivateMessage":"개인 메시지",
"onebotUserOrGroupId":"그룹/사용자 ID",
"onebotSafetyTips":"안전을 위해 Access 토큰을 설정하세요.",
"onebotSafetyTips":"안전을 위해 Access 토큰을 설정하세요",
"PushDeer Key":"PushDeer 키",
"Footer Text":"Footer 문구",
"Show Powered By":"Powered By 문구 표시하기",
@ -524,8 +524,172 @@
"The resource is no longer available.":"더 이상 사용할 수 없어요...",
"There might be a typing error in the address.":"주소에 오탈자가 있을 수 있어요.",
"What you can try:":"해결 방법:",
"Retype the address.":"주소 다시 입력하기",
"Go back to the previous page.":"이전 페이지로 돌아가기",
"Coming Soon":"Coming Soon...",
"wayToGetClickSendSMSToken":"{0}에서 API 사용자 이름과 키를 얻을 수 있어요."
"Retype the address.":"주소 다시 입력하기.",
"Go back to the previous page.":"이전 페이지로 돌아가기.",
"Coming Soon":"Coming Soon",
"wayToGetClickSendSMSToken":"{0}에서 API 사용자 이름과 키를 얻을 수 있어요.",
"Custom Monitor Type":"커스텀 모니터링",
"deleteDockerHostMsg":"정말 이 도커 호스트를 모든 모니터링에서 삭제할까요?",
"trustProxyDescription":"'X-Forwarded-*' 헤더를 신뢰해요. 올바른 클라이언트 IP를 얻어야하고Uptime Kuma가 Nginx나 Apache 같은 프록시 뒤에 있다면 이 기능을 활성화해야 해요.",
"Long-Lived Access Token can be created by clicking on your profile name (bottom left) and scrolling to the bottom then click Create Token. ":"프로필 이름(왼쪽 아래)을 클릭하고 아래로 스크롤한 다음 토큰 만들기를 클릭하여 장기 액세스 토큰을 만들 수 있어요. ",
"Then choose an action, for example switch the scene to where an RGB light is red.":"그런 다음 동작을 선택해요, 예를 들어 장면을 RGB 조명이 빨간색인 곳으로 전환해요.",
"backupOutdatedWarning":"Deprecated: 많은 기능이 추가되었고 이 백업 기능은 유지 관리되지 않아 전체 백업을 생성하거나 복원할 수 없어요.",
"lastDay3":"매월 세 번째 마지막 날",
"maintenanceStatus-under-maintenance":"점검 중",
"dnsCacheDescription":"일부 IPv6 환경에서는 작동하지 않을 수 있어요. 문제가 발생하면 비활성화하세요.",
"wayToGetLineNotifyToken":"토큰은 여기서 얻을 수 있어요: {0}",
"Examples":"예시",
"Home Assistant URL":"홈 어시스턴트 URL",
"Long-Lived Access Token":"장기 엑세스 토큰",
"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.":"알림 서비스 목록은 홈 어시스턴트의 \"개발자 도구 > 서비스\"에서 \"알림\" 검색해 장치/전화 이름을 찾을 수 있어요.",
"Automations can optionally be triggered in Home Assistant:":"자동화는 Home Assistant에서 선택적으로 트리거될 수 있어요:",
"Connection Type":"연결 종류",
"Trigger type:":"트리거 종류:",
"Event type:":"이벤트 종류:",
"Event data:":"이벤트 데이터:",
"Frontend Version":"프론트엔드 버전",
"Frontend Version do not match backend version!":"프론트엔드 버전이 백엔드 버전과 일치하지 않아요!",
"confirmDeleteTagMsg":"정말 이 태그를 삭제할까요? 이 태그와 연결된 모니터링은 삭제되지 않아요.",
"infiniteRetention":"무한히 저장하려면 0으로 설정하세요.",
"backupRecommend":"대신 볼륨 또는 데이터 폴더 (./data/) 를 직접 백업하세요.",
"Optional":"선택",
"squadcast":"Squadcast",
"or":"혹은",
"recurringInterval":"반복 - 주기적",
"Recurring":"반복",
"strategyManual":"직접 활성/비활성화 하기",
"warningTimezone":"서버 표준 시간대를 사용해요",
"weekdayShortMon":"월",
"weekdayShortTue":"화",
"weekdayShortWed":"수",
"weekdayShortThu":"목",
"weekdayShortFri":"금",
"weekdayShortSat":"토",
"weekdayShortSun":"일",
"dayOfWeek":"요일",
"dayOfMonth":"날짜",
"lastDay":"마지막 날",
"lastDay1":"매월 마지막 날",
"lastDay2":"매월 마지막 날",
"lastDay4":"매월 네 번째 마지막 날",
"No Maintenance":"점검 일정이 없어요",
"pauseMaintenanceMsg":"정말 일시 정지 할까요?",
"maintenanceStatus-inactive":"비활성화",
"maintenanceStatus-scheduled":"예약됨",
"maintenanceStatus-ended":"완료됨",
"maintenanceStatus-unknown":"알 수 없음",
"Server Timezone":"서버 시간대",
"Display Timezone":"표시 시간대",
"statusPageMaintenanceEndDate":"종료",
"IconUrl":"아이콘 URL",
"Enable DNS Cache":"DNS 캐시 활성화",
"Enable":"활성화",
"Disable":"비활성화",
"Single Maintenance Window":"단일 점검",
"Maintenance Time Window of a Day":"점검 시간",
"Effective Date Range":"유효 날짜 범위",
"Schedule Maintenance":"점검 예약하기",
"Date and Time":"날짜 및 시간",
"DateTime Range":"날짜 시간 범위",
"wayToGetZohoCliqURL":"{0}에서 Webhook을 어떻게 만드는지 배울 수 있어요.",
"enableGRPCTls":"TLS 연결 gRPC 요청 전송 허용",
"grpcMethodDescription":"메서드 이름은 sayHello, check와 같은 카멜 케이스로 변환되어요.",
"deleteMaintenanceMsg":"정말 이 점검을 삭제할까요?",
"recurringIntervalMessage":"매일 한 번 실행 | {0}일마다 한 번 실행",
"affectedMonitorsDescription":"현재 점검에 영향을 받는 모니터링 선택하기",
"affectedStatusPages":"점검 메시지를 표시할 상태 페이지 선택하기",
"Kook":"Kook",
"atLeastOneMonitor":"최소 1개의 모니터링을 선택하세요",
"wayToGetKookBotToken":"{0} 에서 애플리케이션을 만들고 봇 토큰을 얻어요",
"Help":"도움말",
"Game":"게임",
"General Monitor Type":"일반 모니터링",
"Passive Monitor Type":"수동 모니터링",
"Specific Monitor Type":"특정 모니터링",
"Monitor":"모니터",
"Resend Notification if Down X times consequently":"X번 중단될 경우 알림 다시 보내기",
"Schedule maintenance":"점검 예약하기",
"Affected Monitors":"영향을 받는 모니터링",
"Pick Affected Monitors...":"영향을 받는 모니터링 선택하기…",
"Start of maintenance":"점검 시작",
"All Status Pages":"모든 상태 페이지",
"Select status pages...":"상태 페이지 선택하기…",
"Custom":"커스텀",
"webhookAdditionalHeadersTitle":"추가 헤더",
"webhookAdditionalHeadersDesc":"웹훅과 함께 전송될 추가 헤더를 설정해요.",
"Apply on all existing monitors":"Zastosuj do istniejących monitorów",
"Create":"Stwórz",
"Clear Data":"Usuń dane",
"Events":"Wydarzenia",
"Events":"Zdarzenia",
"Heartbeats":"Bicia serca",
"Auto Get":"Wykryj",
"backupDescription":"Możesz wykonać kopię zapasową wszystkich monitorów i wszystkich powiadomień do pliku JSON.",
@ -584,7 +584,7 @@
"Domain":"Domena",
"Workstation":"Stacja robocza",
"disableCloudflaredNoAuthMsg":"Jesteś w trybie No Auth, hasło nie jest wymagane.",
"trustProxyDescription":"Zaufaj nagłówkom 'X-Forwarded-*'. Jeśli chcesz uzyskać poprawne IP klienta, a twój Uptime Kuma jest za Nginx lub Apache, powinieneś to włączyć.",
"trustProxyDescription":"Zaufaj nagłówkom 'X-Forwarded-*'. Jeśli chcesz uzyskać poprawne IP klienta, a twój Uptime Kuma jest za proxy, takim jak Nginx lub Apache, powinieneś to włączyć.",
"wayToGetLineNotifyToken":"Możesz uzyskać token dostępu z {0}",
"Examples":"Przykłady",
"Home Assistant URL":"URL Home Assistant",
@ -682,5 +682,13 @@
"Free Mobile API Key":"Darmowy mobilny klucz API",
"Lowcost":"Tani",
"high":"wysoki",
"General Monitor Type":"Ogólny typ monitora"
"General Monitor Type":"Ogólny typ monitora",
"Packet Size":"Rozmiar pakietu",
"uninstalling":"Odinstalowywanie",
"loadingError":"Nie można pobrać danych, proszę spróbować ponownie później.",
"plugin":"Wtyczka | Wtyczki",
"install":"Instaluj",
"installing":"Instalowanie",
"uninstall":"Odinstaluj",
"confirmUninstallPlugin":"Czy na pewno chcesz odinstalować tę wtyczkę?"
"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.",
"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.",
"wayToGetTeamsURL":"Bir webhook URL'sinin nasıl oluşturulacağını öğrenebilirsiniz {0}.",
@ -240,7 +240,7 @@
"aboutWebhooks":"Webhook hakkında daha fazla bilgi: {0}",
"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}",
"emojiCheatSheet":"Emoji referans sayfası: {0}",
"PushByTechulus":"Push by Techulus",
"apprise":"Apprise (50'den fazla Bildirim hizmetini destekler)",
"GoogleChat":"Google Chat (sadece Google Workspace)",
@ -315,8 +315,8 @@
"Security":"Güvenlik",
"Steam API Key":"Steam API Anahtarı",
"Shrink Database":"Veritabanını Küçült",
"Pick a RR-Type...":"Bir RR-Tipi seçin...",
"Pick Accepted Status Codes...":"Kabul Edilen Durum Kodlarını Seçin...",
"Pick a RR-Type...":"Bir RR-Tipi seçin…",
"Pick Accepted Status Codes...":"Kabul Edilen Durum Kodlarını Seçin…",
"Default":"Varsayılan",
"HTTP Options":"HTTP Ayarları",
"Create Incident":"Olay Oluştur",
@ -324,13 +324,13 @@
"Content":"İçerik",
"Style":"Stil",
"info":"info",
"warning":"warning",
"danger":"danger",
"warning":"uyarı",
"danger":"tehlike",
"error":"hata",
"critical":"kritik",
"primary":"primary",
"light":"light",
"dark":"dark",
"primary":"öncelik",
"light":"hafif",
"dark":"koyu",
"Post":"Post",
"Please input title and content":"Lütfen başlık ve içerik girin",
"Created":"Oluşturuldu",
@ -348,7 +348,7 @@
"Services":"Hizmetler",
"Discard":"İptal Et",
"Cancel":"İptal Et",
"Powered by":"Powered by",
"Powered by":"Tarafından desteklenmektedir",
"shrinkDatabaseDescription":"SQLite için veritabanı VACUUM'unu tetikleyin. Veritabanınız 1.10.0'dan sonra oluşturulduysa, AUTO_VACUUM zaten etkinleştirilmiştir ve bu eyleme gerek yoktur.",
"serwersms":"SerwerSMS.pl",
"serwersmsAPIUser":"API Kullanıcı Adı (webapi_ öneki dahil)",
@ -390,13 +390,13 @@
"deleteProxyMsg":"Bu proxy'yi tüm servisler için silmek istediğinizden emin misiniz?",
"proxyDescription":"Proxy'lerin çalışması için bir servise atanması gerekir.",
"enableProxyDescription":"Bu proxy, etkinleştirilene kadar izleme isteklerini etkilemeyecektir. Aktivasyon durumuna göre proxy'yi tüm servislerden geçici olarak devre dışı bırakabilirsiniz.",
"setAsDefaultProxyDescription":"Bu proxy, yeni servisler için varsayılan olarak etkinleştirilecektir. Yine de proxy'yi her servis için ayrı ayrı devre dışı bırakabilirsiniz.",
"setAsDefaultProxyDescription":"Bu proxy, yeni servisler için varsayılan olarak etkinleştirilecektir. Yine de proxy'yi her bir servis için devre dışı bırakabilirsiniz.",
"Certificate Chain":"Sertifika Zinciri",
"Valid":"Geçerli",
"Invalid":"Geçersiz",
"AccessKeyId":"AccessKey ID",
"SecretAccessKey":"AccessKey Secret",
"PhoneNumbers":"PhoneNumbers",
"PhoneNumbers":"Telefon numaraları",
"TemplateCode":"TemplateCode",
"SignName":"SignName",
"Sms template must contain parameters: ":"Sms şablonu parametreleri içermelidir: ",
@ -412,8 +412,8 @@
"Android":"Android",
"Huawei":"Huawei",
"High":"High",
"Retry":"Retry",
"Topic":"Topic",
"Retry":"Tekrar",
"Topic":"Başlık",
"WeCom Bot Key":"WeCom Bot Key",
"Setup Proxy":"Proxy kur",
"Proxy Protocol":"Proxy Protokolü",
@ -550,7 +550,7 @@
"Domain":"Domain",
"Workstation":"İş İstasyonu",
"disableCloudflaredNoAuthMsg":"Yetki yok modundasınız, şifre gerekli değil.",
"trustProxyDescription":"'X-Forwarded-*' başlıklarına güvenin. Doğru istemci IP'sini almak istiyorsanız ve Uptime Kuma'nız Nginx veya Apache'nin arkasındaysa, bunu etkinleştirmelisiniz.",
"trustProxyDescription":"'X-Forwarded-*' başlıklarına güvenin. Doğru istemci IP'sini almak istiyorsanız ve Uptime Kuma'nız Nginx veya Apache gibi bir proxy'nin arkasındaysa, bunu etkinleştirmelisiniz.",
"wayToGetLineNotifyToken":"{0} adresinden bir erişim jetonu alabilirsiniz.",
"Examples":"Örnekler",
"Home Assistant URL":"Home Assistant URL",
@ -570,7 +570,7 @@
"goAlertInfo":"GoAlert, çağrı üzerine zamanlama, otomatik eskalasyonlar ve bildirimler (SMS veya sesli çağrılar gibi) için açık kaynaklı bir uygulamadır. Doğru kişiyi, doğru şekilde ve doğru zamanda otomatik olarak devreye sokun! {0}",
"goAlertIntegrationKeyInfo":"Servis için genel API entegrasyon anahtarını, genellikle kopyalanan URL'nin belirteç parametresinin değeri olan \"aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\" biçiminde alın.",
"goAlert":"GoAlert",
"backupOutdatedWarning":"Kullanımdan Kaldırıldı: Birçok özellik eklendiğinden ve bu yedekleme özelliği biraz bakımsız olduğundan, tam bir yedekleme oluşturamaz veya geri yükleyemez.",
"backupOutdatedWarning":"Kullanımdan kaldırıldı: Birçok özellik eklendiğinden ve bu yedekleme özelliği biraz bakımsız olduğundan tam bir yedekleme oluşturamaz veya geri yükleyemez.",
"backupRecommend":"Lütfen bunun yerine birimi veya veri klasörünü (./data/) doğrudan yedekleyin.",
"enableGRPCTls":"TLS bağlantısıyla gRPC isteği göndermeye izin ver",
"grpcMethodDescription":"Yöntem adı, sayHello, check, vb. gibi cammelCase biçimine dönüştürülür.",
"Long-Lived Access Token can be created by clicking on your profile name (bottom left) and scrolling to the bottom then click Create Token. ":"若要取得長期有效 Access Token,請按您的個人檔案名稱 (左下角),捲動至最下方,然後按建立 Token。 ",
"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 中查看通知服務的列表,在\"開發者工具 > 服務\"下搜尋\"通知\"來找到您的裝置/手機的名稱。",
"Don't know how to get the token? Please read the guide:":"不知道如何取得權杖?請閱讀指南:",
"The current connection may be lost if you are currently connecting via Cloudflare Tunnel. Are you sure want to stop it? Type your current password to confirm it.":"如果您正透過 Cloudflare Tunnel 連線,可能會導致連線中斷。您確定要停止嗎?請輸入密碼以確認。",
"HTTP Headers":"HTTP Headers",
"Trust Proxy":"信任 Proxy",
"Other Software":"其他軟件",
"For example: nginx, Apache and Traefik.":"例如 nginx、Apache 和 Traefik。",
"Please read":"請閱覽",
"Subject:":"標題:",
"Days Remaining:":"餘下日數:",
"Issuer:":"簽發者:",
"Fingerprint:":"指紋:",
"No status pages":"無 Status Page",
"Domain Name Expiry Notification":"Domain 到期通知",
"Footer Text":"Footer 文字",
"Show Powered By":"顯示 \"Powered By\"",
"Domain Names":"Domain",
"signedInDisp":"登入為 {0}",
"signedInDispDisabled":"驗證已停用。",
"RadiusSecret":"Radius Secret",
"RadiusSecretDescription":"Client 與 Server 之間的共享 Secret",
"RadiusCalledStationId":"Called Station Id",
"RadiusCallingStationId":"Calling Station Id",
"Certificate Expiry Notification":"証書過期通知",
"API Username":"API 使用者名稱",
"API Key":"API Key",
"Show update if available":"有更新時顯示",
"Also check beta release":"檢查 Beta 版本",
"Using a Reverse Proxy?":"正在使用 Reverse Proxy?",
"Check how to config it for WebSocket":"查看如何加入 WebSocket 設定",
"Steam Game Server":"Steam 遊戲 Server",
"Most likely causes:":"最可能原因:",
"The resource is no longer available.":"資源已不能存取。",
"There might be a typing error in the address.":"網址可能輸入錯誤。",
"What you can try:":"您可以嘗試:",
"Retype the address.":"重新輸入網址。",
"Go back to the previous page.":"返回上一頁。",
"Coming Soon":"即將推出",
"Connection String":"Connection String",
"Query":"Query",
"settingsCertificateExpiry":"TLS 証書到期",
"certificationExpiryDescription":"証書將於 X 天後到期時觸發 HTTPS 監測器通知:",