Правила постобработки сообщений HTTP_PROTO#

Постобработчик rules_stream_http_proto используется для постобработки потоковых сообщений HTTP_PROTO.

Общее описание и принципы использования подробно рассмотрены в разделе Настройка server-side streaming.

  • rules

    Обязательный параметр.

    Тип параметра: последовательность целочисленных значений.

    По умолчанию: не имеет значения по умолчанию.

    • action

      Тип параметра: текстовое значение.

      • «CLOSE» - корректно завершить соединение с клиентом;

      • «DISCONNECT» - разорвать соединение с клиентом;

      • «DROP_MSG» - удалить сообщение из очереди на отправку;

      • «SEND_MSG» - отправить сконструированное сообщение вместо заблокированного/вызвавшего ошибку;

      • «SEND_MSG_TRAILERS» - отправить сообщение с завершающими трейлерами после него;

      • «SEND_TRAILERS» - отправить завершающие трейлеры;

      • «SEND_MSG_CLOSE» - отправить сообщение и корректно завершить соединение с клиентом.

    • condition

      Обязательно в случае:

      • default не задан

      или

      • default: false.

      Тип параметра: последовательность параметров и их значения.

      По умолчанию: не имеет значения по умолчанию.

      • var

        В значении параметра указывается анализируемая переменная. Обязательный параметр.

        Тип параметра: текстовое значение.

        По умолчанию: не имеет значения по умолчанию.

      • operator

        В значении параметра указывается операнд сравнения. Обязательный параметр.

        Тип параметра: текстовое значение:

        • «=» — посимвольное равенство;

        • «!=» — посимвольное неравенство;

        • «<=» — меньше или равно, только для числовых значений;

        • «>=» — больше или равно, только для числовых значений;

        • «>» — больше, только для числовых значений;

        • «<» — меньше, только для числовых значений;

        • «in» — вхождение в перечисление, элементы задаются через запятую, сравнение с элементами посимвольное;

        • «not_in» — отсутствие вхождения в перечисление, элементы задаются через запятую, сравнение с элементами посимвольное;

        • «~» — регулярное выражение с учетом регистра;

        • «~*» — регулярное выражение без учета регистра;

        • «!~» — негативное регулярное выражение с учетом регистра;

        • «!~*» — негативное регулярное выражение без учета регистра;

        • «ip_range» — диапазон ip адресов, задаваемый начальным и конечным адресом через «-«;

        • «!ip_range» — отсутствие в диапазоне ip адресов;

        • «dn_mask» — маска доменного имени;

        • «!dn_mask» — несоответствие маске доменного имени.

        По умолчанию: не имеет значения по умолчанию.

      • val

        В значении параметра указывается ожидаемое значение анализируемой переменной.

        Тип параметра: текстовое значение.

        По умолчанию: не имеет значения по умолчанию.

    • replacements

      Обязательный параметр.

      Тип параметра: последовательность параметров и их значения.

      По умолчанию: не имеет значения по умолчанию.

      • fieldName

        В значении параметра задается имя поля для заполнения. Обязательный параметр.

        Тип параметра: текстовое значение.

        По умолчанию: не имеет значения по умолчанию.

      • val

        В значении параметра определяется новое значение для замены «переменной». Обязательный параметр.

        Тип параметра: текстовое значение.

        По умолчанию: не имеет значения по умолчанию.

    • priority

      Определяет приоритет условия. Выигрывает условие, имеющее больший приоритет.

      Тип параметра: целочисленное значение.

    • default

      Обязательно в случае:

      • condition не задано.

      Тип параметра:

      • true;

      • false.

    • protoConfig

    Используется в случае:

    • action: 'SEND_MSG'

    или

    • action: 'SEND_MSG_TRAILERS'

      • path

        Тип параметра: текстовое значение.

      • class

        Тип параметра: текстовое значение.

      • message

        Тип параметра: текстовое значение.