Create message, containing meta and data in df-envelope format.

    @json_meta - metadata
    @data - binary data
    @data_type - data type code for binary data
    @version - version of machine header
    @return - message as bytearray

def create_message(
        json_meta, data, data_type=0, version=b'\x00\x01@\x00'):
    """Create message, containing meta and data in df-envelope format.

    @json_meta - metadata
    @data - binary data
    @data_type - data type code for binary data
    @version - version of machine header
    @return - message as bytearray

    """
    __check_data(data)
    meta = __prepare_meta(json_meta)
    data = __compress(json_meta, data)
    header = __create_machine_header(
        json_meta, data, data_type, version)

    return header + meta + data