이 문서에는 스마트 홈 기기에 대해 공식적으로 지원되는 오류 및 예외가 나열되어 있습니다. Google 어시스턴트가 특정 명령어 또는 기기 상태와 관련된 문제에 대해 최종 사용자에게 알릴 수 있도록 인텐트 응답 또는 구현한 경우 알림에서 이러한 오류 및 예외 코드를 사용하세요. 응답에 잘못된 형식 또는 errorCode
가 포함된 경우 Google 어시스턴트는 사용자에게 '죄송합니다. 기기를 지금 사용할 수 없습니다'와 같은 일반적인 오류 메시지를 표시합니다.
오류
문제로 인해 실행 또는 쿼리 요청이 실패하면 오류 코드를 반환해야 합니다. 예를 들어 도어락이 걸려 잠그거나 열 수 없는 경우 이 상태에 관한 오류가 사용자에게 반환되어야 합니다.
오류 코드는 기기 수준 또는 전역 수준에서 연결할 수 있습니다. 예를 들어 사용자가 한 공급자의 조명이 여러 대 있고 이러한 조명이 허브로 제어되는 경우 사용자가 모든 조명을 끄라고 요청하면 공급자는 조명 하나가 오프라인 상태인 경우 기기 수준 오류를 반환하거나 전체 허브가 오프라인 상태이고 조명을 제어할 수 없는 경우 전역 수준 오류를 반환할 수 있습니다. 모든 기기가 오프라인 상태인 경우 전역 수준 오류와 기기 수준 오류를 사용하는 것에는 차이가 없습니다.
기기가 오프라인 상태인 경우 기기의 동작 후 5분 이내에 Report State에 {"online": false}
를 보고해야 합니다.
요약:
- 전역 수준 오류: 응답의 모든 기기에 동일한 오류가 있음
- 로컬 수준 오류: 오류 및 성공 사례가 혼합된 응답
전역 수준 오류
다음 JSON 스니펫은 QUERY 또는 EXECUTE 응답에서 전역 수준 오류를 반환하는 방법을 보여줍니다.
허브가 오프라인 상태이므로 발생하는 전역 수준 오류 deviceOffline
의 예는 다음과 같습니다.
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "errorCode": "deviceOffline", "status" : "ERROR" } }
허브 업데이트로 인한 전역 수준 오류 inSoftwareUpdate
의 예는 다음과 같습니다.
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "errorCode": "inSoftwareUpdate", "status" : "ERROR" } }
기기 수준 오류
QUERY 응답
다음 JSON 스니펫은 QUERY 응답에서 기기 수준 오류를 반환하는 방법을 보여줍니다.
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "devices": { "device-id-1": { "errorCode": "deviceOffline", "status" : "ERROR" }, "device-id-2": { "errorCode": "deviceOffline", "status" : "ERROR" } } } }
실행 응답
다음 JSON 스니펫은 EXECUTE 응답에서 기기 수준 오류를 반환하는 방법을 보여줍니다.
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [ { "ids": [ "device-id-1" ], "status": "ERROR", "errorCode": "deviceOffline" }, { "ids": [ "device-id-2" ], "status": "SUCCESS", "states": { "on": true, "online": true } } ] } }
오류가 있는 알림
사전 알림
다음 JSON 스니펫은 사전 알림에서 기기 수준 오류를 보고하는 방법을 보여줍니다.
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "agentUserId": "agent-user-id-1", "eventId": "unique-event-id-1", "payload": { "devices": { "notifications": { "device-id-1": { "RunCycle": { "priority": 0, "status": "FAILURE", "errorCode": "deviceDoorOpen" } } } } } }
후속 응답
다음 JSON 스니펫은 후속 응답에서 기기 수준 오류를 보고하는 방법을 보여줍니다.
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "agentUserId": "agent-user-id-1", "eventId": "unique-event-id-1", "payload": { "devices": { "notifications": { "device-id-1": { "LockUnlock": { "priority": 0, "followUpResponse": { "status": "FAILURE", "errorCode": "deviceJammingDetected", "followUpToken": "PLACEHOLDER" } } } } } } }
오류 목록
다음 오류가 발생하면 기기에서 연결된 TTS가 생성됩니다.
- aboveMaximumLightEffectsDuration : 말씀하신 시간이 지원되는 최대 시간인 1시간을 초과합니다. 다시 시도해 주세요.
- aboveMaximumTimerDuration : 최대 <시간> 동안만 <기기>를 설정할 수 있습니다.
- actionNotAvailable : 죄송합니다. 지금은 말씀하신 작업을 할 수 없습니다.
- actionUnavailableWhileRunning : 현재 <기기>가 실행 중이므로 변경할 수 없습니다.
- alreadyArmed : <기기>가 이미 경보 설정되어 있습니다.
- alreadyAtMax : <기기>가 이미 최대 온도로 설정되어 있습니다.
- alreadyAtMin : <기기>가 이미 최저 온도로 설정되어 있습니다.
- alreadyClosed : <기기>가 이미 닫혔습니다.
- alreadyDisarmed : <기기>가 이미 해제되었습니다.
- alreadyDocked : <기기>가 이미 도킹되었습니다.
- alreadyInState : <기기>가 이미 해당 상태에 있습니다.
- alreadyLocked : <기기>가 이미 잠겨 있습니다.
- alreadyOff : <기기>가 이미 꺼져 있습니다.
- alreadyOn : <기기>가 이미 켜져 있습니다.
- alreadyOpen : <기기>가 이미 열려 있습니다.
- alreadyPaused : <기기>가 이미 일시중지되었습니다.
- alreadyStarted : <기기>가 이미 시작되었습니다.
- alreadyStopped : <기기>가 이미 중지되었습니다.
- alreadyUnlocked : <기기>가 이미 잠금 해제되었습니다.
- ambiguousZoneName : 죄송합니다. <기기>에서 어떤 공간을 말씀하신 건지 인식하지 못했습니다. 공간마다 고유한 이름을 지정하신 후 다시 시도해 주세요.
- amountAboveLimit : <기기>에서 지원할 수 있는 양보다 많습니다.
- appLaunchFailed : 죄송합니다. <기기>에서 <앱 이름>을 실행하지 못했습니다.
- armFailure : <기기>를 설정할 수 없습니다.
- armLevelNeeded : <기기>를 어떤 수준으로 설정해야 할지 모르겠습니다. "<기기>를 <보안 수준 낮음>으로 설정" 또는 "<기기>를 <보안 수준 높음>으로 설정"이라고 말해 보세요.
- authFailure : <기기>에 연결할 수 없는 것 같습니다. 앱에서 <기기>가 완전히 설정되었는지 확인하세요.
- bagFull : <기기>에 <가득 찬 먼지 봉투/가득 찬 먼지 봉투가 있음>. 먼지 봉투를 비운 다음 다시 시도해 주세요.
- belowMinimumLightEffectsDuration : 5분 미만의 최소 시간입니다. 다시 시도해 주세요.
- belowMinimumTimerDuration : <기기>를 말씀하신 시간만큼 짧게 설정할 수 없습니다. 다시 시도해 주세요.
- binFull : <기기>에 <가득 찬 휴지통/가득 찬 휴지통이> <있습니다>.
- cancelArmingRestricted : 죄송합니다. <기기>의 경보 설정을 취소할 수 없습니다.
- cancelTooLate : 죄송합니다. 지금은 취소할 수 없습니다. 대신 <기기> 또는 앱을 사용하세요.
- channelSwitchFailed : 죄송합니다. <채널 이름> 채널로 전환하지 못했습니다. 나중에 다시 시도해 주세요.
- chargerIssue : 죄송합니다. <기기>에 <충전기 문제>가 <있는 것> 같습니다.
- commandInsertFailed : <device(s)>의 명령어를 처리할 수 없습니다.
- deadBattery : <기기>에 <배터리가 방전됨/배터리가 방전됨>
- degreesOutOfRange : 요청하신 온도가 <기기>의 범위를 벗어납니다.
- deviceAlertNeedsAssistance : <기기>에 활성 알림이 <있으며> 지원이 <필요합니다>.
- deviceAtExtremeTemperature : <기기>가 <극한 온도>에 <있음/있습니다>.
- deviceBusy : 죄송합니다. <기기>에서 현재 다른 작업을 진행하고 있는 것 같습니다.
- deviceCharging : 죄송합니다. (ha_shared.ItsTheyre size=$item.devices.total_device_count) 충전 중이어서 <기기>에서 이 작업을 할 수 없습니다.
- deviceClogged : 죄송합니다. <기기>가 막힌 것 같습니다.
- deviceCurrentlyDispensing : <기기>에서 현재 이미 무언가를 제공하고 있습니다.
- deviceDoorOpen : <기기>의 문이 열려 있습니다. 문을 닫고 다시 시도해 주세요.
- deviceHandleClosed : <기기>에서 핸들이 닫혔습니다. 핸들을 연 다음 다시 시도하세요.
- deviceJammingDetected : <기기>가 <막힘/막힘>
- deviceLidOpen : <기기>의 뚜껑이 열려 있습니다. 뚜껑을 닫고 다시 시도해 주세요.
- deviceNeedsRepair : <기기>를 수리해야 <필요>합니다. 지역 서비스 대리점에 문의해 주세요.
- deviceNotDocked : 죄송합니다. <기기>가 도킹되어 있지 않은 것 같습니다. <기기/기기들>을 도킹한 후 다시 시도해 주세요.
- deviceNotFound : <기기>를 사용할 수 <없습니다/없습니다>. 다시 설정해 보세요.
- deviceNotMounted : 죄송합니다. <기기>가 장착되어 있지 않아 말씀하신 작업을 할 수 없는 것 같습니다.
- deviceNotReady : <기기>가 준비되지 <않음/않습니다>.
- deviceStuck : <기기>가 중단되어 도움이 필요합니다.
- deviceTampered : <기기>가 <손상됨/손상됨>
- deviceThermalShutdown : 죄송합니다. 온도가 너무 높거나 낮아 <기기>가 꺼진 것 같습니다.
- directResponseOnlyUnreachable : <기기>에서 원격 제어를 <지원하지/지원하지 않음>
- disarmFailure : <기기>를 해제할 수 없습니다.
- discreteOnlyOpenClose : 죄송합니다. <기기>는 끝까지 열거나 닫는 것만 가능합니다.
- dispenseAmountAboveLimit : <기기>에서 너무 많은 양을 배출할 수 없습니다.
- dispenseAmountBelowLimit : <기기>에서 너무 적은 양을 배출할 수 없습니다.
- dispenseAmountRemainingExceeded : <기기>에 이를 수행하기에 충분한 <dispense item>이 없습니다.
- dispenseFractionalAmountNotSupported : <기기>에서 <dispense item>의 일부를 제공할 수 없습니다.
- dispenseFractionalUnitNotSupported : <기기>에서 <dispense item>의 단위의 소수를 지원하지 않습니다.
- dispenseUnitNotSupported : <기기>에서 <dispense item>에 해당 단위를 지원하지 않습니다.
- doorClosedTooLong : <기기> 문을 연 지 오래되었습니다. 문을 열어 안에 아무것도 없는지 확인한 후 다시 시도해 주세요.
- emergencyHeatOn : <기기>가 응급 난방 모드로 설정되어 있으므로 수동으로 조정해야 합니다.
- faultyBattery : <기기>에 <결함이 있는 배터리/결함이 있는 배터리>가 <있습니다/있습니다>.
- floorUnreachable : <기기>가 해당 방에 도달할 수 없습니다. <기기>를 올바른 층으로 옮긴 후 다시 시도해 주세요.
- functionNotSupported : 실제로 <기기>에서 이 기능을 지원하지 <않습니다/않습니다>.
- genericDispenseNotSupported : 배식하시려는 항목을 말씀해 주세요. 상품 이름을 다시 말씀해 주세요.
- hardError : 죄송합니다. 문제가 발생하여 홈 기기를 제어할 수 없습니다.
- hardError : 죄송합니다. 문제가 발생하여 홈 기기를 제어할 수 없습니다.
- inAutoMode : 현재 <기기>가 자동 모드로 설정되어 있습니다. 온도를 변경하려면 <기기>를 다른 모드로 전환하셔야 합니다.
- inAwayMode : 현재 <기기>가 부재중 모드로 설정되어 있습니다. 온도 조절기를 제어하려면 스마트폰, 태블릿 또는 컴퓨터에서 Nest 앱을 사용하여 재택 모드로 직접 전환해야 합니다.
- inDryMode : 현재 <기기>가 건조 모드로 설정되어 있습니다. 온도를 변경하려면 <기기>를 다른 모드로 전환하셔야 합니다.
- inEcoMode : 현재 <기기>가 에코 모드로 설정되어 있습니다. 온도를 변경하려면 <기기>를 다른 모드로 전환하셔야 합니다.
- inFanOnlyMode : 현재 <기기>가 팬 전용 모드로 설정되어 있습니다. 온도를 변경하려면 <기기>를 다른 모드로 전환하셔야 합니다.
- inHeatOrCool : <기기>가 난방/냉방 모드가 <아닙니다/아닙니다>.
- inHumidifierMode : 현재 <기기>가 가습기 모드로 설정되어 있습니다. 온도를 변경하려면 <기기>를 다른 모드로 전환하셔야 합니다.
- inOffMode : <기기>가 현재 꺼져 있습니다. 온도를 변경하려면 <기기>를 다른 모드로 전환해야 합니다.
- inPurifierMode : <기기>가 현재 공기청정기 모드로 설정되어 있습니다. 온도를 변경하려면 <기기>를 다른 모드로 전환하셔야 합니다.
- inSleepMode : <기기>가 절전 모드입니다. 나중에 다시 시도해 주세요.
- inSoftwareUpdate : <기기>가 현재 소프트웨어 업데이트 중입니다.
- lockFailure : <기기>를 잠글 수 없습니다.
- lockedState : <기기>가 현재 잠겨 있습니다.
- lockedToRange : 온도가 <기기>의 잠겨 있는 설정 범위를 벗어납니다.
- lowBattery : <기기>의 배터리가 <없음/없음>
- maxSettingReached : <기기>가 이미 가장 높은 설정으로 설정되어 있습니다.
- maxSpeedReached : <기기>가 이미 최대 속도로 설정되어 있습니다.
- minSettingReached : <기기>가 이미 최저 설정으로 설정되어 있습니다.
- minSpeedReached : <기기>가 이미 최소 속도로 설정되어 있습니다.
- monitoringServiceConnectionLost : <기기>의 모니터링 서비스 연결이 <끊어졌습니다>.
- needsAttachment : 죄송합니다. <기기>에 필수 첨부파일이 누락된 것 같습니다. 부착 후 다시 시도해 주세요.
- needsBin : 죄송합니다. <기기>에 먼지통이 없는 것 같습니다. 부착 후 다시 시도해 주세요.
- needsPads : <기기> <필요> 새 패드
- needsSoftwareUpdate : <기기>에 <소프트웨어 업데이트 필요>
- needsWater : <기기> <필요> 물.
- networkProfileNotRecognized : 죄송합니다. <기기>에서 '<네트워크 프로필>"을 인식할 수 없습니다.
- networkSpeedTestInProgress : 이미 <네트워크> <속도/속도>>를 테스트하고 있습니다.
- noAvailableApp : 죄송합니다. <앱 이름>을 사용할 수 없는 것 같습니다.
- noAvailableChannel : 죄송합니다. <채널 이름> 채널을 이용하실 수 없는 것 같습니다.
- noChannelSubscription : 죄송합니다. 현재 <채널 이름> 채널을 구독하고 계시지 않습니다.
- noTimerExists : 죄송합니다. <기기>에 설정된 타이머가 없는 것 같습니다.
- notSupported : 죄송합니다. <기기>에서는 이 모드를 사용할 수 없습니다.
- obstructionDetected : <기기>에서 장애물을 감지했습니다.
- offline , deviceOffline : 죄송합니다. 지금은 <기기>를 사용할 수 없는 것 같습니다.
- onRequiresMode : 사용 설정할 모드를 지정하세요.
- passphraseIncorrect : 죄송합니다. PIN이 잘못된 것 같습니다.
- percentOutOfRange : 죄송합니다. <기기>를 <percent>로 설정할 수 없습니다.
- pinIncorrect : (passphraseIncorrect)
- rainDetected : 비가 감지되어 <기기>를 열지 않았습니다.
- rangeTooClose : <기기>의 난방-냉방 범위로 사용할 수 없을 만큼 온도가 서로 너무 가깝습니다. 차이가 더 나는 온도 범위를 선택해 주세요.
- relinkRequired : 죄송합니다. 계정에 문제가 생긴 것 같습니다. Google Home이나 어시스턴트 앱을 사용하여 <기기>를 다시 연결해 주세요.
-
remoteSetDisabled
:
- 선택적 매개변수
errorCodeReason
currentlyArmed
- 죄송합니다. 보안이 이미 설정되어 있으므로 변경하려면 <기기>나 앱을 사용해야 합니다.remoteUnlockNotAllowed
- 죄송합니다. <기기>를 원격으로 잠금 해제할 수 없습니다.remoteControlOff
- 해당 작업은 현재 사용 중지되어 있습니다. <기기>에서 리모컨을 사용 설정하고 다시 시도해 주세요.childSafetyModeActive
- 어린이 보호 모드가 활성화되어 있을 때는 <기기>에서 이 작업이 사용 중지됩니다.
- 선택적 매개변수
- roomsOnDifferentFloors : <기기>가 다른 층에 있으므로 해당 방으로 이동할 수 없습니다.
- safetyShutOff : <기기>가 안전 중지 모드로 설정되어 있으므로 수동으로 조정해야 합니다.
- sceneCannotBeApplied : 죄송합니다. <기기>를 적용할 수 없습니다.
- securityRestriction : <기기>에 보안 제한이 <있습니다/있음>.
- softwareUpdateNotAvailable : 죄송합니다. <기기>에 사용 가능한 소프트웨어 업데이트가 없습니다.
- startRequiresTime : 실행하려면 <기기>를 얼마나 사용할지 알려주셔야 합니다.
- stillCoolingDown : <기기>가 아직 냉각 중입니다.
- stillWarmingUp : <기기>가 아직 뜨거워지고 있습니다.
- streamUnavailable : 죄송합니다. 현재 <기기>에서 스트림을 사용할 수 없는 것 같습니다.
- streamUnplayable : 죄송합니다. 지금은 <기기>에서 스트림을 재생할 수 없습니다.
- tankEmpty : <기기>에 <빈 탱크/빈 탱크가 있음>. <탱크/탱크를> 채우고 다시 시도해 주세요.
- targetAlreadyReached : 죄송합니다. 요청하신 온도가 현재 온도와 일치합니다.
- timerValueOutOfRange : <기기>를 말씀하신 시간으로 설정할 수 없습니다.
- tooManyFailedAttempts : 죄송합니다. 실패한 시도 횟수가 너무 많습니다. 기기의 앱으로 이동하여 작업을 완료하세요.
- transientError : 죄송합니다. <기기>를 제어하는 중에 문제가 발생했습니다. 다시 시도해 주세요.
- turnedOff , deviceTurnedOff : 지금 <기기>가 꺼져 있습니다.
- unableToLocateDevice : <기기>를 찾을 수 없습니다.
- unknownFoodPreset : <기기>에서 해당 음식 사전 설정을 지원하지 않습니다.
- unlockFailure : <기기>를 잠금 해제할 수 없습니다.
- unpausableState : 현재 <기기>를 일시중지할 수 없습니다.
- userCancelled : ok
- valueOutOfRange : <기기>를 말씀하신 온도로 설정할 수 없습니다.
예외
명령어와 관련된 문제나 알림이 있는 경우 예외를 반환해야 합니다. 명령어는 성공하거나 실패할 수 있습니다.
명령어가 성공한 경우 (상태 = '성공') StatusReport
트레잇을 사용하여 예외를 보고하거나 (타겟이 아닌 기기의 경우) 적절한 exceptionCode
를 반환하여 (타겟 기기의 경우) 보고합니다.
예를 들어 건조기의 먼지 필터가 가득 차면 사용자는 건조기를 계속 시작할 수 있지만 이 상태에 관해 사용자에게 경고하는 것이 좋습니다. 마찬가지로 기기의 배터리가 완전히 소진되지 않은 상태에서 배터리가 부족한 경우에도 명령어를 실행할 수 있지만 기기 배터리가 부족하다고 알려야 합니다.
예외로 인해 명령어가 실패하면 상태는 'EXCEPTIONS'여야 하며 예외는 StatusReport
트레잇을 사용하여 보고해야 합니다.
대상 기기에 관한 비차단 예외 (성공)
다음은 문을 잠그는 예입니다.
현관 도어락의 배터리가 부족합니다. 현관문을 잠급니다.
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["device-id-1"], "status": "SUCCESS", "states": { "on": true, "online": true, "isLocked": true, "isJammed": false, "exceptionCode": "lowBattery" } }] } }
StatusReport를 사용하는 다른 기기에 관한 비차단 예외 (성공)
보안 시스템 설정 예시입니다. 좋습니다. 보안 시스템을 설정합니다. 앞 유리가 열려 있습니다.
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["device-id-1"], "status": "SUCCESS", "states": { "on": true, "online": true, "isArmed": true, "currentArmLevel": "L2", "currentStatusReport": [{ "blocking": false, "deviceTarget": "sensor_id1", "priority": 0, "statusCode": "deviceOpen" }] } }] } }
StatusReport를 사용하여 다른 기기에 관한 차단 예외
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "devices": { "device-id-1": { "on": true, "online": true, "status": "EXCEPTIONS", "currentStatusReport": [{ "blocking": true, "deviceTarget": "device-id-1", "priority": 0, "statusCode": "lowBattery" }, { "blocking": true, "deviceTarget": "front_window_id", "priority": 1, "statusCode": "deviceOpen" }, { "blocking": true, "deviceTarget": "back_window_id", "priority": 1, "statusCode": "deviceOpen" } ] } } } }
예외 목록
다음 예외는 기기에서 연결된 TTS를 생성합니다.
- bagFull : <기기>에 <가득 찬 먼지 봉투/가득 찬 먼지 봉투가 있음>. 먼지 봉투를 비운 다음 다시 시도해 주세요.
- binFull : <기기>에 <가득 찬 휴지통/가득 찬 휴지통이> <있습니다/있습니다>.
- carbonMonoxideDetected : <집 이름>에서 일산화탄소가 감지되었습니다.
- deviceAtExtremeTemperature : <기기>가 <극한 온도>에 <있음/있습니다>.
- deviceJammingDetected : <기기>가 <막힘/막힘>
- deviceMoved : <기기>가 <이동되었습니다>.
- deviceOpen : <기기>가 열려 있습니다.
- deviceTampered : <기기>가 <손상됨/손상됨>
- deviceUnplugged : <기기>가 <연결 해제됨>
- floorUnreachable : <기기>가 해당 방에 도달할 수 없습니다. <기기>를 올바른 층으로 옮긴 후 다시 시도해 주세요.
- hardwareFailure : <기기>에 하드웨어 문제가 <있음/있습니다>.
- inSoftwareUpdate : <기기>가 현재 소프트웨어 업데이트 중입니다.
- isBypassed : 현재 <기기>가 우회되었습니다.
- lowBattery : <기기>의 배터리가 <없음/없음>
- motionDetected : <device(s)> <detect(s)> motion.
- needsPads : <기기> <필요> 새 패드
- needsSoftwareUpdate : <기기>에 <소프트웨어 업데이트 필요>
- needsWater : <기기> <필요> 물.
- networkJammingDetected : <기기>의 홈 네트워크 연결이 제대로 작동하지 않습니다.
- noIssuesReported : <기기>에서 문제가 없다고 보고했습니다.
- roomsOnDifferentFloors : 층이 다르기 때문에 <기기>가 해당 방으로 이동할 수 없습니다.
- runCycleFinished : <기기> 실행이 <완료됨/완료됨>
- securityRestriction : <기기>에 보안 제한이 <있습니다/있음>.
- smokeDetected : <집 이름>에서 연기가 감지되었습니다.
- tankEmpty : <기기>에 <빈 탱크/빈 탱크가 있음>. <탱크/탱크를> 채우고 다시 시도해 주세요.
- usingCellularBackup : <기기>에서 <셀룰러 백업을 사용하고 있습니다.>
- waterLeakDetected : <기기>에서 누수를 <감지>합니다.