# Глобальные функции

Описание и характеристика глобальных функций модуля Автоматизации, которые можно использовать при разработке сценариев.

# FilterByStreamId

  • Категория: Filter

  • Тип функции: Impure

  • Описание: Функция позволяет осуществлять фильтрацию принимаемого объекта по полю id структуры _stream.

    • Inputs

      Название Тип Описание Параметры
      In Exec Пин вызова Связь
      Stream Struct: StreamInLogEvent Принимает на вход структуру StreamInLogEvent Связь
      StreamId Bool Идентификатор потока monq Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Ok Exec Последовательность активна, если фильтрация успешна Связь
      Failed Exec Последовательность активна, если фильтрация неуспешна Связь

# AutomatonHTTPRequest

  • Категория: HTTP Query

  • Тип функции: Impure

  • Описание:

    Функция позволяет сформировать http-запрос для обращения к публичному API любой системы.

    Для формирования запроса, необходимо указать:

    • адрес API

      Если Uri не начинается с http:// или с https://, то автоматически будет подставлен BaseUri из переменной Scenario для удобства работы с API monq.

    • метод запроса

    • тело запроса

    • системную переменную Scenario

    • системную переменную BearerToken

      Данный параметр можно не указывать, если планируется отправить запрос от лица Automaton Bot (берется по умолчанию из переменной Scenario).

      Если указать - при запросе будет использован заданный пользователем Bearer Token.

    • Inputs

      Название Тип Описание Параметры
      In Exec Пин вызова функции Связь
      Scenario Struct:ScenarioBase Передаются общие параметры сценария для выполнения функции Связь/контрол
      Url String Адрес API Связь/контрол
      Method String Тип (метод) запроса Связь/контрол
      Body Wildcard: Struct array/single Тело запроса Связь
      BearerToken String Токен пользователя. (Automaton bot token) Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Ok Exec Пин вызова функции, в случае успешного выполнения запроса Связь
      Failed Exec Пин вызова функции, в случае неудачного выполнения запроса Связь
      Error String При наличии ошибки, ее тело будет передано в исходящий пин Error Связь
      Result Wildcard: Struct array/single Результат запроса будет передан для исходящего пина Result, формат которого будет определен по установленной связи Wildcard Связь

# MakeStruct

  • Категория: Structure/object

  • Тип функции: Pure

  • Описание:

    Функция устанавливает исходящую связь со структурой и позволяет задать значения ее свойств.

    Свойства первого уровня вложенности отражаются в виде входящих пинов.

    • Inputs

      Название Тип Описание Параметры
      * Типы и количество пинов зависят от состава конкретной структуры Пины добавляются автоматически, при установке исходящей связи. Связь
    • Outputs

      Название Тип Описание Параметры
      Result Wildcard: Any struct (single) Устанавливает связь с пинами типа "Struct" Связь

# Branch

  • Категория: Flow control

  • Тип функции: Impure

  • Описание:

    Изображение

    Функция предназначена для управления потоком. Направление определяется в зависимости от состояния пришедшей на вход bool переменной.

    • Inputs

      Название Тип Описание Параметры
      In Exec Пин вызова Связь
      Condition Bool Принимает значение true/false, благодаря чему функция определяет последовательность выполнения. Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      True Exec Последовательность активна, если на вход пришло значение true Связь
      False Exec Последовательность активна, если на вход пришло значение false Связь

# Switch

  • Категория: Flow control

  • Тип функции: Impure

  • Описание:

    Изображение

    Функция определяет направление потока, в зависимости от того, какое значение указанного строкового поля поступило на вход.

    • Добавление, удаление и настройка узлов выхода реализуется через инспектор (панель справа).

    • При добавлении устанавливается неизменяемый тип Exec по умолчанию. Значение контрола - пустое.

    • Функция принимает на вход только строку и числа.

    • Inputs

      Название Тип Описание Параметры
      In Exec Пин вызова Связь
      Value WildCard: string & any numbers Переменная, значение которой будет сравнивать функция для определения направления потока. Связь
    • Outputs

      Название Тип Описание Параметры
      {Значение} Exec Последовательность, выполняемая, если указанное пользователем значение в контроле совпадает с пришедшим на вход. Контрол/Связь
      Default Exec Последовательность, выполняемая, если ни одно указанное пользователем значение не совпало с пришедшим на вход. Связь

# ForEach

  • Категория: Loop

  • Тип функции: Impure

  • Описание:

    Изображение

    • Принимает на вход массив данных, перебирая каждый из них в цикле.
    • При каждой итерации отдает элемент массива и его индекс ElementIndex.
    • При каждой итерации цикла вызывается последовательность Loop.
    • После прерывания цикла вызывается последовательность Completed.

    Тип пина обоюдно наследуется между Array и ArrayElement. Массив/сингл закреплен, наследуется именно тип.

    • Inputs

      Название Тип Описание Параметры
      In Exec Пин вызова Связь
      Array Wildcard: Any array Принимает на вход любой массив для дальнейшей работы с ним. Тип данного пина связан с типом пина Array Element. Связь
    • Outputs

      Название Тип Описание Параметры
      Loop Exec Последовательность, вызываемая каждую итерацию Связь
      ArrayElement Wildcard: Any single Принимает тип данных от входящего массива или от установки связи. Тип данного пина связан с типом пина Array. При выполнении итерации отдает на выход элемент массива. Связь
      Element Index Integer Индекс элемента для данной итерации Связь
      Completed Exec Последовательность вызываемая по завершению цикла Связь

# DoWhile

  • Категория: Loop

  • Тип функции: Impure

  • Описание:

    Изображение

    • Цикл, гарантированно вызывающий последовательность один раз.

    • При следующей итерации проверяется значение входящего boolean условия. Если оно истинно - цикл продолжается. Если нет - прекращается.

    • После прерывания цикла вызывается последовательность Complete.

    • Inputs

      Название Тип Описание Параметры
      In Exec Пин вызова Связь
      Condition Boolean Значение, определяющее, зацикливается последовательность или нет. Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Loop Exec Вызывает последовательность, пока условие Condition == True. Связь
      Completed Exec Вызывает последовательность, если условие Condition == False Связь

# WhileDo

  • Категория: Loop

  • Тип функции: Impure

  • Описание:

    Изображение

    • Функция циклично вызывает последовательность до тех пор, пока условие, принимаемое на вход - истинно.

    • После прерывания цикла вызывается последовательность Complete.

    • Inputs

      Название Тип Описание Параметры
      In Exec Пин вызова Связь
      Condition Boolean Значение, определяющее, зацикливается последовательность или нет. Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Loop Exec Вызывает последовательность, пока условие Condition == True. Связь
      Completed Exec Вызывает последовательность, если условие Condition == False Связь

# BreakDynamic

  • Категория: Structure/object

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция позволяет разложить произвольный объект на составные элементы.

    1. На вход всегда принимается произвольный объект типа Dynamic. Для выхода пользователь создает пины, задает их типы и указывает, какие предполагаемые поля войдут в его состав.
    2. В случае если для данного объекта существует такое поле, то его значение передается на выход.
    • Inputs

      Название Тип Описание Параметры
      Object Wildcard:Dynamic single Принимает любой объект Связь
    • Outputs

      Название Тип Описание Параметры
      Настраиваемый Настраиваемый Пользователь может добавить и настроить Пины в инспекторе. Пины могут быть массивом Связь

# BreakStruct

  • Категория: Structure/object

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция автоматически раскладывает структуру на ее свойства при установлении входящей связи.

    Свойства первого уровня вложенности отражаются в виде исходящих пинов.

    • Inputs

      Название Тип Описание Параметры
      Value Wildcard:Struct single Принимает любую структуру Связь
    • Outputs

      Название Тип Описание Параметры
      - Тип и количество пинов зависят от состава входящей структуры Пины добавляются автоматически, при установке входящей связи Связь

# SetMembersInStruct

  • Категория: Structure/object

  • Тип функции: Impure

  • Описание:

    Изображение

    Функция позволяет внести изменение в значение конкретных свойств структуры.

    • Блок создается с доступным для выбора типом структуры.

    • На вход функции принимается вся структура. В инспекторе пользователь может указать, для каких свойств структуры нужно задать собственное значение.

    • Выбранные пользователем свойства отображаются, как входящие пины функции, с которыми можно установить связь или задать контрол.

    • На выходе функции будет представлена структура с измененными значениями.

    • Inputs

      Название Тип Описание Параметры
      In Exec Пин вызова функции Связь
      Value Wildcard: Struct single Принимает на вход структуру Связь
      - - По умолчанию, пины свойств структуры будут отсутствовать. Их нужно указать в настройках конфигурации в инспекторе. Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Out Exec Пин вызова функции Связь
      Result Struct На выходе будет указанный тип структуры с обновленными значениями указанных свойств Связь

# MonqHTTPRequest

Deprecated - AutomatonHTTPRequest

  • Категория: HTTP Query

  • Тип функции: Impure

  • Описание:

    Изображение

    Функция позволяет сформировать http-запрос для обращения к публичному API системы. Для формирования запроса, потребуется указать:

    • адрес API
    • тип запроса
    • тело запроса

    Внутри функции будет произведена конвертация struct to JSON для приведения к нужному формату запроса.

    • Inputs

      Название Тип Описание Параметры
      In Exec Пин вызова функции Связь
      Url String Адрес API Связь/контрол
      Type String Тип (метод) запроса Связь/контрол
      Body Wildcard: Struct array/single Тело запроса Связь
      BearerToken String Токен пользователя. (Automaton bot token) Связь/контрол
      UserspaceId String Id пользовательского пространства Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Ok Exec Пин вызова функции, в случае успешного выполнения запроса Связь
      Failed Exec Пин вызова функции, в случае неудачного выполнения запроса Связь
      Error String При наличии ошибки, ее тело будет передано в исходящий пин Error Связь
      Result Wildcard: Struct array/single Результат запроса будет передан для исходящего пина Result, формат которого будет определен по установленной связи Wildcard Связь

# ArrayAddElement

  • Категория: Array

  • Тип функции: Impure

  • Описание:

    Изображение

    Функция добавляет элемент к входящему массиву и возвращает обновленный массив.

    • Inputs

      Название Тип Описание Параметры
      In Exec Пин вызова функции Связь
      Array Wildcard: Any array Принимает и изменяет массив. Тип пина для wildcard устанавливается на все пины. Связь
      Element Wildcard: Any single Принимает на вход элемент, который будет добавлен в массив. Тип пина для wildcard устанавливается на все пины. Связь
    • Outputs

      Название Тип Описание Параметры
      Out Exec Пин вызова функции Связь
      Result Wildcard: Any array Возвращает измененный массив. Тип пина для wildcard устанавливается на все пины. Связь

# ArrayAny

  • Категория: Array

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция принимает на вход массив и возвращает true, если массив содержит хотя бы один элемент.

    • Inputs

      Название Тип Описание Параметры
      Array Wildcard: Any array Принимает на вход массив для проверки на наличие в нем элементов Связь
    • Outputs

      Название Тип Описание Параметры
      Result Bool Возвращает значение по результатам проверки Связь

# ArrayFirst

  • Категория: Array

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция принимает на вход массив и возвращает первый по счету элемент.

    • Inputs

      Название Тип Описание Параметры
      Array Wildcard: Any array Принимает на вход массив. Значение wildcard устанавливается парно на входящий и исходящий пин. Связь
    • Outputs

      Название Тип Описание Параметры
      Result Wildcard Возвращает первый по счету элемент. Значение wildcard устанавливается парно на входящий и исходящий пин. Связь

# ArrayExcept

  • Категория: Array

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция принимает на вход два Wildcard массива, возвращает массив, содержащий все элементы первого массива, которых нет во втором массиве.

    Тип наследуется для всех 3-х пинов при установке/снятии связи.

    • Inputs

      Название Тип Описание Параметры
      First Wildcard: Any array Принимает любой массив, тип устанавливается на все пины блока, если еще не был установлен. Связь
      Second Wildcard: Any array Принимает любой массив, тип устанавливается на все пины блока, если еще не был установлен. Связь
    • Outputs

      Название Тип Описание Параметры
      Result Wildcard: Any array Возвращает массив элементов первого массива, которых нет во втором массиве. Связь

# Equal

  • Категория: Operators

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция принимает на вход и сравнивает между собой значения А и В, и если они равны - возвращает true.

    • Значения должны быть одного типа.

    • Тип обоюдно наследуется.

    • Inputs

      Название Тип Описание Параметры
      A Wildcard: Basic single и struct:DateTime Принимает или устанавливает значение для сравнения Связь/контрол
      B Wildcard: Basic single и struct:DateTime Принимает или устанавливает значение для сравнения Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Result Bool Возвращает результат сравнения. Связь

# NotEqual

  • Категория: Operators

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция принимает на вход и сравнивает между собой значения А и В, и если они не равны - возвращает true.

    • Значения должны быть одного типа.

    • Тип обоюдно наследуется.

    • Inputs

      Название Тип Описание Параметры
      A Wildcard: Basic single и struct:DateTime Принимает или устанавливает значение для сравнения Связь/контрол
      B Wildcard: Basic single и struct:DateTime Принимает или устанавливает значение для сравнения Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Result Bool Возвращает результат сравнения. Связь

# Greater

  • Категория: Operators

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция принимает на вход и сравнивает между собой значения А и В, и если А больше В, возвращает true.

    • Значения должны быть одного типа.

    • Тип обоюдно наследуется.

    • Inputs

      Название Тип Описание Параметры
      A Wildcard: byte, double, integer, integer64, struct:DateTime Принимает или устанавливает значение для сравнения Связь/контрол
      B Wildcard: byte, double, integer, integer64, struct:DateTime Принимает или устанавливает значение для сравнения Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Result Bool Возвращает результат сравнения. Связь

# GreaterOrEqual

  • Категория: Operators

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция принимает на вход и сравнивает между собой значения А и В, и если А больше или равен В, возвращает true.

    • Значения должны быть одного типа.

    • Тип обоюдно наследуется.

    • Inputs

      Название Тип Описание Параметры
      A Wildcard: byte, double, integer, integer64, struct:DateTime Принимает или устанавливает значение для сравнения Связь/контрол
      B Wildcard: byte, double, integer, integer64, struct:DateTime Принимает или устанавливает значение для сравнения Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Result Bool Возвращает результат сравнения. Связь

# Less

  • Категория: Operators

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция принимает на вход и сравнивает между собой значения А и В, и если А меньше, чем В, возвращает true.

    • Значения должны быть одного типа.

    • Тип обоюдно наследуется.

    • Inputs

      Название Тип Описание Параметры
      A Wildcard: byte, double, integer, integer64, struct:DateTime Принимает или устанавливает значение для сравнения Связь/контрол
      B Wildcard: byte, double, integer, integer64, struct:DateTime Принимает или устанавливает значение для сравнения Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Result Bool Возвращает результат сравнения. Связь

# LessOrEqual

  • Категория: Operators

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция принимает на вход и сравнивает между собой значения А и В, и если А меньше или равен В, возвращает true.

    • Значения должны быть одного типа.

    • Тип обоюдно наследуется.

    • Inputs

      Название Тип Описание Параметры
      A Wildcard: byte, double, integer, integer64, struct:DateTime Принимает или устанавливает значение для сравнения Связь/контрол
      B Wildcard: byte, double, integer, integer64, struct:DateTime Принимает или устанавливает значение для сравнения Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Result Bool Возвращает результат сравнения. Связь

# Increment

  • Категория: Operators

  • Тип функции: Impure

  • Описание:

    Изображение

    Функция увеличивает на 1 значение числовой переменной, с которой у нее установлена входящая связь. Так же функция возвращает полученное значение на выходе.

    • Inputs

      Название Тип Описание Параметры
      In Exec Пин вызова функции Связь
      Value Wildcard: byte, double, integer, integer64 Устанавливает связь с переменной Связь
    • Outputs

      Название Тип Описание Параметры
      In Exec Пин вызова функции Связь
      Result Wildcard: byte, double, integer, integer64 Устанавливает связь с переменной Связь

# Decrement

  • Категория: Operators

  • Тип функции: Impure

  • Описание:

    Изображение

    Функция уменьшает на 1 значение числовой переменной, с которой у нее установлена входящая связь. Так же функция возвращает полученное значение на выходе.

    • Inputs

      Название Тип Описание Параметры
      In Exec Пин вызова функции Связь
      Value Wildcard: byte, double, integer, integer64 Устанавливает связь с переменной Связь
    • Outputs

      Название Тип Описание Параметры
      In Exec Пин вызова функции Связь
      Value Wildcard: byte, double, integer, integer64 Устанавливает связь с переменной Связь

# AND

  • Категория: Logic Operators

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция с двумя или более операндами. Результат выполнения функции истинен тогда и только тогда, когда все операнды, принимаемые на вход - истинны.

    • Пользователь может добавить неограниченное количество операндов через инспектор

    • Для добавленных пинов по умолчанию выставляется неизменяемый тип пина bool

    • По умолчанию значение false.

    • Inputs

      Название Тип Описание Параметры
      a Bool Принимает bool значение для сравнения Связь/контрол
      b Bool Принимает bool значение для сравнения Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Result Bool Результат выполнения Связь

# OR

  • Категория: Logic Operators

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция с 2 или более операндами. Результат выполнения функции истинен, когда хотя бы один из операндов, принимаемых на вход - истинен.

    • Пользователь может добавить неограниченное количество операндов через инспектор

    • Для добавленных пинов по умолчанию выставляется неизменяемый тип пина bool

    • По умолчанию значение false.

    • Inputs

      Название Тип Описание Параметры
      a Bool Принимает bool значение для сравнения Связь/контрол
      b Bool Принимает bool значение для сравнения Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Result Bool Результат выполнения Связь

# NOT

  • Категория: Logic Operators

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция с одним операндом. Результат выполнения функции истинен тогда и только тогда, когда принимаемый на вход операнд ложен.

    • Inputs

      Название Тип Описание Параметры
      Value Bool Принимает bool значение для проверки Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Result Bool Результат выполнения Связь

# Add

  • Категория: Math Operators

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция принимает на вход 2 и более значения, складывает их и возвращает сумму.

    • Пользователь может управлять количеством входящих пинов в настройках инспектора.

    • При добавлении очередного слагаемого, по умолчанию для него ставится значение 0.

    • Inputs

      Название Тип Описание Параметры
      a Wildcard: byte, double, integer, integer64 Слагаемое Связь/контрол
      b Wildcard: byte, double, integer, integer64 Слагаемое Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Result Wildcard: byte, double, integer, integer64 Сумма Связь

# StringCreateFrom

  • Категория: Strings

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция принимает на вход любой тип данных, преобразует и отдает на выходе строку.

    • Inputs

      Название Тип Описание Параметры
      Value Wildcard: Any single Принимает на вход любое значение Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Result String Приведенное к строке входящее значение Связь

# StringConcat

  • Категория: Strings

  • Тип функции: Pure

  • Описание:

    Изображение

    Функция принимает на вход строковые значения, конкатенирует их и возвращает получившуюся строку в результате слияния.

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

    • При добавлении по умолчанию устанавливается не редактируемый тип string.

    • Слияние строк происходит в порядке расположения пинов сверху вниз.

    • Inputs

      Название Тип Описание Параметры
      Value String Строка Связь/контрол
    • Outputs

      Название Тип Описание Параметры
      Result String Результат конкатенации Связь