eclipse-volttron / volttron-openadr-ven

Apache License 2.0
5 stars 5 forks source link

Add logic to parse unsupported objects #36

Closed bonicim closed 2 years ago

bonicim commented 2 years ago

What is the change?

Why is it needed?

How tested?

I ran an IPKeys VTN to send a message to this OpenADRAgent, which was installed on a live Volttron instance. I verified that the output does show the datetime objects instead of None.

Output from logs:

2022-09-28 12:30:03,889 (volttron_openadr_ven-1.0.1.dev5 196308) __main__ INFO: Event signal:
 {'current_value': 2.0,
 'intervals': [{'duration': datetime.timedelta(seconds=14400),
                'signal_payload': 2.0,
                'uid': 0}],
 'signal_id': 'SIG_01',
 'signal_name': 'SIMPLE',
 'signal_type': 'level'}
2022-09-28 12:30:03,895 (volttron_openadr_ven-1.0.1.dev5 196308) __main__ DEBUG: Publishing real/non-test event 
 {'active_period': {'dtstart': datetime.datetime(2022, 9, 28, 19, 15, tzinfo=datetime.timezone.utc),
                   'duration': datetime.timedelta(seconds=14400),
                   'notification': datetime.timedelta(0),
                   'ramp_up': datetime.timedelta(0),
                   'recovery': datetime.timedelta(0),
                   'tolerance': {'tolerate': {'startafter': datetime.timedelta(0)}}},
 'event_descriptor': {'created_date_time': datetime.datetime(2022, 9, 28, 19, 30, 3, tzinfo=datetime.timezone.utc),
                      'event_id': '317DADDC-A916-429A-A772-0EDA7BBAA02D',
                      'event_status': 'active',
                      'market_context': 'PNNL_fun',
                      'modification_date_time': datetime.datetime(2022, 9, 28, 19, 29, 40, tzinfo=datetime.timezone.utc),
                      'modification_number': 0,
                      'modification_reason': None,
                      'priority': 1,
                      'test_event': False,
                      'vtn_comment': None},
 'event_signals': [{'current_value': 2.0,
                    'intervals': [{'duration': datetime.timedelta(seconds=14400),
                                   'signal_payload': 2.0,
                                   'uid': 0}],
                    'signal_id': 'SIG_01',
                    'signal_name': 'SIMPLE',
                    'signal_type': 'level'}],
 'response_required': 'always',
 'targets': [{'ven_id': 'PNNLVEN'}],
 'targets_by_type': {'ven_id': ['PNNLVEN']}}