| @@ -20,9 +20,7 @@ from warnings import warn | |||||
| from pprint import pprint | from pprint import pprint | ||||
| api_arg_format = { | |||||
| } | |||||
| # api_arg_format = { } | |||||
| __all__ = ['Eagle', 'RainEagleResponseError', 'to_epoch_1970, to_epoch_2000'] | __all__ = ['Eagle', 'RainEagleResponseError', 'to_epoch_1970, to_epoch_2000'] | ||||
| @@ -61,7 +59,7 @@ def _et2d(et) : | |||||
| converts an ETree to a Dict Tree | converts an ETree to a Dict Tree | ||||
| lists are created for duplicate tag | lists are created for duplicate tag | ||||
| if there are multiple XML of the name name | |||||
| if there are multiple XML of the same name | |||||
| an list array is used | an list array is used | ||||
| attrib tags are converted to "tag_name" + "attrib_name" | attrib tags are converted to "tag_name" + "attrib_name" | ||||
| @@ -98,7 +96,7 @@ def _et2d(et) : | |||||
| return d | return d | ||||
| def twos_comp(val, bits=32): | |||||
| def _twos_comp(val, bits=32): | |||||
| """compute the 2's compliment of int value val""" | """compute the 2's compliment of int value val""" | ||||
| if( (val&(1<<(bits-1))) != 0 ): | if( (val&(1<<(bits-1))) != 0 ): | ||||
| val = val - (1<<bits) | val = val - (1<<bits) | ||||
| @@ -140,6 +138,7 @@ class Eagle(object) : | |||||
| addr address of device | addr address of device | ||||
| port port on device (default 5002) | port port on device (default 5002) | ||||
| getmac connect to device at start up and get macid (default true) | getmac connect to device at start up and get macid (default true) | ||||
| timeout TCP socket timeout | |||||
| Currently there is very little error handling ( if any at all ) | Currently there is very little error handling ( if any at all ) | ||||
| """ | """ | ||||
| @@ -408,25 +407,25 @@ class Eagle(object) : | |||||
| Get current demand usage summation | Get current demand usage summation | ||||
| On Success returns dict with the values (example): | On Success returns dict with the values (example): | ||||
| 'demand' : '0.4980', | |||||
| 'demand_timestamp' : '1394505386', | |||||
| 'demand_units' : 'kW', | |||||
| 'message_confirm_required' : 'N', | |||||
| 'message_confirmed' : 'N', | |||||
| 'message_id' : '0', | |||||
| 'message_priority' : '', | |||||
| 'message_queue' : active', | |||||
| 'message_read' : 'Y', | |||||
| 'message_text' : '', | |||||
| 'message_timestamp' : '946684800', | |||||
| 'meter_status' : 'Connected', | |||||
| 'price' : '0.1400', | |||||
| 'price_label' : 'Set by User', | |||||
| 'price_units' : '$', | |||||
| 'summation_delivered' : '2667.867', | |||||
| 'summation_received' : '37.283', | |||||
| 'summation_units' : 'kWh', | |||||
| 'usage_timestamp' : '1394505386'} | |||||
| 'demand' : '0.4980' | |||||
| 'demand_timestamp' : '1394505386' | |||||
| 'demand_units' : 'kW' | |||||
| 'message_confirm_required' : 'N' | |||||
| 'message_confirmed' : 'N' | |||||
| 'message_id' : '0' | |||||
| 'message_priority' : '' | |||||
| 'message_queue' : active' | |||||
| 'message_read' : 'Y' | |||||
| 'message_text' : '' | |||||
| 'message_timestamp' : '946684800' | |||||
| 'meter_status' : 'Connected' | |||||
| 'price' : '0.1400' | |||||
| 'price_label' : 'Set by User' | |||||
| 'price_units' : '$' | |||||
| 'summation_delivered' : '2667.867' | |||||
| 'summation_received' : '37.283' | |||||
| 'summation_units' : 'kWh' | |||||
| 'usage_timestamp' : '1394505386' | |||||
| """ | """ | ||||
| comm_responce = self._send_http_comm("get_usage_data") | comm_responce = self._send_http_comm("get_usage_data") | ||||
| @@ -442,35 +441,35 @@ class Eagle(object) : | |||||
| period day|week|month|year | period day|week|month|year | ||||
| On Success returns dict with the values (example): | On Success returns dict with the values (example): | ||||
| 'data_period' 'day', | |||||
| 'data_size' '14', | |||||
| 'timestamp[0]' '1394422200', | |||||
| 'timestamp[1]' '1394425800', | |||||
| 'timestamp[2]' '1394429400', | |||||
| 'timestamp[3]' '1394433000', | |||||
| 'timestamp[4]' '1394436600', | |||||
| 'timestamp[5]' '1394440200', | |||||
| 'timestamp[6]' '1394443800', | |||||
| 'timestamp[7]' '1394447400', | |||||
| 'timestamp[8]' '1394451000', | |||||
| 'timestamp[9]' '1394454600', | |||||
| 'timestamp[10]' '1394458200', | |||||
| 'timestamp[11]' '1394461800', | |||||
| 'timestamp[12]' '1394465400', | |||||
| 'timestamp[13]' '1394469000', | |||||
| 'value[0]' '0.429', | |||||
| 'value[1]' '0.426', | |||||
| 'value[2]' '0.422', | |||||
| 'value[3]' '0.627', | |||||
| 'value[4]' '0.735', | |||||
| 'value[5]' '0.193', | |||||
| 'value[6]' '0.026', | |||||
| 'value[7]' '-0.985', | |||||
| 'value[8]' '-1.491', | |||||
| 'value[9]' '-2.196'} | |||||
| 'value[11]' '-1.868', | |||||
| 'value[12]' '-1.330', | |||||
| 'value[13]' '-0.870', | |||||
| 'data_period' 'day' | |||||
| 'data_size' '14' | |||||
| 'timestamp[0]' '1394422200' | |||||
| 'timestamp[1]' '1394425800' | |||||
| 'timestamp[2]' '1394429400' | |||||
| 'timestamp[3]' '1394433000' | |||||
| 'timestamp[4]' '1394436600' | |||||
| 'timestamp[5]' '1394440200' | |||||
| 'timestamp[6]' '1394443800' | |||||
| 'timestamp[7]' '1394447400' | |||||
| 'timestamp[8]' '1394451000' | |||||
| 'timestamp[9]' '1394454600' | |||||
| 'timestamp[10]' '1394458200' | |||||
| 'timestamp[11]' '1394461800' | |||||
| 'timestamp[12]' '1394465400' | |||||
| 'timestamp[13]' '1394469000' | |||||
| 'value[0]' '0.429' | |||||
| 'value[1]' '0.426' | |||||
| 'value[2]' '0.422' | |||||
| 'value[3]' '0.627' | |||||
| 'value[4]' '0.735' | |||||
| 'value[5]' '0.193' | |||||
| 'value[6]' '0.026' | |||||
| 'value[7]' '-0.985' | |||||
| 'value[8]' '-1.491' | |||||
| 'value[9]' '-2.196' | |||||
| 'value[11]' '-1.868' | |||||
| 'value[12]' '-1.330' | |||||
| 'value[13]' '-0.870' | |||||
| """ | """ | ||||
| if period not in ['day', 'week', 'month', 'year'] : | if period not in ['day', 'week', 'month', 'year'] : | ||||
| @@ -479,12 +478,6 @@ class Eagle(object) : | |||||
| return json.loads(comm_responce) | return json.loads(comm_responce) | ||||
| def get_usage_data(self) : | |||||
| """ | |||||
| """ | |||||
| comm_responce = self._send_http_comm("get_usage_data") | |||||
| return json.loads(comm_responce) | |||||
| def get_setting_data(self) : | def get_setting_data(self) : | ||||
| """ | """ | ||||
| get settings data | get settings data | ||||
| @@ -528,7 +521,7 @@ class Eagle(object) : | |||||
| On Success returns dict with the value : | On Success returns dict with the value : | ||||
| 'timezone_localTime': '1394527011' | 'timezone_localTime': '1394527011' | ||||
| 'timezone_olsonName': 'UTC/GMT', | |||||
| 'timezone_olsonName': 'UTC/GMT' | |||||
| 'timezone_status': '2' | 'timezone_status': '2' | ||||
| 'timezone_utcOffset': 'UTC' | 'timezone_utcOffset': 'UTC' | ||||
| 'timezone_utcTime': '1394527011' | 'timezone_utcTime': '1394527011' | ||||
| @@ -544,7 +537,7 @@ class Eagle(object) : | |||||
| get time source for device | get time source for device | ||||
| On Success returns dict with value 'internet' or 'meter' : | On Success returns dict with value 'internet' or 'meter' : | ||||
| 'time_source': 'internet'} | |||||
| 'time_source': 'internet' | |||||
| """ | """ | ||||
| comm_responce = self._send_http_comm("get_time_source") | comm_responce = self._send_http_comm("get_time_source") | ||||
| return json.loads(comm_responce) | return json.loads(comm_responce) | ||||
| @@ -592,10 +585,10 @@ class Eagle(object) : | |||||
| get price for kWh | get price for kWh | ||||
| On Success returns (example): | On Success returns (example): | ||||
| price': '0.1300', | |||||
| price': '0.1300' | |||||
| price_label': 'Set by User' or '--' | price_label': 'Set by User' or '--' | ||||
| price_timestamp': '1394524458', | |||||
| price_units': '$'} | |||||
| price_timestamp': '1394524458' | |||||
| price_units': '$' | |||||
| returns empty dict on Error | returns empty dict on Error | ||||
| """ | """ | ||||
| @@ -730,10 +723,6 @@ class Eagle(object) : | |||||
| return json.loads(comm_responce) | return json.loads(comm_responce) | ||||
| # Support functions | # Support functions | ||||
| def _connect(self) : | def _connect(self) : | ||||