546 lines
27 KiB
JSON
546 lines
27 KiB
JSON
{
|
|
"meta": {
|
|
"code": "en",
|
|
"name": "English",
|
|
"native_name": "English",
|
|
"locale": "en-GB"
|
|
},
|
|
"translations": {
|
|
"meta.description": "Local GREE air conditioner controller",
|
|
"status.connecting": "Connecting…",
|
|
"status.connected": "Connected",
|
|
"status.disconnected": "Disconnected",
|
|
"status.connectionError": "Connection error",
|
|
"status.online": "Online",
|
|
"status.offline": "Offline",
|
|
"controls.language": "Language",
|
|
"controls.theme": "Theme",
|
|
"theme.system": "System",
|
|
"theme.light": "Light",
|
|
"theme.dark": "Dark",
|
|
"nav.navigation": "Navigation",
|
|
"nav.dashboard": "Dashboard",
|
|
"nav.devices": "Devices",
|
|
"nav.zones": "Zones",
|
|
"nav.history": "History",
|
|
"nav.more": "More",
|
|
"nav.schedules": "Schedules",
|
|
"nav.automations": "Automations",
|
|
"nav.settings": "Settings",
|
|
"nav.logs": "Events",
|
|
"nav.logsAndEvents": "Events and logs",
|
|
"actions.refresh": "Refresh",
|
|
"actions.discover": "Discover",
|
|
"actions.discovering": "Searching…",
|
|
"actions.add": "Add",
|
|
"actions.show": "Show",
|
|
"actions.save": "Save",
|
|
"actions.cancel": "Cancel",
|
|
"actions.edit": "Edit",
|
|
"actions.delete": "Delete",
|
|
"actions.read": "Read",
|
|
"actions.bind": "Bind",
|
|
"actions.noChange": "No change",
|
|
"actions.turnOn": "Turn on",
|
|
"actions.turnOff": "Turn off",
|
|
"dashboard.home": "Home",
|
|
"dashboard.title": "Comfort under control",
|
|
"dashboard.loading": "Loading devices…",
|
|
"dashboard.quickControl": "Quick control",
|
|
"dashboard.summary": "{online} of {total} devices online{active}.",
|
|
"dashboard.summaryActive": ", {count} running",
|
|
"dashboard.empty": "No devices. Start discovery or add a device manually.",
|
|
"dashboard.metricOnline": "Online",
|
|
"dashboard.metricActive": "Active",
|
|
"dashboard.metricDemand": "Zones requesting",
|
|
"devices.lan": "LAN network",
|
|
"devices.addManual": "Add manually",
|
|
"devices.add": "Add device",
|
|
"devices.ipAddress": "IP address",
|
|
"devices.protocol": "Protocol",
|
|
"devices.keyOptional": "Key (optional)",
|
|
"devices.keyPlaceholder": "Leave empty for automatic bind",
|
|
"devices.simulated": "Simulated device",
|
|
"devices.simulator": "simulator",
|
|
"devices.power": "Power",
|
|
"devices.currentTemperature": "Temperature",
|
|
"devices.outdoor": "outside",
|
|
"devices.quiet": "Quiet",
|
|
"devices.swing": "Swing",
|
|
"devices.turbo": "Turbo",
|
|
"devices.emptyTitle": "No devices",
|
|
"devices.emptyText": "Use Discover while the controller is on the same LAN.",
|
|
"devices.readDone": "Device state updated",
|
|
"devices.bound": "Device bound",
|
|
"devices.added": "Device added",
|
|
"zones.automation": "Automation",
|
|
"zones.new": "New zone",
|
|
"zones.description": "Each zone is a fast thermostat. It normally follows the house heating/cooling mode and changes the AC setpoint instead of cycling power.",
|
|
"zones.hysteresis": "Hysteresis °C",
|
|
"zones.source": "Temperature strategy",
|
|
"zones.greeSensor": "GREE only",
|
|
"zones.combinedSensor": "GREE + room sensor",
|
|
"zones.externalSensor": "Room sensor only",
|
|
"zones.minOn": "Min. ON (s)",
|
|
"zones.minOff": "Min. OFF (s)",
|
|
"zones.greeSource": "GREE sensor",
|
|
"zones.combinedSource": "GREE + room sensor",
|
|
"zones.externalSource": "room sensor",
|
|
"zones.measurement": "Control temperature",
|
|
"zones.demand": "Demand",
|
|
"zones.emptyTitle": "No zones",
|
|
"zones.emptyText": "Add a zone to control temperature automatically.",
|
|
"zones.roomSensorEntity": "Room sensor entity_id",
|
|
"zones.roomSensorWeight": "Room sensor weight %",
|
|
"zones.maxDifference": "Max. sensor difference °C",
|
|
"zones.sensorHelp": "This sensor belongs only to this zone. If it becomes unavailable, the controller automatically falls back to the GREE sensor.",
|
|
"zones.greeTemp": "GREE",
|
|
"zones.externalTemp": "Room",
|
|
"zones.usedSource": "used",
|
|
"zones.sourceDevice": "GREE",
|
|
"zones.sourceExternal": "room sensor",
|
|
"zones.sourceCombined": "combined",
|
|
"zones.sourceFallback": "GREE fallback",
|
|
"zones.sourceDiscrepancy": "GREE fallback: sensor mismatch",
|
|
"zones.sourceUnavailable": "unavailable",
|
|
"schedules.calendar": "Calendar",
|
|
"schedules.weekdays": "Weekdays",
|
|
"schedules.crossMidnight": "Intervals crossing midnight are supported",
|
|
"schedules.emptyTitle": "No schedules",
|
|
"schedules.emptyText": "Set a temperature by day and time.",
|
|
"automations.rules": "Rules",
|
|
"automations.namePlaceholder": "Emergency cooling",
|
|
"automations.trigger": "Trigger",
|
|
"automations.tempAbove": "Temperature above",
|
|
"automations.tempBelow": "Temperature below",
|
|
"automations.time": "Time",
|
|
"automations.measurementDevice": "Measurement device",
|
|
"automations.thresholdC": "Threshold °C",
|
|
"automations.action": "Action",
|
|
"automations.triggerAt": "at {time}",
|
|
"automations.triggerAbove": "above {temperature}",
|
|
"automations.triggerBelow": "below {temperature}",
|
|
"automations.triggerSummary": "Trigger {trigger} · action: {device}",
|
|
"automations.last": "Last",
|
|
"automations.emptyTitle": "No automations",
|
|
"automations.emptyText": "Add a temperature or time rule.",
|
|
"history.measurements": "Measurements",
|
|
"history.title": "Climate history",
|
|
"history.6h": "6 hours",
|
|
"history.24h": "24 hours",
|
|
"history.7d": "7 days",
|
|
"history.30d": "30 days",
|
|
"history.noData": "No measurements for the selected period",
|
|
"settings.system": "System",
|
|
"settings.controller": "Controller",
|
|
"settings.clientId": "Client identifier",
|
|
"settings.pollInterval": "Poll interval (s)",
|
|
"settings.zoneInterval": "Zone interval (s)",
|
|
"settings.broadcast": "Broadcast address",
|
|
"settings.discoveryTimeout": "Discovery timeout (ms)",
|
|
"settings.simulationMode": "Simulation mode",
|
|
"settings.haTokenKeep": "Leave empty to keep the saved token",
|
|
"settings.haTokenSaved": "Token saved — leave empty to keep it",
|
|
"settings.haLongLivedToken": "Long-Lived Access Token",
|
|
"settings.defaultEntity": "Default entity_id",
|
|
"settings.testHa": "Test HA",
|
|
"settings.systemState": "System status",
|
|
"settings.version": "Version",
|
|
"settings.uptime": "Uptime",
|
|
"settings.apiAuth": "API authentication",
|
|
"settings.enabled": "enabled",
|
|
"settings.disabled": "disabled",
|
|
"logs.diagnostics": "Diagnostics",
|
|
"logs.emptyTitle": "No events",
|
|
"logs.emptyText": "The event log is empty.",
|
|
"common.name": "Name",
|
|
"common.zone": "Zone",
|
|
"common.device": "Device",
|
|
"common.mode": "Mode",
|
|
"common.target": "Target",
|
|
"common.targetC": "Target °C",
|
|
"common.temperature": "Temperature",
|
|
"common.temperatureC": "Temperature °C",
|
|
"common.schedule": "Schedule",
|
|
"common.automation": "Automation",
|
|
"common.enabled": "Enabled",
|
|
"common.disabled": "Disabled",
|
|
"common.active": "Active",
|
|
"common.from": "From",
|
|
"common.to": "To",
|
|
"common.power": "Power",
|
|
"common.on": "ON",
|
|
"common.off": "OFF",
|
|
"common.noDevice": "No device",
|
|
"common.noZone": "No zone",
|
|
"common.cooldown": "Cooldown",
|
|
"common.cooldownSeconds": "Cooldown (s)",
|
|
"common.removed": "Removed",
|
|
"common.updated": "Data refreshed",
|
|
"common.saved": "Saved",
|
|
"placeholder.livingRoom": "Living room",
|
|
"placeholder.night": "Night",
|
|
"mode.auto": "Auto",
|
|
"mode.cool": "Cooling",
|
|
"mode.dry": "Dry",
|
|
"mode.fan": "Fan",
|
|
"mode.heat": "Heating",
|
|
"fan.auto": "Auto",
|
|
"fan.low": "Low",
|
|
"fan.mediumLow": "Medium-low",
|
|
"fan.medium": "Medium",
|
|
"fan.mediumHigh": "Medium-high",
|
|
"fan.high": "High",
|
|
"auth.required": "Authentication required",
|
|
"auth.token": "Access token",
|
|
"auth.connect": "Connect",
|
|
"auth.invalid": "Invalid access token",
|
|
"error.http": "HTTP error {status}",
|
|
"confirm.delete": "Delete {label}?",
|
|
"label.device": "device",
|
|
"label.zone": "zone",
|
|
"label.schedule": "schedule",
|
|
"label.automation": "automation",
|
|
"toast.found": "Found: {count}",
|
|
"toast.haTemperature": "Home Assistant: {temperature}°C",
|
|
"day.1": "Mon",
|
|
"day.2": "Tue",
|
|
"day.3": "Wed",
|
|
"day.4": "Thu",
|
|
"day.5": "Fri",
|
|
"day.6": "Sat",
|
|
"day.7": "Sun",
|
|
"settings.haSensorInput": "Home Assistant sensor input",
|
|
"settings.haSensorInputHint": "Optional. Used only when a room zone reads an external Home Assistant temperature sensor.",
|
|
"settings.haIntegrationAccess": "Home Assistant integration access",
|
|
"settings.haIntegrationHint": "Create a controller token and paste it into the GREE Controller integration in Home Assistant.",
|
|
"settings.newToken": "Create new token",
|
|
"settings.noTokens": "No integration tokens",
|
|
"settings.noTokensHint": "Create a token before adding GREE Controller to Home Assistant.",
|
|
"settings.tokenCreated": "Token created",
|
|
"settings.tokenCreatedHint": "Copy this token now. It will not be shown again.",
|
|
"settings.created": "Created",
|
|
"actions.copy": "Copy",
|
|
"actions.revoke": "Revoke",
|
|
"actions.done": "Done",
|
|
"confirm.revokeToken": "Revoke this Home Assistant access token?",
|
|
"toast.tokenCreated": "Home Assistant access token created",
|
|
"toast.tokenCopied": "Token copied",
|
|
"toast.tokenRevoked": "Token revoked",
|
|
"devices.protocolAuto": "Auto (V1 + V2)",
|
|
"devices.rename": "Name / protocol",
|
|
"devices.protocolChangeHint": "Changing protocol clears the saved device key and performs a new bind on the next request.",
|
|
"discovery.title": "Discover GREE devices",
|
|
"discovery.help": "Auto searches both AES-ECB and AES-GCM devices. Multiple passes improve discovery when several Wi-Fi modules answer the same broadcast.",
|
|
"discovery.protocol": "Discovery protocol",
|
|
"discovery.passes": "Scan passes",
|
|
"discovery.timeout": "Total scan time (ms)",
|
|
"zones.quickHint": "Quick target and mode control",
|
|
"actions.later": "Later",
|
|
"discovery.nameDevices": "Name discovered devices",
|
|
"discovery.nameDevicesHelp": "Give each new unit a friendly room name. The technical model and MAC remain available in diagnostics.",
|
|
"dashboard.quickThermostats": "Quick thermostats",
|
|
"common.unavailable": "Unavailable",
|
|
"mode.off": "Off",
|
|
"house.seasonMode": "Home climate mode",
|
|
"house.smartThermostat": "Smart thermostat",
|
|
"house.setpointStrategy": "Cooling or heating controls zones automatically. “Do not control” leaves devices and manually activated zones untouched by the house thermostat.",
|
|
"house.outdoor": "Outdoor",
|
|
"house.modeUpdated": "Home climate mode updated",
|
|
"zones.modePolicy": "Mode policy",
|
|
"zones.followHouse": "Follow house mode",
|
|
"zones.followHouseShort": "House",
|
|
"zones.profileTemperatures": "Comfort / sleep / away temperatures",
|
|
"zones.minAdjust": "Minimum adjustment interval (s)",
|
|
"zones.standbyOffset": "Standby setpoint offset °C",
|
|
"zones.smartFan": "Smart fan assist",
|
|
"zones.deviceTarget": "AC target",
|
|
"zones.overrideUntil": "Manual until",
|
|
"zones.scheduleControl": "Schedule control",
|
|
"zones.requesting": "Comfort demand",
|
|
"zones.satisfied": "Satisfied / inverter standby",
|
|
"zones.quickHintSmart": "Quick changes override the schedule until its next transition.",
|
|
"preset.auto": "Auto",
|
|
"preset.comfort": "Comfort",
|
|
"preset.sleep": "Sleep",
|
|
"preset.away": "Away",
|
|
"preset.custom": "Custom",
|
|
"schedules.quickSetup": "Quick schedule setup",
|
|
"schedules.quickSetupHint": "Choose a zone and a ready-made daily rhythm. You can edit every generated entry afterwards.",
|
|
"schedules.templateFamily": "Family",
|
|
"schedules.templateChild": "Child room",
|
|
"schedules.templateBedroom": "Bedroom",
|
|
"schedules.templateWorkday": "Workday",
|
|
"schedules.templateAlways": "Always comfort",
|
|
"schedules.chooseZone": "Choose a zone first",
|
|
"schedules.templateApplied": "Schedule preset applied",
|
|
"schedules.profile": "Profile",
|
|
"settings.outdoorEntity": "Outdoor temperature entity_id",
|
|
"settings.outdoorAssist": "Use outdoor temperature as smart-control assist",
|
|
"settings.allowInvalidTls": "Allow invalid/self-signed HTTPS certificate",
|
|
"settings.allowInvalidTlsHint": "Use only for a trusted local Home Assistant server, for example https://192.168.50.25.",
|
|
"zones.sleepNow": "Sleep now",
|
|
"house.autoAll": "Auto schedule",
|
|
"house.comfortAll": "Comfort all",
|
|
"house.sleepAll": "Sleep all",
|
|
"house.awayAll": "Away all",
|
|
"house.presetUpdated": "Home preset updated",
|
|
"schedules.replaceConfirm": "Replace the current schedule for this zone with the selected preset? You can edit every generated entry afterwards.",
|
|
"automations.smartHintTitle": "Use thermostat presets for daily comfort",
|
|
"automations.smartHint": "Schedules and zone presets handle normal heating/cooling automatically. Keep automations for special exceptions so they do not fight the thermostat.",
|
|
"history.allZones": "All zones",
|
|
"history.temperatureOverview": "Temperature overview",
|
|
"history.temperatureOverviewHint": "GREE, room sensor, control temperature, targets and outdoor temperature.",
|
|
"history.operationOverview": "Targets and operation",
|
|
"history.operationOverviewHint": "Zone targets, compressor demand, power and fan activity over the same period.",
|
|
"history.greeSensor": "GREE sensor",
|
|
"history.roomSensor": "Room sensor",
|
|
"history.controlTemperature": "Control temperature",
|
|
"history.comfortTarget": "Comfort target",
|
|
"history.deviceSetpoint": "Device setpoint",
|
|
"history.outdoorTemperature": "Outdoor temperature",
|
|
"history.fanSpeed": "Fan speed",
|
|
"history.demand": "Demand",
|
|
"history.power": "Power",
|
|
"history.targetShort": "Target",
|
|
"history.sensor": "Indoor unit",
|
|
"history.homeAssistant": "Home Assistant",
|
|
"history.assist": "Outdoor assist",
|
|
"history.tabOverview": "Overview",
|
|
"history.tabZones": "Zones",
|
|
"history.tabDevices": "GREE devices",
|
|
"history.tabSensors": "HA sensors",
|
|
"history.tabCustom": "Custom chart",
|
|
"history.overviewHint": "All rooms, units and available outdoor measurements in one place.",
|
|
"history.customHint": "Compose your own chart from GREE, zone and Home Assistant data.",
|
|
"history.allDevices": "All GREE devices",
|
|
"history.allSensors": "All HA sensors",
|
|
"history.haSensor": "HA sensor",
|
|
"history.deviceSamples": "GREE samples",
|
|
"history.zoneSamples": "Zone samples",
|
|
"history.haSamples": "HA samples",
|
|
"history.greeHistory": "Device polling history",
|
|
"history.zoneHistory": "Thermostat history",
|
|
"history.haHistory": "External sensor history",
|
|
"history.allGreeIndoor": "All GREE indoor temperatures",
|
|
"history.allGreeIndoorHint": "Indoor temperature reported by every GREE unit, independent of zones.",
|
|
"history.allOutdoor": "Outdoor temperatures",
|
|
"history.allOutdoorHint": "Outdoor values reported by GREE units plus the optional Home Assistant outdoor sensor.",
|
|
"history.allZoneControl": "All zone control temperatures",
|
|
"history.allZoneControlHint": "The temperature actually used by the thermostat in every zone.",
|
|
"history.greeOutdoor": "GREE outdoor",
|
|
"history.deviceIndoor": "GREE indoor temperature",
|
|
"history.deviceIndoorHint": "Indoor sensor history for the selected unit or all units.",
|
|
"history.deviceOutdoor": "GREE outdoor temperature",
|
|
"history.deviceOutdoorHint": "Outdoor temperature reported by compatible GREE units. Units without this sensor are omitted.",
|
|
"history.deviceTargets": "GREE target temperatures",
|
|
"history.deviceTargetsHint": "Setpoints sent to each GREE unit over time.",
|
|
"history.deviceTarget": "Device target",
|
|
"history.indoorTemperature": "Indoor temperature",
|
|
"history.haSensors": "Home Assistant temperatures",
|
|
"history.haSensorsHint": "Room and outdoor temperature entities read from Home Assistant.",
|
|
"history.customTitle": "Chart composer",
|
|
"history.customDescription": "Mix any GREE, zone or Home Assistant temperature series. Save it locally or copy a shareable URL.",
|
|
"history.addSeries": "Add series",
|
|
"history.noCustomSeries": "Add at least one series to the chart.",
|
|
"history.chartName": "Chart name",
|
|
"history.copyLink": "Copy link",
|
|
"history.series": "series",
|
|
"history.noSavedCharts": "No saved custom charts yet.",
|
|
"history.customChart": "Custom climate chart",
|
|
"history.customChartHint": "Your selected data sources on one timeline.",
|
|
"history.chartSaved": "Custom chart saved",
|
|
"history.linkCopied": "Chart link copied",
|
|
"toast.successTitle": "Done",
|
|
"toast.errorTitle": "Something went wrong",
|
|
"plan.eyebrow": "Control plan",
|
|
"plan.title": "What happens next",
|
|
"plan.house": "Whole house",
|
|
"plan.houseSummary": "{zones} enabled zones · {demand} requesting action",
|
|
"plan.noEvents": "No scheduled changes in the next days",
|
|
"plan.loading": "Loading current automation plan…",
|
|
"plan.rules": "Extra automations",
|
|
"plan.ruleCount": "{count} active rules",
|
|
"plan.event": "Change",
|
|
"zones.enable": "Enable zone",
|
|
"zones.disable": "Disable zone",
|
|
"history.90d": "90 days",
|
|
"history.1y": "1 year",
|
|
"settings.metrics": "Metrics storage",
|
|
"settings.retentionDays": "Local retention (days)",
|
|
"settings.compaction": "Compact old metrics",
|
|
"settings.compactionHint": "SQLite keeps recent data locally and compacts older samples to the resolution used by charts.",
|
|
"settings.greeCommands": "GREE commands",
|
|
"settings.suppressBeep": "Try to suppress command beeps",
|
|
"settings.suppressBeepHint": "Only changed properties are sent. Buzzer suppression is also requested when supported by the unit firmware.",
|
|
"settings.influx": "Long-term InfluxDB history",
|
|
"settings.influxHint": "Optional archive for older history. InfluxDB 1.x and 2.x are supported. Samples older than the handoff age are removed from SQLite only after a successful archive write.",
|
|
"settings.influxEnabled": "Enable InfluxDB archive",
|
|
"settings.influxVersion": "InfluxDB version",
|
|
"settings.influxThreshold": "Use archive for history older than (days)",
|
|
"settings.influxDatabase": "Database",
|
|
"settings.influxUsername": "Username",
|
|
"settings.influxPassword": "Password",
|
|
"settings.influxOrg": "Organization",
|
|
"settings.influxBucket": "Bucket",
|
|
"settings.influxToken": "Token",
|
|
"settings.secretKeep": "Leave empty to keep saved secret",
|
|
"settings.secretSaved": "Secret already saved — leave empty to keep it",
|
|
"settings.debug": "On-screen debug",
|
|
"settings.debugOverlay": "Show debug window on every page",
|
|
"settings.debugGreeFrames": "Include GREE protocol frames",
|
|
"settings.backup": "Configuration backup",
|
|
"settings.backupHint": "Export/import application configuration. Exported files can contain GREE device keys plus Home Assistant, InfluxDB and notification secrets; metrics and API access tokens are not included.",
|
|
"settings.export": "Export settings",
|
|
"settings.import": "Import settings",
|
|
"settings.importConfirm": "Replace the current application configuration with this file? Existing metrics and API access tokens will be kept.",
|
|
"debug.title": "Live debug",
|
|
"debug.clear": "Clear",
|
|
"debug.apiAndGree": "API logs + GREE frames",
|
|
"debug.apiOnly": "API logs",
|
|
"debug.empty": "No debug events yet.",
|
|
"toast.exported": "Configuration exported",
|
|
"toast.imported": "Configuration imported",
|
|
"nav.simulation": "Simulator",
|
|
"simulation.eyebrow": "Simulator",
|
|
"simulation.title": "Automation simulator",
|
|
"simulation.description": "Live preview of the thermostat and automation logic. The flow board shows how sensor readings, schedules, night mode and thermostat decisions become commands sent to each GREE unit.",
|
|
"simulation.timelineEyebrow": "Timeline",
|
|
"simulation.timelineTitle": "What will happen next",
|
|
"simulation.zoneEyebrow": "Zones",
|
|
"simulation.zoneTitle": "Thermostat decision flow",
|
|
"simulation.rulesEyebrow": "Rules",
|
|
"simulation.rulesTitle": "Automation rules",
|
|
"simulation.houseMode": "House mode",
|
|
"simulation.strategy": "Strategy: {strategy}",
|
|
"simulation.outdoor": "Outdoor",
|
|
"simulation.generatedAt": "Generated: {time}",
|
|
"simulation.activeZones": "Active zones",
|
|
"simulation.requestingZones": "Requesting comfort: {count}",
|
|
"simulation.rulesLabel": "Active rules",
|
|
"simulation.eventsQueued": "Queued events: {count}",
|
|
"simulation.house": "House",
|
|
"simulation.stepRoom": "Room reading",
|
|
"simulation.stepTarget": "Target",
|
|
"simulation.stepDecision": "Decision",
|
|
"simulation.stepCommand": "Unit command",
|
|
"simulation.hysteresis": "Hysteresis {value}°C",
|
|
"simulation.deviceSetpoint": "Device setpoint",
|
|
"simulation.quietIfSupported": "If supported",
|
|
"simulation.manual": "Manual",
|
|
"simulation.noCommand": "No command preview",
|
|
"simulation.noActionPreview": "No direct action payload",
|
|
"simulation.ruleOnDevice": "Action on device: {device}",
|
|
"simulation.nextReady": "Ready again",
|
|
"simulation.noRules": "No active automation rules.",
|
|
"simulation.waitingForData": "Waiting for data",
|
|
"simulation.stateDemand": "Demand",
|
|
"simulation.stateSatisfied": "Satisfied",
|
|
"simulation.reasonDisabled": "Zone is disabled, so the thermostat does not send control commands.",
|
|
"simulation.reasonHouseOff": "House “Do not control” leaves this zone under manual control and sends no commands to the air conditioner.",
|
|
"simulation.reasonWaiting": "The simulator is waiting for a valid room temperature and target.",
|
|
"simulation.reasonDemand": "Room needs {mode}. Thermostat compares the reading with the target {target}°C using hysteresis {hysteresis}°C.",
|
|
"simulation.reasonSatisfied": "Target is reached. The thermostat moves the unit into standby around {standby}°C to keep the room quiet and stable.",
|
|
"simulation.activeTargetLabel": "Active target before device rounding: {value}°C",
|
|
"simulation.standbyTargetLabel": "Standby target before device rounding: {value}°C",
|
|
"common.fan": "Fan",
|
|
"devices.nameProtocol": "Name / protocol",
|
|
"history.range": "Range",
|
|
"settings.controllerHint": "Runtime and LAN discovery settings.",
|
|
"settings.nightMode": "Night mode",
|
|
"settings.nightModeHint": "During selected hours the thermostat limits fan speed and can request Quiet plus native Sleep on compatible units.",
|
|
"settings.nightModeEnabled": "Enable night mode",
|
|
"settings.nightStart": "Start",
|
|
"settings.nightEnd": "End",
|
|
"settings.nightMaxFan": "Maximum fan speed",
|
|
"settings.nightForceQuiet": "Use Quiet when supported",
|
|
"settings.metricsAndLogs": "Metrics and logs",
|
|
"settings.eventRetentionDays": "Event/log retention (days)",
|
|
"settings.debugHint": "Live diagnostics displayed on every application page.",
|
|
"settings.sensorAliases": "Sensor aliases",
|
|
"settings.sensorAliasesHint": "Friendly names are used only in charts and selectors. Home Assistant requests always use the original entity_id.",
|
|
"settings.aliasPlaceholder": "Friendly name",
|
|
"settings.noSensorAliases": "No Home Assistant sensors are known yet. Add an entity_id below.",
|
|
"settings.aliasRequired": "Enter both entity_id and alias.",
|
|
"settings.saveHint": "Save changes made in the blocks above.",
|
|
"logs.retention": "Log retention",
|
|
"logs.retentionHint": "Old event rows are removed automatically during maintenance.",
|
|
"logs.keepFor": "Keep for",
|
|
"logs.retentionSaved": "Log retention set to {days} days.",
|
|
"simulation.flowEyebrow": "Live flow",
|
|
"simulation.flowTitle": "Automation flow board",
|
|
"simulation.legendInput": "Input",
|
|
"simulation.legendLogic": "Logic",
|
|
"simulation.legendAction": "Action",
|
|
"simulation.fanMax": "fan max",
|
|
"simulation.globalInput": "Global input",
|
|
"simulation.thermostat": "Thermostat",
|
|
"simulation.callForComfort": "Comfort demand",
|
|
"simulation.standby": "Quiet standby",
|
|
"simulation.nextEvent": "Next event",
|
|
"simulation.noEventShort": "No event",
|
|
"simulation.schedule": "Schedule",
|
|
"common.days": "days",
|
|
"actions.clear": "Clear",
|
|
"simulation.scheduled": "Scheduled",
|
|
"settings.nightNativeSleep": "Use native Sleep when supported",
|
|
"devices.features": "Unit features",
|
|
"devices.noExtraFeatures": "No additional features detected yet.",
|
|
"devices.light": "Panel light",
|
|
"devices.xfan": "X-FAN",
|
|
"devices.health": "Health",
|
|
"devices.air": "Air",
|
|
"devices.sleep": "Sleep",
|
|
"nav.nightMode": "Night mode",
|
|
"nav.homeAssistant": "Home Assistant / Sensors",
|
|
"night.eyebrow": "Comfort",
|
|
"night.description": "Configure quieter thermostat behavior for sleeping hours without mixing it with application settings.",
|
|
"night.saveHint": "Save night-mode changes.",
|
|
"homeAssistant.eyebrow": "Integration",
|
|
"homeAssistant.description": "Connection, temperature sensors, friendly aliases and access tokens for the Home Assistant integration.",
|
|
"homeAssistant.saveHint": "Save Home Assistant and sensor changes.",
|
|
"notifications.title": "Notifications",
|
|
"notifications.hint": "Send important events or only problems/anomalies.",
|
|
"notifications.enable": "Enable notifications",
|
|
"notifications.mode": "Mode",
|
|
"notifications.problems": "Errors and anomalies only",
|
|
"notifications.important": "Important events + problems",
|
|
"notifications.provider": "Provider",
|
|
"notifications.pushoverToken": "Pushover application token",
|
|
"notifications.pushoverUser": "Pushover user/group key",
|
|
"notifications.slackWebhook": "Slack incoming webhook",
|
|
"notifications.discordWebhook": "Discord webhook",
|
|
"notifications.cooldown": "Cooldown (s)",
|
|
"notifications.failureThreshold": "Communication failures before alert",
|
|
"notifications.targetTimeout": "Target not reached timeout (min)",
|
|
"notifications.test": "Send test notification",
|
|
"zones.copyFrom": "Copy thermostat settings from…",
|
|
"zones.copySettings": "Copy settings",
|
|
"automations.preset": "Preset…",
|
|
"automations.presetHot": "High temperature cooling",
|
|
"automations.presetCold": "Low temperature heating",
|
|
"automations.presetMorning": "Morning comfort",
|
|
"automations.presetNightOff": "Night power off",
|
|
"actions.apply": "Apply",
|
|
"logs.level": "Level",
|
|
"logs.category": "Category",
|
|
"logs.all": "All",
|
|
"logs.errors": "Errors",
|
|
"logs.warnings": "Warnings",
|
|
"logs.integrations": "Integrations",
|
|
"logs.systemOther": "System/other",
|
|
"zones.copyDifferent": "Choose a different thermostat profile",
|
|
"zones.copiedFrom": "Thermostat settings copied from {name}",
|
|
"house.noControl": "Do not control",
|
|
"house.powerAllEyebrow": "Global power",
|
|
"house.powerAllTitle": "All air conditioners",
|
|
"house.powerAllHint": "Master power for all enabled units. “Turn all off” prevents them from restarting. Choosing whole-house Cooling/Heating or an Auto/Comfort/Sleep/Away profile automatically switches master power back on.",
|
|
"house.powerOnAll": "Turn all on",
|
|
"house.powerOffAll": "Turn all off",
|
|
"house.powerOnDone": "All air conditioners turned on",
|
|
"house.powerOffDone": "All air conditioners turned off",
|
|
"house.powerPartial": "Could not change power on {count} devices",
|
|
"preset.manual": "Manual"
|
|
}
|
|
}
|