На этой странице:
Функции общего назначенияdel(varName string)Назначение: удаление локальной или модульной переменной. Аргументы:
Возвращаемое значение: отсутствует.
Математические функцииmath.pos(num mixed) numberНазначение: фактически преобразует аргумент к числу. Эквивалент унарной операции "+". Аргументы:
Возвращаемое значение: число.
math.neg(num number) numberНазначение: меняет знак числа. Эквивалент унарной операции "-". Аргументы:
Возвращаемое значение: число со знаком обратному исходному.
math.inv(num number) numberНазначение: инверсия бит числа. Эквивалент унарной операции "~". Аргументы:
Возвращаемое значение: инвертированное число.
math.not(num number) boolНазначение: логическое отрицание числа. Эквивалент унарной операции "!". Аргументы:
Возвращаемое значение: true, если num не равно 0 и false в противном случае.
math.add(num1 number, num2 number, precision int = 12) numberНазначение: сложение чисел. Эквивалент бинарной операции "+". Аргументы:
Возвращаемое значение: сумма чисел.
math.sub(num1 number, num2 number, precision int = 12) numberНазначение: разность чисел. Эквивалент бинарной операции "-". Аргументы:
Возвращаемое значение: разность чисел.
math.mul(num1 number, num2 number, precision int = 12) numberНазначение: произведение чисел. Эквивалент бинарной операции "*". Аргументы:
Возвращаемое значение: произведение чисел.
math.div(num1 number, num2 number, precision int = 12) numberНазначение: частное чисел. Эквивалент бинарной операции "/". Аргументы:
Возвращаемое значение: частное чисел.
math.idiv(num1 number, num2 number) intНазначение: целочисленное деление чисел. Эквивалент бинарной операции "\". Аргументы:
Возвращаемое значение: целая часть частного чисел.
math.mod(num1 number, num2 number, precision int = 12) numberНазначение: остаток от деления двух чисел. Эквивалент бинарной операции "%". Аргументы:
Возвращаемое значение: остаток от деления.
math.pow(base number, power number, precision int = 12) numberНазначение: возведение числа base в степень power. Эквивалент бинарной операции "**". Аргументы:
Возвращаемое значение: результат возведения в степень.
math.sqrt(num number, precision int = 12) numberНазначение: извлечение квадратного корня. Аргументы:
Возвращаемое значение: квадратный корень либо ошибка, если число отрицательное.
math.round(num number, precision int) numberНазначение: округление числа до требуемого знака после запятой. Аргументы:
Возвращаемое значение: округлённое с заданной точностью число.
Функции для работы со строкамиstr.len(str string) intНазначение: определение длины строки в символах. Аргументы:
Возвращаемое значение: целое число, равное количеству символов в строке.
str.lower(str string) stringНазначение: преобразовапние символов строки в нижний регистр. Аргументы:
Возвращаемое значение: строка, все символы которой находятся в нижнем регистре.
str.upper(str string) stringНазначение: преобразование символов строки в верхний регистр. Аргументы:
Возвращаемое значение: строка, все символы которой находятся в верхнем регистре.
str.ucfirst(str string) stringНазначение: преобразование первого символа строки в верхний регистр. Аргументы:
Возвращаемое значение: строка, в которой первый символ записан в верхнем регистре.
str.lcfirst(str string) stringНазначение: преобразование первого символа строки в нижний регистр. Аргументы:
Возвращаемое значение: строка, в которой первый символ записан в нижнем регистре.
str.letter(str string, index int) stringНазначение: получение указанного символа строки. Аргументы:
Возвращаемое значение: строка, соответствующая указанному символу, либо пустая строка, если символа с такой позицией не существует.
str.first(str string, index int = 0) stringНазначение: получение указанного символа строки, начиная с начала строки. Аргументы:
Возвращаемое значение: строка, соответствующая указанному символу, либо пустая строка, если символа с такой позицией не существует.
str.last(str string, index int = 0) stringНазначение: получение указанного символа строки, начиная с конца строки. Аргументы:
Возвращаемое значение: строка, соответствующая указанному символу, либо пустая строка, если символа с такой позицией не существует.
str.concat(str1 string, str2 string) stringНазначение: объединяет две строки в одну. Аргументы:
Возвращаемое значение: новая строка, состоящая из первой строки, справа от которой добавлена вторая строка.
str.sub(str string, offset int, length int = nil) stringНазначение: возвращает подстроку строки str, начинающейся с offset символа по счету и длиной length символов. Аргументы:
Возвращаемое значение: часть str или пустая строка.
str.join(arr Collection, separator string = "") stringНазначение: объединяет элементы коллекции (кортежа, списка или ассоциативного массива) в строку. Аргументы:
Возвращаемое значение: новая строка, составленная из всех элементов коллекции отделённых между собой разделителем.
str.split(str string, separator string = "", limit int = 0) ListНазначение: разбивает строку на части, используя separator в качестве разделителя. Аргументы:
Возвращаемое значение: список подстрок, на которые была разбита строка.
str.replace(str string, search string, replace string) stringНазначение: ищет все вхождения подстроки в строке и заменяет их на заданное значение. Аргументы:
Возвращаемое значение: новая строка, в которой все search заменены на replace.
str.match(str string, pattern string) boolНазначение: выполняет проверку данной строки регулярному выражению. Аргументы:
Возвращаемое значение: возвращает true, если строка соответствует регулярному выражению и false – в противном случае. Примечание: в качестве регулярных выражений используются Perl совместимые регулярные выражения (PCRE). Ссылка на документацию и примеры регулярных выражений. Онлайн редактор регулярных выражений.
str.distance(str1 string, str2 string) numberНазначение: вычисляет степень сходства двух строк. Аргументы:
Возвращаемое значение: возвращает число от 0 до 1 включительно, определяющее степень сходства двух строк: 1 – строки эквивалентны, 0 – строки абсолютно разные. Примечание: функция фактически вычисляет расстояние Дамерау–Левенштейна.
Функции хэшированияhash.of(text string, algo string = "md5", binary bool = false) stringНазначение: вычисляет хэш строки согласно указанному алгоритму. Аргументы:
Возвращаемое значение: возвращает строку, содержащую вычисленный хеш-код в шестнадцатеричной кодировке в нижнем регистре. Если binary задан как true, то возвращается хеш-код в виде бинарных данных. В случае ошибки (например, если указан недопустимый алгоритм хэширования) возвращает пустую строку. Допустимые значения алгоритмов хэширования:
Примечание: если третий параметр true, то передавать возвращаемое функцией значение в качестве сообщения бота или его части нельзя. Это приведёт к падению бота.
Функции кодирования/декодированияcodec.base64Encode(str string) stringНазначение: кодирует заданную строку в Base64. Аргументы:
Возвращаемое значение: возвращает строку, закодированную в Base64.
codec.base64Decode(str string) ?stringНазначение: декодирует заданную в Base64 строку. Аргументы:
Возвращаемое значение: возвращает раскодированную строку либо nil, если закодированная строка содержит символы, не входящие в алфавит символов Base64 кодировки.
Функции для работы с датой и временемdt.add(d1 int|string, d2 int|string) stringНазначение: складывает две даты, заданные в виде строки либо как число секунд.
Аргументы:
Возвращаемое значение: возвращает новую дату и время в виде строки.
dt.sub(d1 int|string, d2 int|string) int|stringНазначение: вычисляет разность двух дат, заданных в виде строк либо количеством секунд.
Аргументы:
Возвращаемое значение: возвращает новую дату и время в виде строки либо число секунд – разность дат.
dt.format(dt int|string, format string) stringНазначение: форматирует дату согласно заданному формату. Аргументы:
Возвращаемое значение: строка даты в заданном формате. Допустимые параметры форматирования:
Примечание: если строка формата содержит символы, совпадающие с вышеперечисленными, но не являющиеся параметрами форматирования, то их следует экранировать с помощью символа обратного слэша "\".
date.nearFuture(day int) stringНазначение: возвращает ближайшую будущую к текущей дату по заданному дню. Аргументы:
Возвращаемое значение: возвращает ближайшую к day дату.
date.nearPast(day int) stringНазначение: возвращает ближайшую прошлую к текущей дату по заданному дню. Аргументы:
Возвращаемое значение: возвращает ближайшую к day дату.
date.future(day int) stringНазначение: возвращает дату, соответствующую указанному дню в следующем месяце. Аргументы:
Возвращаемое значение: дата в будущем.
date.past(day int) stringНазначение: возвращает дату, соответствующую указанному дню в прошлом месяце. Аргументы:
Возвращаемое значение: дата в прошлом.
time.nearFuture(minute int) stringНазначение: возвращает ближайшее будущее к текущему время по заданному количеству минут. Аргументы:
Возвращаемое значение: возвращает ближайшее к minute время.
time.nearPast(minute int) stringНазначение: возвращает ближайшее прошлое к текущему время по заданному количеству минут. Аргументы:
Возвращаемое значение: возвращает ближайшее к minute время.
time.future(minute int) stringНазначение: возвращает время, соответствующее указанному числу минут в следующем часе. Аргументы:
Возвращаемое значение: время в будущем.
time.past(minute int) stringНазначение: возвращает время, соответствующее указанному числу минут в прошедшем часе. Аргументы:
Возвращаемое значение: время в прошлом.
Функции по работе с очередью сообщений пользователяqueue.size() intНазначение: определение размера очереди сообщений пользователя. Аргументы: отсутствуют. Возвращаемое значение: число сообщений пользователя.
queue.last() ?UserMessageНазначение: возвращает последнее сообщение пользователя либо nil, если очередь сообщений пуста. Аргументы: отсутствуют. Возвращаемое значение: объект UserMessage или nil.
queue.first() ?UserMessageНазначение: возвращает первое сообщение пользователя либо nil, если очередь сообщений пуста. Аргументы: отсутствуют. Возвращаемое значение: объект UserMessage или nil.
queue.nth(index int) ?UserMessageНазначение: возвращает сообщение пользователя по его порядковому номеру, начиная с 1. Аргументы:
Возвращаемое значение: объект UserMessage или nil.
queue.lastNth(index int) ?UserMessageНазначение: возвращает сообщение пользователя по его порядковому номеру, считая с конца очереди. Последнее сообщение соответствует порядковому номеру 1. Аргументы:
Возвращаемое значение: объект UserMessage или nil.
Функции для работы с фактамиfact.save(context string, factName string, factValue mixed, botId string = nil, clientId string = nil)Назначение: сохраняет факт в базе фактов. Аргументы:
Возвращаемое значение: отсутствует.
fact.load(context string, factName string, botId string = nil, clientId string = nil) mixedНазначение: извлекает факт из базы фактов. Аргументы:
Возвращаемое значение: содержимое факта.
fact.delete(context string, factName string, botId string = nil, clientId string = nil)Назначение: удаляет факт из базы фактов. Аргументы:
Возвращаемое значение: отсутствует.
fact.query() FactQueryНазначение: возвращает экземпляр FactQuery для построения и выполнения запросов к базе фактов. Аргументы: отсутствуют. Возвращаемое значение: объект FactQuery.
fact.cond() FactQueryConditionНазначение: возвращает экземпляр FactQueryCondition для построения составных условий в запросах к базе фактов. Аргументы: отсутствуют. Возвращаемое значение: объект FactQueryCondition.
Функции для работы с таймеромtimer.start(time int, nodeId string) stringНазначение: запускает таймер обратного отсчёта. По истечении указанного времени бот осуществит переход на указанный узел (блок). Аргументы:
Возвращаемое значение: идентификатор таймера.
timer.stop(timerId string)Назначение: останавливает (удаляет) таймер обратного отсчёта. Аргументы:
Возвращаемое значение: отсутствует.
Функции для работы с текстом на естественном языке (NLP)nlp.parse(message string|UserMessage) SentenceНазначение: парсит текст на естественном языке. Аргументы:
Возвращаемое значение: объект Sentence, содержащий информацию о всех намерениях и сущностях исходного сообщения. Примечание: данная функция извлекает из текста только сущности. Для работы с намерениями используйте функцию nlu.parse.
nlp.join(message1 string|UserMessage, message2 string|UserMessage) SentenceНазначение: объединяет два текста на естественном языке в одно и затем парсит его. Аргументы:
Возвращаемое значение: объект Sentence, содержащий информацию о всех намерениях и сущностях объединённого сообщения.
nlp.setPerception($sentence Sentence)Назначение: позволяет установить сообщение пользователя для обработки в других узлах (блоках) схемы бота. Аргументы:
Возвращаемое значение: отсутствует.
Функции для "понимания" естественного языка.nlu.parse(text string, agentId string, timezoneOffset int = 0, version int = 1) SentencePurpose: разбор текста на естественном языке. Выявление намерений и сущностей. Arguments:
Возвращаемое значение: объект Sentence.
Функции для работы с HTTPhttp.sendRequest(url string, method string, body any = nil, headers Map = nil) ResponseНазначение: отправляет HTTP запрос на указанный URL. Аргументы:
Возвращаемое значение: объект HTTP-ответа.
http.request(url string = "", method string = "POST", body any = nil) RequestНазначение: формирует новый объект HTTP-запроса. Аргументы:
Возвращаемое значение: объект, содержащий информацию о HTTP-запросе.
Объект Requesttimeout(timeout int) RequestНазначение: задаёт максимально допустимое время запроса в секундах. Если запрос отрабатывается дольше указанного времени, то его выполнение прерывается. Аргументы:
Возвращаемое значение: объект, содержащий информацию о HTTP-запросе.
url(url string) RequestНазначение: задаёт URL запроса. Аргументы:
Возвращаемое значение: объект, содержащий информацию о HTTP-запросе.
method(method string) RequestНазначение: задаёт HTTP-метод запроса. Аргументы:
Возвращаемое значение: объект, содержащий информацию о HTTP-запросе.
body(body any) RequestНазначение: задаёт тело запроса. Аргументы:
Возвращаемое значение: объект, содержащий информацию о HTTP запросе.
header(header string, value string) RequestНазначение: добавляет HTTP заголовок. Аргументы:
Возвращаемое значение: объект, содержащий информацию о HTTP запросе.
headers(headers Map) RequestНазначение: задаёт HTTP-заголовки. Аргументы:
Возвращаемое значение: объект, содержащий информацию о HTTP-запросе.
file(fileId string, name string = "") RequestНазначение: добавляет файл для отправки по HTTP. Аргументы:
Возвращаемое значение: объект, содержащий информацию о HTTP-запросе.
send() ResponseНазначение: отправляет сформированный запрос. Возвращаемое значение: объект ответа сервера.
Объект ResponsestatusCode intНазначение: код статуса ответа.
body anyНазначение: тело ответа.
headers MapНазначение: заголовки ответа.
error stringНазначение: значение элемента error тела ответа или пустая строка, если такого элемента нет.
isError() boolНазначение: определение успешности ответа. Возвращаемое значение: возвращает true, если свойство error не пустое или код статуса больше или равен 400, иначе возвращает false.
isSuccessful() boolНазначение: определение успешности ответа. Возвращаемое значение: возвращает true, если свойство error пустое и код статуса меньше 400, иначе возвращает false.
hasHeader(header string) boolНазначение: определение наличия заголовка. Аргументы:
Возвращаемое значение: true, если заголовок с указанным именем существует, и false в противном случае.
header(header string) stringНазначение: получение значения заголовка. Аргументы:
Возвращаемое значение: значение заголовка с указанным именем или пустую строку, если такого заголовка нет.
toFile() stringНазначение: получение файла из HTTP-ответа. Возвращаемое значение: идентификатор загруженного файла.
Системные функцииsys.sleep(microseconds int)Назначение: останавливает работу бота на указанное количество микросекунд. Если количество микросекунд превышает 1 минуту, то пауза будет уменьшена до 1 минуты. Аргументы:
Возвращаемое значение: отсутствует.
Функции для работы с GPT-3gpt3.ask(text string) stringНазначение: отправляет сообщение в нейросеть ChatGPT3 и возвращает её ответ. Аргументы:
Возвращаемое значение: ответ нейросети в виде строки.
Объект FactQueryИспользуя методы этого объекты, вы можете выполнять и строить разнообразные запросы к базе фактов. База фактов представляет собой список записей. Каждая запись представляет собой единичный факт, состоящий из следующих частей (полей):
select(fields string|Collection) FactQueryНазначение: задаёт список полей из базы фактов, значения которых следует вернуть в результате запроса. Если метод select не вызывался, то будут возвращены поля context, name и value. Аргументы:
Возвращаемое значение: тот же объект FactQuery.
where(field string, operator string, value mixed) FactQueryНазначение: задаёт условие поиска фактов. Несколько методов where объединяются по принципу логического "И". Т.е. все условия должны быть выполнены. Метод where равносилен методу andWhere(field, operator, value). Аргументы:
Возвращаемое значение: тот же объект FactQuery. Список доступных операций:
andWhere(field string, operator string, value mixed) FactQueryЭквивалентен where(field, operator, value). orWhere(field string, operator string, value mixed) FactQueryАналогичен where с той лишь разницей, что несколько вызовов этого метода объединяются по принципу логического "ИЛИ" (т.е. должно выполняться хотя бы одно условие). where(cond FactQueryCondition) FactQueryНазначение: задаёт сложное (вложенное) условие. Несколько вызвов метода объединяются по принципу логического "И". Эквивалентен методу andWhere(cond). Аргументы:
Возвращаемое значение: тот же объект FactQuery.
andWhere(cond FactQueryCondition) FactQueryЭквивалентен where(cond). orWhere(cond FactQueryCondition) FactQueryАналогичен where(cond), с той лишь разницей, что несколько вызовов этого метода объединяются по принципу логического "ИЛИ", т.е. должно выполняться хотя бы одно условие. sortBy(fields string|Collection) FactQueryНазначение: задаёт сортирову фактов по указанным полям. Аргументы:
Возвращаемое значение: тот же объект FactQuery.
limit(limit int) FactQueryНазначение: ставит ограничение на максимальное количество извлекаемых фактов. Аргументы:
Возвращаемое значение: тот же объект FactQuery.
skip(count int) FactQueryНазначение: задаёт количество фактов которые следует пропустить при поиске. Аргументы:
Возвращаемое значение: тот же объект FactQuery.
one() mixedНазначение: возвращает первое указанное через select поле первого найденного факта. Аргументы: отсутствуют. Возвращаемое значение: значение поля.
column() ListНазначение: возвращает список, состоящий из всех значений первого выбранного поля найденных фактов. Аргументы: отсутствуют. Возвращаемое значение: список значений поля.
row() MapНазначение: возвращает все выбранные поля в виде ассоциативного массива для первого найденного факта. Аргументы: отсутствуют. Возвращаемое значение: значения всех полей первого факта.
rows() List<Map>Назначение: возвращает список всех найденных фактов. Каждый факт возвращается как ассоциативный массив, ключами которого являются поля факта, а значениями – значения полей. Аргументы: отсутствуют. Возвращаемое значение: значения всех полей всех фактов.
Объект FactQueryConditionИспользуйте методы этого объекта, чтобы строить сложные вложенные условия к базе фактов. where(field string, operator string, value mixed) FactQueryConditionАналогичен методу where(field string, operator string, value mixed) объекта FactQuery. andWhere(field string, operator string, value mixed) FactQueryConditionАналогичен методу andWhere(field string, operator string, value mixed) объекта FactQuery. orWhere(field string, operator string, value mixed) FactQueryConditionАналогичен методу orWhere(field string, operator string, value mixed) объекта FactQuery. and(field string, operator string, value mixed) FactQueryConditionАналогичен методу andWhere(field string, operator string, value mixed) объекта FactQuery. or(field string, operator string, value mixed) FactQueryConditionАналогичен методу orWhere(field string, operator string, value mixed) объекта FactQuery. where(cond FactQueryCondition) FactQueryConditionАналогичен методу where(cond FactQueryCondition) объекта FactQuery. andWhere(cond FactQueryCondition) FactQueryConditionАналогичен методу andWhere(cond FactQueryCondition) объекта FactQuery. orWhere(cond FactQueryCondition) FactQueryConditionАналогичен методу orWhere(cond FactQueryCondition) объекта FactQuery. and(cond FactQueryCondition) FactQueryConditionАналогичен методу andWhere(cond FactQueryCondition) объекта FactQuery. or(cond FactQueryCondition) FactQueryConditionАналогичен методу orWhere(cond FactQueryCondition) объекта FactQuery. Объект UserMessagemessage stringНазначение: оригинальный текст сообщения.
attachments List<string>Назначение: список идентификаторов файлов, приложенных к сообщению.
isEmpty() boolНазначение: определяет пустое ли сообщение. Аргументы: отсутствуют. Возвращаемое значение: true, если сообщение пустое, и false в противном случае.
hasAttachments() boolНазначение: определяет, есть ли вложения в данном сообщении. Аргументы: отсутствуют. Возвращаемое значение: true, если сообщение имеет вложения, и false в противном случае.
Объект Sentenceintent stringНазначение: распознанное намерение.
intentConfidence numberНазначение: степень достоверности распознанного намерения (1 – однозначное распознавание, 0 – намерение фактически нераспознанно).
entities List<Tuple>Назначение: список распознанных сущностей. Каждый элемент списка содержит кортеж из трёх элементов: тип сущности (string), значение сущности (строка), достоверность распознавания сущности (number).
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
On this page:
General functionsdel(varName string)Purpose: deletion of a local or module variable. Arguments:
Returned value: none.
Math functionsmath.pos(num mixed) numberPurpose: converts the argument to a number. The function acts as quivalent to the unary "+" operator. Arguments:
Returned value: number.
math.neg(num number) numberPurpose: changes the sign of a number. The function acts as quivalent to the unary operation "-". Arguments:
Returned value: the same number with the opposite sign.
math.inv(num number) numberPurpose: bit number inversion. This function is equivalent to the unary operator "~". Arguments:
Returned value: inverted number.
math.not(num number) boolPurpose: logical negation of a number. This function is equivalent to the unary operation "!". Arguments:
Returned value: true if num is not equal to 0; otherwise false.
math.add(num1 number, num2 number, precision int = 12) numberPurpose: addition of numbers. This function is equivalent to the binary operation "+". Arguments:
Returned value: sum of numbers.
math.sub(num1 number, num2 number, precision int = 12) numberPurpose: difference of numbers. This function is equivalent to the binary operation "-". Arguments:
Returned value: difference of numbers.
math.mul(num1 number, num2 number, precision int = 12) numberPurpose: multiplication. This function is equivalent to the binary operation "*". Arguments:
Returned value: multiplication.
math.div(num1 number, num2 number, precision int = 12) numberPurpose: quotient of numbers. Equivalent to the binary operation "/". Arguments:
Returned value: quotient of numbers.
math.idiv(num1 number, num2 number) intPurpose: integer division of numbers. This function is equivalent to the binary operation "\". Arguments:
Returned value: integer part of private numbers.
math.mod(num1 number, num2 number, precision int = 12) numberPurpose: remainder after dividing two numbers. This function is equivalent to the binary operation "%". Arguments:
Returned value: remainder of the division.
math.pow(base number, power number, precision int = 12) numberPurpose: raising the number base to the power power. This function is equivalent to the binary operation "**". Arguments:
Returned value: result of exponentiation.
math.sqrt(num number, precision int = 12) numberPurpose: extracting the square root. Arguments:
Returned value: square root or error if the number is negative.
math.round(num number, precision int) numberPurpose: rounding the number to the required decimal place. Arguments:
Returned value: number rounded with a given precision.
Functions for working with stringsstr.len(str string) intPurpose: determining the length of the string in characters. Arguments:
Returned value: integer is equal to the number of characters in the string.
str.lower(str string) stringPurpose: convertion of string characters to lower case. Arguments:
Returned value: a string with all characters in lowercase.
str.upper(str string) stringPurpose: convertion of string characters to uppercase. Arguments:
Returned value: a string with all characters in uppercase.
str.ucfirst(str string) stringPurpose: convertion of the first character of the string to uppercase. Arguments:
Returned value: string with the first character written in upper case.
str.lcfirst(str string) stringPurpose: convertion of the first character of the string to lowercase. Arguments:
Returned value: string with the first character written in lower case.
str.letter(str string, index int) stringPurpose: retrieve the specified character of the string. Arguments:
Returned value: the string that corresponds to the specified character or the empty string if there is no character at that position.
str.first(str string, index int = 0) stringPurpose: retrieve the specified character of a string starting from the beginning of the string. Arguments:
Returned value: string that corresponds to the specified character or the empty string if there is no character at that position.
str.last(str string, index int = 0) stringPurpose: retrieve the specified character of the string starting from the end of the string. Arguments:
Returned value: строка соответствующая указанному символу, либо пустая строка если символа с такой позицией не существует.
str.concat(str1 string, str2 string) stringPurpose: concatenates two strings into one. Arguments:
Returned value: a new line that cosists of the first line to the right of which the second line is added.
str.sub(str string, offset int, length int = nil) stringPurpose: returns a substring of str starting from the offset character by count and length of character length. Arguments:
Returned value: part of str or the empty string.
str.join(arr Collection, separator string = "") stringPurpose: объединяет элементы коллекции (кортежа, списка или ассоциативного массива) в строку. Arguments:
Returned value: новая строка составленная из всех элементов коллекции отделённых между собой разделителем.
str.split(str string, separator string = "", limit int = 0) ListPurpose: разбивает строку на части использую separator в качестве разделителя. Arguments:
Returned value: список подстрок на которые была разбита строка.
str.replace(str string, search string, replace string) stringPurpose: ищет все вхождения подстроки в строке и заменяет их на заданное значение. Arguments:
Returned value: новая строка в которой все search заменены на replace.
str.match(str string, pattern string) boolPurpose: выполняет проверку данной строки регулярному выражению. Arguments:
Returned value: возвращает true, если строка соответствует регулярному выражению и false в противном случае. Примечание: в качестве регулярных выражений используется Perl совместимые регулярные выражения (PCRE). Ссылка на документацию и примеры регулярных выражений: PCRE Doc. Онлайн редактор регулярных выражений: http://myregexp.com/
str.distance(str1 string, str2 string) numberPurpose: вычисляет степень сходства двух строк. Arguments:
Returned value: возвращает число от 0 до 1 включительно определяющее степень сходства двух строк. 1 – строки эквивалентны, 0 – строки абсолютно разные. Примечание: функция фактически вычисляет расстояние Дамерау-Левенштейна.
Функции хэшированияhash.of(text string, algo string = "md5", binary bool = false) stringPurpose: вычисляет хэш строки согласно указанному алгоритму. Arguments:
Returned value: возвращает строку содержащую вычисленный хеш-код в шестнадцатеричной кодировке в нижнем регистре. Если binary задан как true, то возвращается хеш-код в виде бинарных данных. В случае ошибки (например, если указан недопустимый алгоритм хэширования) возвращает пустую строку. Допустимые значения алгоритмов хэширования:
Примечание: если третий параметр true, то передавать возвращаемое функцией значение в качества сообщения бота или его части нельзя. Это приведёт к падению бота.
Функции кодирования/декодированияcodec.base64Encode(str string) stringPurpose: кодирует заданную строку в base64. Arguments:
Returned value: возвращает строку закодированную в base64.
codec.base64Decode(str string) ?stringPurpose: декодирует заданную в base64 строку. Arguments:
Returned value: возвращает раскодированную строку либо nil, если закодированная строка содержит символы не входящие в алфавит символов base64 кодировки.
Функции для работы с датой и временемdt.add(d1 int|string, d2 int|string) stringPurpose: складывает две даты, заданные в виде строки либо как число секунд.
Arguments:
Returned value: возвращает новую дату и время в виде строки.
dt.sub(d1 int|string, d2 int|string) int|stringPurpose: вычисляет разность двух дат, заданных в виде строк либо количеством секунд.
Arguments:
Returned value: возвращает новую дату и время в виде строки либо число секунд – разность дат.
dt.format(dt int|string, format string) stringPurpose: форматирует дату согласно заданному формату. Arguments:
Returned value: строка даты в заданном формате. Допустимые параметры форматирования:
Примечание: если строка формата содержит символы совпадающие с вышеперечисленными, но не являющиеся параметрами форматирования, то их следует экранировать с помощью символа обратного слэша "\".
date.nearFuture(day int) stringPurpose: возвращает ближайшую будущую к текущей дату по заданному дню. Arguments:
Returned value: возвращает ближайшую к day дату.
date.nearPast(day int) stringPurpose: возвращает ближайшую прошлую к текущей дату по заданному дню. Аргументы:
Returned value: возвращает ближайшую к day дату.
date.future(day int) stringPurpose: возвращает дату соответствующую указанному дню в следующем месяце. Arguments:
Returned value: дата в будущем.
date.past(day int) stringPurpose: возвращает дату соответствующую указанному дню в прошлом месяце. Аргументы:
Returned value: дата в прошлом.
time.nearFuture(minute int) stringPurpose: возвращает ближайшее будущее к текущему время по заданному количеству минут. Arguments:
Returned value: возвращает ближайшее к minute время.
time.nearPast(minute int) stringPurpose: возвращает ближайшее прошлое к текущему время по заданному количеству минут. Arguments:
Returned value: возвращает ближайшее к minute время.
time.future(minute int) stringPurpose: возвращает время соответствующее указанному числу минут в следующем часе. Arguments:
Returned value: время в будущем.
time.past(minute int) stringPurpose: возвращает время соответствующее указанному числу минут в прошедшем часе. Arguments:
Returned value: время в прошлом.
Функции по работе с очередью сообщений пользователяqueue.size() intPurpose: определение размера очереди сообщений пользователя. Arguments: отсутствуют. Returned value: число сообщений пользователя.
queue.last() ?UserMessagePurpose: возвращает последнее сообщение пользователя либо nil, если очередь сообщений пуста. Arguments: отсутствуют. Returned value: объект UserMessage или nil.
queue.first() ?UserMessagePurpose: возвращает первое сообщение пользователя либо nil, если очередь сообщений пуста. Arguments: отсутствуют. Returned value: объект UserMessage или nil.
queue.nth(index int) ?UserMessagePurpose: возвращает сообщение пользователя по его порядковому номеру, начиная с 1. Arguments:
Returned value: объект UserMessage или nil.
queue.lastNth(index int) ?UserMessagePurpose: возвращает сообщение пользователя по его порядковому номеру считая с конца очереди. Последнее сообщение соответствует порядковому номеру 1. Arguments:
Returned value: объект UserMessage или nil.
Функции для работы с фактамиfact.save(context string, factName string, factValue mixed, botId string = nil, clientId string = nil)Purpose: сохраняет факт в базе фактов. Arguments:
Returned value: отсутствует.
fact.load(context string, factName string, botId string = nil, clientId string = nil) mixedPurpose: извлекает факт из базы фактов. Arguments:
Returned value: содержимое факта.
fact.delete(context string, factName string, botId string = nil, clientId string = nil)Purpose: удаляет факт из базы фактов. Arguments:
Returned value: отсутствует.
fact.query() FactQueryPurpose: возвращает экземпляр FactQuery для построения и выполнения запросов к базе фактов. Arguments: отсутствуют. Returned value: объект FactQuery.
fact.cond() FactQueryConditionPurpose: возвращает экземпляр FactQueryCondition для построения составных условий в запросах к базе фактов. Arguments: отсутствуют. Returned value: объект FactQueryCondition.
Функции для работы с таймеромtimer.start(time int, nodeId string) stringPurpose: запускает таймер обратного отсчёта. По истечении указанного времени бот осуществит переход на указанный узел (блок). Arguments:
Returned value: идентификатор таймера.
timer.stop(timerId string)Purpose: останавливает (удаляет) таймер обратного отсчёта. Arguments:
Returned value: отсутствует.
Функции для работы с текстом на естественном языке (NLP)nlp.parse(message string|UserMessage) SentencePurpose: парсит текст на естественном языке. Arguments:
Returned value: объект Sentence содержащий информацию о всех намерениях и сущностях исходного сообщения. Примечание: данная функция извлекает из текста только сущности. Для работы с намерениями используйте функцию nlu.parse
nlp.join(message1 string|UserMessage, message2 string|UserMessage) SentencePurpose: объединяет два текста на естественном языке в одно и затем парсит его. Arguments:
Returned value: объект Sentence содержащий информацию о всех намерениях и сущностях объединённого сообщения.
nlp.setPerception($sentence Sentence)Purpose: позволяет установить сообщение пользователя для обработки в других узлах (блоках) схемы бота. Arguments:
Returned value: отсутствует.
Функции для "понимания" естественного языка.nlu.parse(text string, agentId string, timezoneOffset int = 0, version int = 1) SentencePurpose: разбор текста на естественном языке. Выявление намерений и сущностей. Arguments:
Returned value: объект Sentence.
Функции для работы с HTTPhttp.sendRequest(url string, method string, body any = nil, headers Map = nil) ResponsePurpose: отправляет HTTP запрос на указанный URL. Arguments:
Returned value: объект HTTP ответа.
http.request(url string = "", method string = "POST", body any = nil) RequestPurpose: формирует новый объект HTTP запроса. Arguments:
Returned value: объект содержащий информацию о HTTP запросе.
Объект Requesttimeout(timeout int) RequestPurpose: задаёт максимально допустимое время запроса в секундах. Если запрос отрабатывает дольше указанного времени, то его выполнение прерывается. Arguments:
Returned value: объект содержащий информацию о HTTP запросе.
url(url string) RequestPurpose: задаёт URL запроса. Arguments:
Returned value: объект содержащий информацию о HTTP запросе.
method(method string) RequestPurpose: задаёт HTTP метод запроса. Arguments:
Returned value: объект содержащий информацию о HTTP запросе.
body(body any) RequestPurpose: задаёт тело запроса. Arguments:
Returned value: объект содержащий информацию о HTTP запросе.
header(header string, value string) RequestPurpose: добавляет HTTP заголовок. Arguments:
Returned value: объект содержащий информацию о HTTP запросе.
headers(headers Map) RequestPurpose: задаёт HTTP заголовки. Arguments:
Returned value: объект содержащий информацию о HTTP запросе.
file(fileId string, name string = "") RequestPurpose: добавляет файл для отправки по HTTP. Arguments:
Returned value: объект содержащий информацию о HTTP запросе.
send() ResponsePurpose: отправляет сформированный запрос. Returned value: объект ответа сервера.
Объект ResponsestatusCode intPurpose: код статуса ответа.
body anyPurpose: тело ответа.
headers MapPurpose: заголовки ответа.
error stringPurpose: значение элемента error тела ответа или пустая строка, если такого элемента нет.
isError() boolPurpose: определение успешности ответа. Returned value: возвращает true, если свойство error не пустое или код статуса больше или равен 400, иначе возвращает false.
isSuccessful() boolPurpose: определение успешности ответа. Returned value: возвращает true, если свойство error пустое и код статуса меньше 400, иначе возвращает false.
hasHeader(header string) boolPurpose: определение наличия заголовка. Arguments:
Returned value: true, если заголовок с указанным именем существует и false в противном случае.
header(header string) stringPurpose: получение значения заголовка. Arguments:
Returned value: значение заголовка с указанным именем или пустую строку, если такого заголовка нет.
toFile() stringPurpose: получение файла из HTTP ответа. Returned value: идентификатор загруженного файла.
Системные функцииsys.sleep(microseconds int)Purpose: останавливает работу бота на указанное количество микросекунд. Если количество микросекунд превышает 1 минуту, то пауза будет уменьшена до 1 минуты. Arguments:
Returned value: отсутствует.
Функции для работы с GPT-3gpt3.ask(text string) stringPurpose: отправляет сообщение в нейросеть ChatGPT3 и возвращает её ответ. Arguments:
Returned value: ответ нейросети в виде строки.
Объект FactQueryИспользуя методы этого объекты вы можете выполнять и строить разнообразные запросы к базе фактов. База фактов представляет собой список записей. Каждая запись представляет собой единичный факт состоящий из следующих частей (полей):
select(fields string|Collection) FactQueryPurpose: задаёт список полей из базы фактов значения которых следует вернуть в результате запроса. Если метод select не вызыался, то будут возвращены поля context,name и value. Arguments:
Returned value: тот же объект FactQuery.
where(field string, operator string, value mixed) FactQueryPurpose: задаёт условие поиска фактов. Несколько методов where объединяются по принципу логического "И", т.е. все условия должны быть выполнены. Метод where равносилен методу andWhere(field, operator, value). Arguments:
Returned value: тот же объект FactQuery. Список доступных операций:
andWhere(field string, operator string, value mixed) FactQueryЭквивалентен where(field, operator, value). orWhere(field string, operator string, value mixed) FactQueryАналогичен where, с той лишь разницей, что несколько вызовов этого метода объединяются по принципу логического "ИЛИ", т.е. должно выполняться хотя бы одно условие. where(cond FactQueryCondition) FactQueryPurpose: задаёт сложное (вложенное) условие. Несколько вызвов метода объединяются по принципу логического "И". Эквивалентен методу andWhere(cond). Arguments:
Returned value: тот же объект FactQuery.
andWhere(cond FactQueryCondition) FactQueryЭквивалентен where(cond) orWhere(cond FactQueryCondition) FactQueryАналогичен where(cond), с той лишь разницей, что несколько вызовов этого метода объединяются по принципу логического "ИЛИ", т.е. должно выполняться хотя бы одно условие. sortBy(fields string|Collection) FactQueryPurpose: задаёт сортирову фактов по указанным полям. Arguments:
Returned value: тот же объект FactQuery.
limit(limit int) FactQueryPurpose: ставит ограничение на максимальное количество извлекаемых фактов. Arguments:
Returned value: тот же объект FactQuery.
skip(count int) FactQueryPurpose: задаёт количество фактов которые следует пропустить при поиске. Arguments:
Returned value: тот же объект FactQuery.
one() mixedPurpose: возвращает первое указанное через select поле первого найденного факта. Arguments: отсутствуют. Returned value: значение поля.
column() ListPurpose: возвращает список состоящий из всех значений первого выбранного поля найденных фактов. Arguments: отсутствуют. Returned value: список значений поля.
row() MapPurpose: возвращает все выбранные поля в виде ассоциативного массива для первого найденного факта. Arguments: отсутствуют. Returned value: значения всех полей первого факта.
rows() List<Map>Purpose: возвращает список всех найденных фактов. Каждый факт возвращается как ассоциативный массив ключами которого являются поля факта, а значениями - значения полей. Arguments: отсутствуют. Returned value: значения всех полей всех фактов.
Объект FactQueryConditionИспользуйте методы этого объекта чтобы строить сложные вложенные условия к базе фактам. where(field string, operator string, value mixed) FactQueryConditionАналогичен методу where(field string, operator string, value mixed) объекта FactQuery. andWhere(field string, operator string, value mixed) FactQueryConditionАналогичен методу andWhere(field string, operator string, value mixed) объекта FactQuery. orWhere(field string, operator string, value mixed) FactQueryConditionАналогичен методу orWhere(field string, operator string, value mixed) объекта FactQuery. and(field string, operator string, value mixed) FactQueryConditionАналогичен методу andWhere(field string, operator string, value mixed) объекта FactQuery. or(field string, operator string, value mixed) FactQueryConditionАналогичен методу orWhere(field string, operator string, value mixed) объекта FactQuery. where(cond FactQueryCondition) FactQueryConditionАналогичен методу where(cond FactQueryCondition) объекта FactQuery. andWhere(cond FactQueryCondition) FactQueryConditionАналогичен методу andWhere(cond FactQueryCondition) объекта FactQuery. orWhere(cond FactQueryCondition) FactQueryConditionАналогичен методу orWhere(cond FactQueryCondition) объекта FactQuery. and(cond FactQueryCondition) FactQueryConditionАналогичен методу andWhere(cond FactQueryCondition) объекта FactQuery. or(cond FactQueryCondition) FactQueryConditionАналогичен методу orWhere(cond FactQueryCondition) объекта FactQuery. Объект UserMessagemessage stringPurpose: оригинальный текст сообщения.
attachments List<string>Purpose: список идентификаторов файлов приложенных к сообщению.
isEmpty() boolPurpose: определяет пустое ли сообщение. Arguments: отсутствуют. Returned value: true, если сообщение пустое и false в противном случае.
hasAttachments() boolPurpose: определяет есть ли вложения в данном сообщении. Arguments: отсутствуют. Returned value: true, если сообщение имеет вложения и false в противном случае.
Объект Sentenceintent stringPurpose: распознанное намерение.
intentConfidence numberPurpose: степень достоверности распознанного намерения (1 – однозначное распознавание, 0 – намерение фактически нераспознанно).
entities List<Tuple>Purpose: список распознанных сущностей. Каждый элемент списка содержит кортеж из трёх элементов: тип сущности (string), значение сущности (строка), достоверность распознавания сущности (number).
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||