diff --git a/opensensor/collection_apis.py b/opensensor/collection_apis.py index 66c4d1a..8b919a1 100644 --- a/opensensor/collection_apis.py +++ b/opensensor/collection_apis.py @@ -583,6 +583,10 @@ def sample_and_paginate_collection( relays = [] for relay in item["relays"]: try: + if isinstance(relay, str): + relay = json.loads(relay) + if isinstance(relay, list): + relay = relay[0] relays.append(RelayStatus(**relay)) except Exception as e: logger.error(f"Error creating RelayStatus: {e}")