|
1 | 1 | from datetime import datetime
|
| 2 | +from dateutil import parser as datetime_parser |
2 | 3 |
|
3 | 4 |
|
4 | 5 | class Device:
|
@@ -42,13 +43,13 @@ def from_dictionary(device_dictionary: dict) -> 'Device':
|
42 | 43 | connection_state = device_dictionary.get("connectionState")
|
43 | 44 | status = device_dictionary.get("status")
|
44 | 45 | status_reason = device_dictionary.get("statusReason")
|
45 |
| - connection_state_updated_time = datetime.fromisoformat( |
| 46 | + connection_state_updated_time = datetime_parser.parse( |
46 | 47 | device_dictionary.get('connectionStateUpdatedTime') or "0001-01-01T00:00:00.000-00:00"
|
47 | 48 | )
|
48 |
| - status_updated_time = datetime.fromisoformat( |
| 49 | + status_updated_time = datetime_parser.parse( |
49 | 50 | device_dictionary.get("statusUpdatedTime") or "0001-01-01T00:00:00.000-00:00"
|
50 | 51 | )
|
51 |
| - last_activity_time = datetime.fromisoformat( |
| 52 | + last_activity_time = datetime_parser.parse( |
52 | 53 | device_dictionary.get('lastActivityTime') or "0001-01-01T00:00:00.000-00:00"
|
53 | 54 | )
|
54 | 55 | cloud_to_device_message_count = device_dictionary.get("cloudToDeviceMessageCount")
|
@@ -164,9 +165,9 @@ def from_dictionary(twin_dictionary: dict) -> 'Twin':
|
164 | 165 | device_etag = twin_dictionary.get("deviceEtag")
|
165 | 166 | status = twin_dictionary.get("status")
|
166 | 167 | status_reason = twin_dictionary.get("statusReason")
|
167 |
| - status_update_time = datetime.fromisoformat(twin_dictionary.get("statusUpdateTime")) |
| 168 | + status_update_time = datetime_parser.parse(twin_dictionary.get("statusUpdateTime")) |
168 | 169 | connection_state = twin_dictionary.get("connectionState")
|
169 |
| - last_activity_time = datetime.fromisoformat(twin_dictionary.get("lastActivityTime")) |
| 170 | + last_activity_time = datetime_parser.parse(twin_dictionary.get("lastActivityTime")) |
170 | 171 | cloud_to_device_message_count = twin_dictionary.get("cloudToDeviceMessageCount")
|
171 | 172 | authentication_type = twin_dictionary.get("authenticationType")
|
172 | 173 | x509_thumbprint = twin_dictionary.get("x509Thumbprint")
|
|
0 commit comments