Files
2026-07-17 10:12:15 -04:00

449 lines
15 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"config": {
"step": {
"user": {
"title": "WashData Setup",
"description": "Konfigurera din tvättmaskin eller annan apparat.\n\nEffektsensor krävs.\n\n**Närnäst kommer du att bli tillfrågad om du vill skapa din första profil.**",
"data": {
"name": "Enhetens namn",
"device_type": "Enhetstyp",
"power_sensor": "Effektsensor",
"min_power": "Minsta effekttröskel (W)"
},
"data_description": {
"name": "Ett vänligt namn för den här enheten (t.ex. \"Tvättmaskin\", \"Diskmaskin\").",
"device_type": "Vilken typ av apparat är detta? Hjälper till att skräddarsy detektering och märkning.",
"power_sensor": "Sensorenheten som rapporterar strömförbrukning i realtid (i watt) från din smarta kontakt.",
"min_power": "Effektavläsningar över detta tröskelvärde (i watt) indikerar att apparaten är igång. Börja med 2W för de flesta enheter."
}
},
"first_profile": {
"title": "Skapa första profil",
"description": "En **Cykel** är en komplett körning av din apparat (t.ex. en massa tvätt). En **Profil** grupperar dessa cykler efter typ (t.ex. \"Bomull\", \"Snabbtvätt\"). Att skapa en profil hjälper nu integrationen att uppskatta varaktigheten omedelbart.\n\nDu kan välja den här profilen manuellt i enhetens kontroller om den inte upptäcks automatiskt.\n\n**Lämna \"Profilnamn\" tomt för att hoppa över det här steget.**",
"data": {
"profile_name": "Profilnamn (valfritt)",
"manual_duration": "Beräknad varaktighet (minuter)"
}
},
"reconfigure": {
"title": "Konfigurera om WashData",
"description": "Uppdatera enhetens namn, apparattyp eller effektsensor.",
"data": {
"name": "Enhetens namn",
"device_type": "Enhetstyp",
"power_sensor": "Effektsensor",
"min_power": "Minsta effekttröskel (W)"
}
}
},
"error": {
"cannot_connect": "Det gick inte att ansluta",
"invalid_auth": "Ogiltig autentisering",
"unknown": "Oväntat fel",
"invalid_power": "Effekttröskeln måste vara större än 0"
},
"abort": {
"already_configured": "Enheten är redan konfigurerad",
"reconfigure_successful": "Omkonfigurationen lyckades"
}
},
"options": {
"step": {
"init": {
"data": {
"name": "Enhetsnamn",
"device_type": "Enhetstyp",
"power_sensor": "Effektsensor",
"min_power": "Minsta effekttröskel (W)"
},
"title": "WashData-inställningar",
"description": "Byt namn på enheten eller ändra dess kärninställningar för hårdvara. Alla detekterings-, matchnings- och meddelandeinställningar finns i WashData-panelen."
}
},
"error": {
"timer_default_message": "{device}: timer {minutes} min",
"timer_pause_action_title": "Återuppta cykeln",
"timer_pause_body_suffix": "Cykeln är pausad. Öppna WashData-panelen för att fortsätta.",
"notify_live_waiting_message": "{device}: Ingen profil matchad ännu.",
"vs_typical_longer": "{pct}% längre än vanligt",
"vs_typical_shorter": "{pct}% kortare än vanligt",
"invalid_power": "Effekttröskeln måste vara större än 0"
}
},
"selector": {
"device_type": {
"options": {
"washing_machine": "Tvättmaskin",
"dryer": "Torktumlare",
"washer_dryer": "Kombination av tvättmaskin och torktumlare",
"dishwasher": "Diskmaskin",
"air_fryer": "Air Fryer",
"bread_maker": "Brödmaskin",
"pump": "Pump / Sump Pump",
"generic": "Annat (avancerat)",
"other": "Tröskelenhet"
}
}
},
"services": {
"label_cycle": {
"name": "Märk cykel",
"description": "Tilldela en befintlig profil till en tidigare cykel eller ta bort etiketten.",
"fields": {
"device_id": {
"name": "Enhet",
"description": "WashData-enheten att märka."
},
"cycle_id": {
"name": "Cykel-ID",
"description": "ID för cykeln som ska märkas."
},
"profile_name": {
"name": "Profilnamn",
"description": "Namnet på en befintlig profil (skapa profiler i menyn Hantera profiler). Lämna tomt för att ta bort etiketten."
}
}
},
"create_profile": {
"name": "Skapa profil",
"description": "Skapa en ny profil (fristående eller baserad på en referenscykel).",
"fields": {
"device_id": {
"name": "Enhet",
"description": "WashData-enheten."
},
"profile_name": {
"name": "Profilnamn",
"description": "Namn på den nya profilen (t.ex. \"Kraftfull\", \"Delikat\")."
},
"reference_cycle_id": {
"name": "Referenscykel-ID",
"description": "Valfritt cykel-ID att basera denna profil på."
}
}
},
"delete_profile": {
"name": "Ta bort profil",
"description": "Ta bort en profil och eventuellt avmarkera cykler som använder den.",
"fields": {
"device_id": {
"name": "Enhet",
"description": "WashData-enheten."
},
"profile_name": {
"name": "Profilnamn",
"description": "Profilen som ska tas bort."
},
"unlabel_cycles": {
"name": "Avmarkera cykler",
"description": "Ta bort profiletikett från cykler som använder denna profil."
}
}
},
"auto_label_cycles": {
"name": "Automatisk märkning av gamla cykler",
"description": "Märk omärkta cykler retroaktivt med hjälp av profilmatchning.",
"fields": {
"device_id": {
"name": "Enhet",
"description": "WashData-enheten."
},
"confidence_threshold": {
"name": "Konfidenströskel",
"description": "Minsta matchningskonfidens (0,500,95) för att applicera etiketter."
}
}
},
"export_config": {
"name": "Exportera konfiguration",
"description": "Exportera enhetens profiler, cykler och inställningar till en JSON-fil (per enhet).",
"fields": {
"device_id": {
"name": "Enhet",
"description": "WashData-enheten att exportera."
},
"path": {
"name": "Sökväg",
"description": "Valfri absolut filsökväg att skriva till (standard: /config/ha_washdata_export_{entry}.json)."
}
}
},
"import_config": {
"name": "Importera konfiguration",
"description": "Importera profiler, cykler och inställningar för den här enheten från en JSON-exportfil (inställningarna kan skrivas över).",
"fields": {
"device_id": {
"name": "Enhet",
"description": "WashData-enheten att importera till."
},
"path": {
"name": "Sökväg",
"description": "Absolut sökväg till export-JSON-filen som ska importeras."
}
}
},
"submit_cycle_feedback": {
"name": "Skicka cykelfeedback",
"description": "Bekräfta eller korrigera ett automatiskt identifierat program efter en avslutad cykel. Ange antingen `entry_id` (avancerat) eller `device_id` (rekommenderas).",
"fields": {
"device_id": {
"name": "Enhet",
"description": "WashData-enheten (rekommenderas framför entry_id)."
},
"entry_id": {
"name": "Post-ID",
"description": "Konfigurationspost-ID för enheten (alternativ till device_id)."
},
"cycle_id": {
"name": "Cykel-ID",
"description": "Cykel-ID som visas i feedbackmeddelandet/loggarna."
},
"user_confirmed": {
"name": "Bekräfta identifierat program",
"description": "Ange sant om det identifierade programmet är korrekt."
},
"corrected_profile": {
"name": "Korrigerad profil",
"description": "Om det inte bekräftas, ange korrekt profil-/programnamn."
},
"corrected_duration": {
"name": "Korrigerad varaktighet (sekunder)",
"description": "Valfri korrigerad varaktighet i sekunder."
},
"notes": {
"name": "Anteckningar",
"description": "Valfria anteckningar om denna cykel."
}
}
},
"record_start": {
"name": "Starta cykelinspelning",
"description": "Börja manuellt spela in en ren cykel (kringgår all matchningslogik).",
"fields": {
"device_id": {
"name": "Enhet",
"description": "WashData-enheten att spela in."
}
}
},
"record_stop": {
"name": "Stoppa cykelinspelning",
"description": "Stoppa manuell inspelning.",
"fields": {
"device_id": {
"name": "Enhet",
"description": "WashData-enheten att stoppa inspelning på."
}
}
},
"trim_cycle": {
"name": "Trimma cykel",
"description": "Trimma effektdata för en tidigare cykel till ett specifikt tidsfönster.",
"fields": {
"device_id": {
"name": "Enhet",
"description": "WashData-enheten."
},
"cycle_id": {
"name": "Cykel-ID",
"description": "ID för cykeln som ska trimmas."
},
"trim_start_s": {
"name": "Trimstart (sekunder)",
"description": "Behåll data från denna offset i sekunder. Standard: 0."
},
"trim_end_s": {
"name": "Trimslut (sekunder)",
"description": "Behåll data upp till denna offset i sekunder. Standard = full varaktighet."
}
}
},
"pause_cycle": {
"name": "Pauscykel",
"description": "Pausa den aktiva cykeln för en WashData-enhet.",
"fields": {
"device_id": {
"name": "Anordning",
"description": "WashData-enheten att pausa."
}
}
},
"resume_cycle": {
"name": "Återuppta cykeln",
"description": "Återuppta en pausad cykel för en WashData-enhet.",
"fields": {
"device_id": {
"name": "Anordning",
"description": "WashData-enheten ska återupptas."
}
}
},
"trigger_ml_training": {
"name": "Trigger ML Training",
"description": "Träna om ML-modellerna på enheten manuellt från enhetens egna märkta cykler (experimentell).",
"fields": {
"device_id": {
"name": "Anordning",
"description": "WashData-enheten att omskola modeller till."
}
}
}
},
"entity": {
"binary_sensor": {
"running": {
"name": "Igång"
},
"match_ambiguity": {
"name": "Matchningstvetydighet"
}
},
"sensor": {
"washer_state": {
"name": "Tillstånd",
"state": {
"off": "Av",
"idle": "Inaktiv",
"starting": "Startar",
"running": "Igång",
"paused": "Pausad",
"user_paused": "Pausad av användare",
"ending": "Avslutar",
"finished": "Färdig",
"anti_wrinkle": "Antirynkläge",
"delay_wait": "Väntar på att starta",
"interrupted": "Avbruten",
"force_stopped": "Tvångsstoppad",
"rinse": "Sköljning",
"unknown": "Okänd",
"clean": "Rena"
}
},
"washer_program": {
"name": "Program"
},
"time_remaining": {
"name": "Återstående tid"
},
"total_duration": {
"name": "Total varaktighet"
},
"cycle_progress": {
"name": "Förlopp"
},
"current_power": {
"name": "Aktuell effekt"
},
"elapsed_time": {
"name": "Förfluten tid"
},
"debug_info": {
"name": "Felsökningsinformation"
},
"match_confidence": {
"name": "Matchningskonfidens"
},
"top_candidates": {
"name": "Toppkandidater",
"state": {
"none": "Ingen"
}
},
"current_phase": {
"name": "Aktuell fas"
},
"profile_cycle_count": {
"name": "Antal cykler för profil {profile_name}",
"unit_of_measurement": "cykler"
},
"suggestions": {
"name": "Tillgängliga föreslagna inställningar"
},
"pump_runs_today": {
"name": "Pumpen går (senaste 24 timmarna)"
},
"cycle_count": {
"name": "Cykelräkning"
},
"ambiguity": {
"name": "Tvetydighetspoäng"
},
"energy_total": {
"name": "Total energi"
}
},
"select": {
"program_select": {
"name": "Cykelprogram",
"state": {
"auto_detect": "Automatisk identifiering"
}
}
},
"button": {
"force_end_cycle": {
"name": "Tvinga cykelavslut"
},
"pause_cycle": {
"name": "Pauscykel"
},
"resume_cycle": {
"name": "Återuppta cykeln"
},
"record_start": {
"name": "Starta cykelinspelning"
},
"record_stop": {
"name": "Stoppa cykelinspelning"
}
}
},
"exceptions": {
"device_id_required": {
"message": "Ett giltigt device_id krävs."
},
"cycle_id_required": {
"message": "Ett giltigt cycle_id krävs."
},
"profile_name_required": {
"message": "Ett giltigt profile_name krävs."
},
"device_not_found": {
"message": "Enheten hittades inte."
},
"no_config_entry": {
"message": "Ingen konfigurationspost hittades för enheten."
},
"integration_not_loaded": {
"message": "Integrationen har inte laddats för den här enheten."
},
"cycle_not_found_or_no_power": {
"message": "Cykeln hittades inte eller har inga effektdata."
},
"trim_failed_empty_window": {
"message": "Trimmningen misslyckades cykeln hittades inte, inga effektdata eller det resulterande fönstret är tomt."
},
"trim_invalid_range": {
"message": "trim_end_s måste vara större än trim_start_s."
},
"no_active_cycle": {
"message": "Ingen aktiv cykel att pausa eller återuppta."
},
"path_not_allowed": {
"message": "Sökvägen är inte tillåten: {path}. Lägg till dess katalog i 'allowlist_external_dirs' i configuration.yaml."
},
"create_profile_failed": {
"message": "Det gick inte att skapa profilen: {error}"
},
"export_path_exists": {
"message": "Exportmålet finns redan: {path}. Välj en annan sökväg eller ta bort den befintliga filen först."
},
"export_write_failed": {
"message": "Det gick inte att skriva exporten till {path}: {error}"
},
"assign_profile_failed": {
"message": "Det gick inte att tilldela profilen: {error}"
}
}
}