def process_message_list()

in greengrass-v2/poll-api/artifacts/com.greengrass.ProcessApiStream/1.0.0/process.py [0:0]


def process_message_list(check_field_number, check_field_min_value, check_field_max_value, low_value_stream_name,
                         high_value_stream_name, abnormal_value_stream_name, message_list):
    for message in message_list:
        payload_dict = GGUtils.get_dict_from_message(message)

        found_high, found_low = check_payload_for_outliers(payload_dict, check_field_number, check_field_min_value,
                                                           check_field_max_value)

        if found_high:
            # Log high values
            GGUtils.append_message_to_stream(high_value_stream_name, message.payload)

        if found_low:
            # Log low values
            GGUtils.append_message_to_stream(low_value_stream_name, message.payload)

        if found_high or found_low:
            # Log high and low values in a combined stream
            GGUtils.append_message_to_stream(abnormal_value_stream_name, message.payload)
            # Publish them to IoT Core as well
            GGUtils.publish_results_to_cloud_qos_1("anomalies", payload_dict)