# but most of ours are full 64+11 bits
total_raw_can_size += 10
total_raw_json_size += len(json.dumps(json_message))
- binary_message = openxc_pb2.RawMessage()
- binary_message.message_id = json_message['id']
- binary_message.data = int(json_message['data'], 0)
message.type = openxc_pb2.VehicleMessage.RAW
- message.raw_message = binary_message
+ message.raw_message.message_id = json_message['id']
+ message.raw_message.data = int(json_message['data'], 0)
total_raw_binary_size += len(message.SerializeToString())
else:
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']
- else:
+ if 'event' in json_message:
message.translated_message.string_value = json_message['value']
+ if isinstance(json_message['event'], bool):
+ message.translated_message.type = openxc_pb2.TranslatedMessage.EVENTED_BOOL
+ message.translated_message.boolean_event = json_message['event']
+ elif isinstance(json_message['event'], numbers.Number):
+ message.translated_message.type = openxc_pb2.TranslatedMessage.EVENTED_NUM
+ message.translated_message.numeric_value = json_message['event']
+ else:
+ message.translated_message.type = openxc_pb2.TranslatedMessage.EVENTED_STRING
+ message.translated_message.string_value = json_message['event']
+ else:
+ if isinstance(json_message['value'], bool):
+ message.translated_message.type = openxc_pb2.TranslatedMessage.BOOL
+ message.translated_message.boolean_value = json_message['value']
+ elif isinstance(json_message['value'], numbers.Number):
+ message.translated_message.type = openxc_pb2.TranslatedMessage.NUM
+ message.translated_message.numeric_value = json_message['value']
+ else:
+ message.translated_message.type = openxc_pb2.TranslatedMessage.STRING
+ message.translated_message.string_value = json_message['value']
total_translated_json_size += len(json.dumps(json_message))
total_translated_binary_size += len(message.SerializeToString())