diff --git a/aioesphomeapi/model.py b/aioesphomeapi/model.py index e21ea80..803b4dc 100644 --- a/aioesphomeapi/model.py +++ b/aioesphomeapi/model.py @@ -485,9 +485,11 @@ class UserServiceArg(APIModelBase): ret = [] for x in value: if isinstance(x, dict): - ret.append(UserServiceArg(x["name"], x["type"])) + if "type_" in x and "type" not in x: + x = {**x, "type": x["type_"]} + ret.append(UserServiceArg.from_dict(x)) else: - ret.append(UserServiceArg(x.name, x.type)) + ret.append(UserServiceArg.from_pb(x)) return ret