- message.type = openxc_pb2.VehicleMessage.TRANSLATED
- message.translated_message.name = json_message['name']
- if isinstance(json_message['value'], bool):
- message.translated_message.boolean_value = json_message['value']
- elif isinstance(json_message['value'], numbers.Number):
- message.translated_message.numerical_value = json_message['value']
+ if 'event' in json_message:
+ if isinstance(json_message['event'], bool):
+ message.type = openxc_pb2.VehicleMessage.EVENTED_BOOL
+ message.evented_boolean_message.name = json_message['name']
+ message.evented_boolean_message.value = json_message['value']
+ message.evented_boolean_message.event = json_message['event']
+ elif isinstance(json_message['event'], numbers.Number):
+ message.type = openxc_pb2.VehicleMessage.EVENTED_NUM
+ message.evented_numeric_message.name = json_message['name']
+ message.evented_numeric_message.value = json_message['value']
+ message.evented_numeric_message.event = json_message['event']
+ else:
+ message.type = openxc_pb2.VehicleMessage.EVENTED_STRING
+ message.evented_string_message.name = json_message['name']
+ message.evented_string_message.value = json_message['value']
+ message.evented_numeric_message.event = json_message['event']