* Roomba: add last mission sensor * Set sensor as unavailable if last mission timestamp is 0 Previously, if the `mssnStrtTm` was 0, the function would return a 1970-01-01 (Unix epoch start date). With this change, the function will return None if the timestamp is 0 and the sensor will become unavailable. * Update last_mission property to use dt_util.utc_from_timestamp
96 lines
2.9 KiB
JSON
96 lines
2.9 KiB
JSON
{
|
|
"config": {
|
|
"flow_title": "{name} ({host})",
|
|
"step": {
|
|
"user": {
|
|
"title": "Automatically connect to the device",
|
|
"description": "Select a Roomba or Braava.",
|
|
"data": {
|
|
"host": "[%key:common::config_flow::data::host%]"
|
|
},
|
|
"data_description": {
|
|
"host": "The hostname or IP address of your Roomba or Braava."
|
|
}
|
|
},
|
|
"manual": {
|
|
"title": "Manually connect to the device",
|
|
"description": "No Roomba or Braava have been discovered on your network.",
|
|
"data": {
|
|
"host": "[%key:common::config_flow::data::host%]"
|
|
},
|
|
"data_description": {
|
|
"host": "The hostname or IP address of your Roomba or Braava."
|
|
}
|
|
},
|
|
"link": {
|
|
"title": "Retrieve Password",
|
|
"description": "Make sure that the iRobot app is not running on any device. Press and hold the Home button (or both Home and Spot buttons) on {name} until the device generates a sound (about two seconds), then submit within 30 seconds."
|
|
},
|
|
"link_manual": {
|
|
"title": "Enter Password",
|
|
"description": "The password could not be retrieved from the device automatically. Please make sure that the iRobot app is not open on any device while trying to retrieve the password. Please follow the steps outlined in the documentation at: {auth_help_url}",
|
|
"data": {
|
|
"password": "[%key:common::config_flow::data::password%]"
|
|
}
|
|
}
|
|
},
|
|
"error": {
|
|
"cannot_connect": "[%key:common::config_flow::error::cannot_connect%]"
|
|
},
|
|
"abort": {
|
|
"cannot_connect": "[%key:common::config_flow::error::cannot_connect%]",
|
|
"already_configured": "[%key:common::config_flow::abort::already_configured_device%]",
|
|
"not_irobot_device": "Discovered device is not an iRobot device",
|
|
"short_blid": "The BLID was truncated"
|
|
}
|
|
},
|
|
"options": {
|
|
"step": {
|
|
"init": {
|
|
"data": {
|
|
"continuous": "Continuous",
|
|
"delay": "Delay"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"entity": {
|
|
"binary_sensor": {
|
|
"bin_full": {
|
|
"name": "Bin full"
|
|
}
|
|
},
|
|
"sensor": {
|
|
"battery_cycles": {
|
|
"name": "Battery cycles"
|
|
},
|
|
"total_cleaning_time": {
|
|
"name": "Total cleaning time"
|
|
},
|
|
"average_mission_time": {
|
|
"name": "Average mission time"
|
|
},
|
|
"total_missions": {
|
|
"name": "Total missions"
|
|
},
|
|
"successful_missions": {
|
|
"name": "Successful missions"
|
|
},
|
|
"canceled_missions": {
|
|
"name": "Canceled missions"
|
|
},
|
|
"failed_missions": {
|
|
"name": "Failed missions"
|
|
},
|
|
"scrubs_count": {
|
|
"name": "Scrubs"
|
|
},
|
|
"total_cleaned_area": {
|
|
"name": "Total cleaned area"
|
|
},
|
|
"last_mission": {
|
|
"name": "Last mission start time"
|
|
}
|
|
}
|
|
}
|
|
}
|