androidtv.androidtv.androidtv_async module
Communicate with an Android TV device via ADB over a network.
ADB Debugging must be enabled.
- class androidtv.androidtv.androidtv_async.AndroidTVAsync(host, port=5555, adbkey='', adb_server_ip='', adb_server_port=5037, state_detection_rules=None, signer=None)[source]
Bases:
BaseTVAsync,BaseAndroidTVRepresentation of an Android TV device.
- Parameters:
host (str) – The address of the device; may be an IP address or a host name
port (int) – The device port to which we are connecting (default is 5555)
adbkey (str) – The path to the
adbkeyfile for ADB authenticationadb_server_ip (str) – The IP address of the ADB server
adb_server_port (int) – The port for the ADB server
state_detection_rules (dict, None) – A dictionary of rules for determining the state (see
BaseTV)signer (PythonRSASigner, None) – The signer for the ADB keys, as loaded by
androidtv.adb_manager.adb_manager_async.ADBPythonAsync.load_adbkey()
- classmethod from_base(base_tv)[source]
Construct an AndroidTVAsync object from a BaseTVAsync object.
- Parameters:
base_tv (BaseTVAsync) – The object that will be converted to an AndroidTVAsync object
- Returns:
atv – The constructed AndroidTVAsync object
- Return type:
- async get_properties(get_running_apps=True, lazy=False)[source]
Get the properties needed for Home Assistant updates.
- Parameters:
get_running_apps (bool) – Whether or not to get the
running_apps()propertylazy (bool) – Whether or not to continue retrieving properties if the device is off or the screensaver is running
- Returns:
screen_on (bool, None) – Whether or not the device is on, or
Noneif it was not determinedawake (bool, None) – Whether or not the device is awake (screensaver is not running), or
Noneif it was not determinedaudio_state (str, None) – The audio state, as determined from “dumpsys audio”, or
Noneif it was not determinedwake_lock_size (int, None) – The size of the current wake lock, or
Noneif it was not determinedcurrent_app (str, None) – The current app property, or
Noneif it was not determinedmedia_session_state (int, None) – The state from the output of
dumpsys media_session, orNoneif it was not determinedaudio_output_device (str, None) – The current audio playback device, or
Noneif it was not determinedis_volume_muted (bool, None) – Whether or not the volume is muted, or
Noneif it was not determinedvolume (int, None) – The absolute volume level, or
Noneif it was not determinedrunning_apps (list, None) – A list of the running apps, or
Noneif it was not determinedhdmi_input (str, None) – The HDMI input, or
Noneif it could not be determined
- async get_properties_dict(get_running_apps=True, lazy=True)[source]
Get the properties needed for Home Assistant updates and return them as a dictionary.
- Parameters:
get_running_apps (bool) – Whether or not to get the
running_apps()propertylazy (bool) – Whether or not to continue retrieving properties if the device is off or the screensaver is running
- Returns:
A dictionary with keys
'screen_on','awake','wake_lock_size','current_app','media_session_state','audio_state','audio_output_device','is_volume_muted','volume','running_apps', and'hdmi_input'- Return type:
dict
- async update(get_running_apps=True, lazy=True)[source]
Get the info needed for a Home Assistant update.
- Parameters:
get_running_apps (bool) – Whether or not to get the
running_apps()propertylazy (bool) – Whether or not to continue retrieving properties if the device is off or the screensaver is running
- Returns:
state (str) – The state of the device
current_app (str) – The current running app
running_apps (list) – A list of the running apps if
get_running_appsis True, otherwise the list[current_app]audio_output_device (str) – The current audio playback device
is_volume_muted (bool) – Whether or not the volume is muted
volume_level (float) – The volume level (between 0 and 1)