* Implement config flow in the Broadlink integration * General improvements to the Broadlink config flow * Remove unnecessary else after return * Fix translations * Rename device to device_entry * Add tests for the config flow * Improve docstrings * Test we do not accept more than one config entry per device * Improve helpers * Allow empty packets * Allow multiple config files for switches related to the same device * Rename mock_device to mock_api * General improvements * Make new attempts before marking the device as unavailable * Let the name be the template for the entity_id * Handle OSError * Test network unavailable in the configuration flow * Rename lock attribute * Update manifest.json * Import devices from platforms * Test import flow * Add deprecation warnings * General improvements * Rename deprecate to discontinue * Test device setup * Add type attribute to mock api * Test we handle an update failure at startup * Remove BroadlinkDevice from tests * Remove device.py from .coveragerc * Add tests for the config flow * Add tests for the device * Test device registry and update listener * Test MAC address validation * Add tests for the device * Extract domains and types to a helper function * Do not patch integration details * Add tests for the device * Set device classes where appropriate * Set an appropriate connection class * Do not set device class for custom switches * Fix tests and improve code readability * Use RM4 to test authentication errors * Handle BroadlinkException in the authentication
47 lines
1.7 KiB
JSON
47 lines
1.7 KiB
JSON
{
|
|
"config": {
|
|
"flow_title": "{name} ({model} at {host})",
|
|
"step": {
|
|
"user": {
|
|
"title": "Connect to the device",
|
|
"data": {
|
|
"host": "[%key:common::config_flow::data::host%]",
|
|
"timeout": "Timeout"
|
|
}
|
|
},
|
|
"auth": {
|
|
"title": "Authenticate to the device"
|
|
},
|
|
"reset": {
|
|
"title": "Unlock the device",
|
|
"description": "Your device is locked for authentication. Follow the instructions to unlock it:\n1. Factory reset the device.\n2. Use the official app to add the device to your local network.\n3. Stop. Do not finish the setup. Close the app.\n4. Click Submit."
|
|
},
|
|
"unlock": {
|
|
"title": "Unlock the device (optional)",
|
|
"description": "Your device is locked. This can lead to authentication problems in Home Assistant. Would you like to unlock it?",
|
|
"data": {
|
|
"unlock": "Yes, do it."
|
|
}
|
|
},
|
|
"finish": {
|
|
"title": "Choose a name for the device",
|
|
"data": {
|
|
"name": "Name"
|
|
}
|
|
}
|
|
},
|
|
"abort": {
|
|
"already_configured": "[%key:common::config_flow::abort::already_configured_device%]",
|
|
"already_in_progress": "There is already a configuration flow in progress for this device",
|
|
"cannot_connect": "[%key:common::config_flow::error::cannot_connect%]",
|
|
"invalid_host": "Invalid hostname or IP address",
|
|
"unknown": "[%key:common::config_flow::error::unknown%]"
|
|
},
|
|
"error": {
|
|
"cannot_connect": "[%key:common::config_flow::error::cannot_connect%]",
|
|
"invalid_host": "Invalid hostname or IP address",
|
|
"unknown": "[%key:common::config_flow::error::unknown%]"
|
|
}
|
|
}
|
|
}
|