| CSS Stylesheet |
|---|
.top-button {
background-image: url(https://confluence.twin24.ai/download/thumbnails/23986188/baseline_keyboard_arrow_up_white_18dp.png) !important;
background-position: center;
background-color: #47a7f5 !important;
background-repeat: no-repeat;
box-shadow: -1px 1.5px 3px #999;
color: #47a7f5 !important;
border-radius:50px !important;
position: fixed;
bottom: 45px;
left: 93.5%;
width: 50px;
height: 50px !important;
font-size: 12px !important;
padding: 14.5px !important;
z-index: 2;
}
.top-button:hover{
background-color: #65b9ff !important;
color: #65b9ff !important;
}
.page-header{
background-color: #232838;
background-repeat: no-repeat;
background-position: center;
width: auto;
height: 100px;
background-image: url(https://confluence.twin24.ai/download/attachments/23986188/logo_twin-02.png);
background-size: 10em;
color: #fff;
font-size: 20px;
padding: 20px;
}
.page-footer{
background-color: #232838;
background-image: url(https://confluence.twin24.ai/download/thumbnails/23986188/decorated-pattern-dark.png);
width: auto;
height: 10px;
color: #fff;
text-align: end;
font: small-caption;
padding-inline-end: 30px;
padding-top: 200px;
padding-bottom: 30px;
}
.page-headline{
background-image: url(https://confluence.twin24.ai/download/thumbnails/23986188/Solid256dot8_2changed.png);
background-repeat: no-repeat;
background-position-x: -227px;
background-position-y: center;
padding: 20px;
background-color: #007bff;
width: auto;
height: 10px;
color: #fff;
text-align: center;
font: caption;
font-weight: 600;
}
.tabs-menu{
padding-left: 85% !important;
} |
На этой странице:
| Предупреждение |
|---|
| BPL-операции работают только в чатах и во входящих звонках. Для тестирования сценариев, использующих BPL-операции, используйте чат в виджете. Как создать тестовый виджет: Создание тестового виджета |
Функции общего назначенияdel(varName string)Назначение: удаление локальной или модульной переменной. Аргументы: - varName – название переменной в виде строки. Может начинаться с префикса области видимости переменной. Если префикс опущен то считается, что переменная локальная.
Возвращаемое значение: отсутствует. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $localVar = 123
#moduleVar = true
del("$localVar") // Удаляет локальную переменную $localVar
del("localVar") // Тоже самое что и del("$localVar")
del("#moduleVar") // Удаляет переменную с областью видимости в пределах модуля |
Математические функцииmath.pos(num mixed) numberНазначение: фактически преобразует аргумент к числу. Эквивалент унарной операции "+". Аргументы: - num – – произвольное значение, которое будет преобразовано к числу.
Возвращаемое значение: число. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $a = math.pos(true) // $a будет равно 1
$a = math.pos(false) // $a будет равно 0
$a = math.pos(nil) // $a будет равно 0
$a = +true // $a будет равно 1, то же, что и math.pos(true) |
math.neg(num number) numberНазначение: меняет знак числа. Эквивалент унарной операции "-". Аргументы: - num – произвольное число, у кторого которого изменится знак на противоположный.
Возвращаемое значение: число со знаком обратному исходному. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $a = math.neg(-1) // $a будет равно 1
$a = math.neg(1) // $a будет равно -1
$a = math.neg(0) // $a будет равно 0
$a = -(-10) // $a будет равно 10, то же, что и math.neg(-10) |
math.inv(num number) numberНазначение: инверсия бит числа. Эквивалент унарной операции "~". Аргументы: - num – произвольное число, у кторого инвертируем которого инвертируются биты.
Возвращаемое значение: инвертированное число. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $a = math.inv(5) // $a равно 3
$a = ~5 // то же, что и предыдущая строка |
math.not(num number) boolНазначение: логическое отрицание числа. Эквивалент унарной операции "!". Аргументы: - num – произвольное число.
Возвращаемое значение: true true, если num не равно 0 и false в противном случае. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $a = math.not(5) // $a равно false
$a = math.not(0) // $a равно true
$a = !0 // то же, что и предыдущая строка |
math.add(num1 number, num2 number, precision int = 12) numberНазначение: сложение чисел. Эквивалент бинарной операции "+". Аргументы: - num1 – первое слагаемое.
- num2 – второе слагаемое.
- precision – точность вычислений, количество цифр после запятой. Значение по умолчанию 12, масимальное - максимальное – 100.
Возвращаемое значение: сумма чисел. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $a = math.add(1.5, 3.5) // $a равно 5
$a = 1.5 + 3.5 // то же, что и предыдущая строка
$a = math.add(1.000006, 2.1, 5) // $a равно 3.10001 |
math.sub(num1 number, num2 number, precision int = 12) numberНазначение: разность чисел. Эквивалент бинарной операции "-". Аргументы: - num1 – уменьшаемое.
- num2 – вычитаемое.
- precision – точность вычислений, количество цифр после запятой. Значение по умолчанию 12, масимальное максимальное – 100.
Возвращаемое значение: разность чисел. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $a = math.sub(1.5, 3.5) // $a равно -2
$a = 1.5 - 3.5 // то же, что и предыдущая строка
$a = math.sub(2.100006, 1.1, 5) // $a равно 1.00001 |
math.mul(num1 number, num2 number, precision int = 12) numberНазначение: произведение чисел. Эквивалент бинарной операции "*". Аргументы: - num1 – первый множитель.
- num2 – второй множитель.
- precision – точность вычислений, количество цифр после запятой. Значение по умолчанию 12, масимальное - максимальное – 100.
Возвращаемое значение: произведение чисел. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| linenumbers | true |
|---|
| $a = math.mul(1.5, 3.5) // $a равно 5.25
$a = 1.5 * 3.5 // то же, что и предыдущая строка
$a = math.mul(1.2345, 1.234, 5) // $a равно 1.52337 |
math.div(num1 number, num2 number, precision int = 12) numberНазначение: частное чисел. Эквивалент бинарной операции "/". Аргументы: - num1 – делимое.
- num2 – делитель.
- precision – точность вычислений, количество цифр после запятой. Значение по умолчанию 12, масимальное - максимальное – 100.
Возвращаемое значение: частное чисел. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $a = math.div(1.5, 3.5) // $a равно 0.428571428571
$a = 1.5 / 3.5 // то же, что и предыдущая строка
$a = math.div(1, 3, 5) // $a равно 0.33333 |
math.idiv(num1 number, num2 number) intНазначение: целочисленное деление чисел. Эквивалент бинарной операции "\". Аргументы: - num1 – делимое.
- num2 – делитель.
Возвращаемое значение: целая часть частного чисел. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $a = math.idiv(2.5, 0.3) // $a равно 8
$a = 2.5 \ 0.3 // то же, что и предыдущая строка |
math.mod(num1 number, num2 number, precision int = 12) numberНазначение: остаток от деления двух чисел. Эквивалент бинарной операции "%". Аргументы: - num1 – делимое.
- num2 – делитель.
- precision – точность вычислений, количество цифр после запятой. Значение по умолчанию 12, масимальное - максимальное – 100.
Возвращаемое значение: остаток от деления. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $a = math.mod(3.5, 1.5) // $a равно 0.5
$a = 3.5 % 1.5 // то же, что и предыдущая строка
$a = math.mod(1/3, 2/7, 5) // $a равно 0.04762 |
math.pow(base number, power number, precision int = 12) numberНазначение: возведение числа base в степень power. Эквивалент бинарной операции "**". Аргументы: - base – основание.
- power – степень.
- precision – точность вычислений, количество цифр после запятой. Значение по умолчанию 12, масимальное - максимальное – 100.
Возвращаемое значение: результат возведения в степень. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $a = math.pow(1.5, 3.5) // $a равно 4.133513940947
$a = 1.5 ** 3.5 // то же, что и предыдущая строка
$a = math.pow(1.3, 7.1, 5) // $a равно 0.44166 |
math.sqrt(num number, precision int = 12) numberНазначение: извлечение квадратного корня. Аргументы: - num – число, из которого извлекается корень.
- precision – точность вычислений, количество цифр после запятой. Значение по умолчанию 12, масимальное - максимальное – 100.
Возвращаемое значение: квадратный корень либо ошибка, если число отрицательное. | Блок кода |
|---|
| language | py |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $a = math.sqrt(3.14) // $a равно 1.772004514667
$a = math.sqrt(1.7, 5) // $a равно 0.30384 |
math.round(num number, precision int) numberНазначение: округление числа до требуемого знака после запятой. Аргументы: - num – число для округления.
- precision – точность округления, количество цифр после запятой. Масимальное Максимальное значение - – 100.
Возвращаемое значение: округлённое с заданной точностью число. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $a = math.round(3.14159265358979323846264338327950288419716, 17) // $a равно 3.14159265358979324
$a = math.round(3.14159265358979323846264338327950288419716, 2) // $a равно 3.14
$a = math.round(3.14159265358979323846264338327950288419716, 0) // $a равно 3 |
Функции для работы со строкамиstr.len(str string) intНазначение: определение длины строки в символах. Аргументы: - str – строка, длину которой необходимо определить.
Возвращаемое значение: целое число, равное количеству символов в строке. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $str = "Какая-то строка"
$len = str.len($str) // $len будет содержать 15 |
str.lower(str string) stringНазначение: преобразовапние символов строки в нижний регистр. Аргументы: - str – строка, которую необходимо преобразовать.
Возвращаемое значение: строка, все символы которой находятся в нижнем регистре. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $str = "СтРоКа"
$lower = str.lower($str) // $lower будет содержать "строка" |
str.upper(str string) stringНазначение: преобразование символов строки в верхний регистр. Аргументы: - str – строка, которую необходимо преобразовать.
Возвращаемое значение: строка, все символы которой находятся в верхнем регистре. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $str = "СтРоКа"
$upper = str.upper($str) // $lower будет содержать "СТРОКА" |
str.ucfirst(str string) stringНазначение: преобразование первого символа строки в верхний регистр. Аргументы: - str – строка, первый символ которой необходимо преобразовать.
Возвращаемое значение: строка, в которой первый символ записан в верхнем регистре. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $str = str.ucfirst("строка") // $str будет содержать "Строка" |
str.lcfirst(str string) stringНазначение: преобразование первого символа строки в нижний регистр. Аргументы: - str – строка, первый символ которой необходимо преобразовать.
Возвращаемое значение: строка, в которой первый символ записан в нижнем регистре. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $str = str.ucfirst("Строка") // $str будет содержать "строка" |
str.letter(str string, index int) stringНазначение: получение указанного символа строки. Аргументы: - str – строка, символ которой требуется получить.
- index – целое число, определяющее позицию символа в строке, начиная с 0. Если это число отрицательное, то отсчёт начинается с конца строки.
Возвращаемое значение: строка, соответствующая указанному символу, либо пустая строка, если символа с такой позицией не существует. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $str = "Слово"
$firstLetter = str.letter($str, 0) // Первая буква
$lastLetter = str.letter($str, -1) // Последняя буква |
str.first(str string, index int = 0) stringНазначение: получение указанного символа строки, начиная с начала строки. Аргументы: - str – строка, символ которой требуется получить.
- index – целое число, определяющее позицию символа с начала строки, начиная с 0. При этом знак числа игнорируется. Значение по умолчанию – 0 (первый символ).
Возвращаемое значение: строка, соответствующая указанному символу, либо пустая строка, если символа с такой позицией не существует. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $str = "Слово"
$firstLetter = str.first($str) // Первая буква
$secondLetter = str.first($str, 1) // Вторая буква |
str.last(str string, index int = 0) stringНазначение: получение указанного символа строки, начиная с конца строки. Аргументы: - str – строка, символ которой требуется получить.
- index – целое число, определяющее позицию символа с конца строки, начиная с 0. При этом знак числа игнорируется. Значение по умолчанию – 0 (последний символ).
Возвращаемое значение: строка, соответствующая указанному символу, либо пустая строка, если символа с такой позицией не существует. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $str = "Слово"
$lastLetter = str.last($str) // Последняя буква
$penultLetter = str.last($str, 1) // Предпоследняя буква |
str.concat(str1 string, str2 string) stringНазначение: объединяет две строки в одну. Аргументы: - str1 – строка, которая объединяется.
- str2 – строка, с которой объединяются.
Возвращаемое значение: новая строка, состоящая из первой строки, справа от которой добавлена вторая строка. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $str1 = "один"
$str2 = "два"
$str = str.concat($str1, $str2) // $str будет содержать "одиндва" |
str.sub(str string, offset int, length int = nil) stringНазначение: возвращает подстроку строки str, начинающейся с offset символа по счету и длиной length символов. Аргументы: - str – исходная строка.
- offset – если offset неотрицателенесли offset неотрицательный, то возвращаемая подстрока начинается с позиции offset от позиции offset от начала строки, считая от нуля.
Если offset отрицательный, то возвращаемая подстрока начинается с позиции, отстоящей на offset символов от конца строки str. Если str меньше offset символов, то будет возвращена пустая строка. - length – если length положительный, то возвращаемая строка будет не длиннее length символов, начиная с параметра offset (в зависимости от длины string).
Если length отрицательныйЕсли length отрицательный, то будет отброшено указанное этим аргументом число символов с конца строки string строки string (после того как будет вычислена стартовая позиция, если offset отрицателенесли offset отрицательный). Если при этом позиция начала подстроки, определяемая аргументом offsetаргументом offset, находится в отброшенной части строки или за ней, то возвращается пустая строка. Если параметр length задан и равен 0, параметр length задан и равен 0, то будет возвращена пустая строка. Если параметр length опущен или nil, то будет возвращена подстрока, начинающаяся с позиции, указанной параметром offset и длящейся до конца строки.
Возвращаемое значение: часть str или пустая строка. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $sub = str.sub("abcdef", 1) // $sub равен bcdef
$sub = str.sub("abcdef", 1, 3) // $sub равен bcd
$sub = str.sub("abcdef", 0, 4) // $sub равен abcd
$sub = str.sub("abcdef", 0, 8) // $sub равен abcdef
$sub = str.sub("abcdef", -1, 1) // $sub равен f
$sub = str.sub("abcdef", -1) // $sub равен f
$sub = str.sub("abcdef", -2) // $sub равен ef
$sub = str.sub("abcdef", -3, 1) // $sub равен d
$sub = str.sub("abcdef", 0, -1) // $sub равен abcde
$sub = str.sub("abcdef", 2, -1) // $sub равен cde
$sub = str.sub("abcdef", 4, -4) // $sub равен пустой строке
$sub = str.sub("abcdef", -3, -1) // $sub равен de |
str.join(arr Collection, separator string = "") stringНазначение: объединяет элементы коллекции (кортежа, списка или ассоциативного массива) в строку. Аргументы: - arr – коллекция элементов для объединения.
- separator – разделитель элементов коллекции. По умолчанию равен пустой строке.
Возвращаемое значение: новая строка, составленная из всех элементов коллекции отделённых между собой разделителем. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $str = str.join([1, 2, 3, 4, 5], "-") // $str будет содержать "1-2-3-4-5"
$str = str.join(("a", "b", "c")) // $str будет содержать "abc"
$str = str.join({"a": "один", "b": "два"}, " + ") // $str будет содержать "один + два"
$str = str.join(["одно"], "/") // $str будет содержать "одно"
$str = str.join([], "/") // $str будет содержать "" |
str.split(str string, separator string = "", limit int = 0) ListНазначение: разбивает строку на части использую , используя separator в качестве разделителя. Аргументы: - str – строка для разделения.
- separator – разделитель. Если равен пустой строке, то разбиение происходит посимвольно.
- limit – необязательный параметр, равный максимальному количеству частей, на которые будет разбита строка. Если limit равен 0, то без ограничений. Если limit является положительным, возвращаемый список будет содержать максимум limit элементов, при . При этом последний элемент будет содержать остаток строки str. Если limit отрицателенотрицательный, то будут возвращены все компоненты, кроме последних –limit limit.
Возвращаемое значение: список подстрок, на которые была разбита строка. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $letters = str.split("абвгде") // Получили список букв слова
$words = str.split("один два три", " ") // Получили список слов
$words = str.split("один два три", " ", 1) // words содержит ["один", "два три"] |
str.replace(str string, search string, replace string) stringНазначение: ищет все вхождения подстроки в строке и заменяет их на заданное значение. Аргументы: - str – строка для преобразования.
- search – подстрока, которая ищется в исходной строке.
- replace – строка замены.
Возвращаемое значение: новая строка, в которой все search заменены на replace. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $str = str.replace("мама мыла раму", "рам", "Даш") // $str содержит "мама мыла Дашу" |
str.match(str string, pattern string) boolНазначение: выполняет проверку данной строки регулярному выражению. Аргументы: - str – строка для сопоставления с регулярным выражением.
- pattern – шаблон регулярного выражения.
Возвращаемое значение: возвращает true, если строка соответствует регулярному выражению и false –в противном случае. Примечание: в качестве регулярных выражений используется используются Perl совместимые регулярные выражения (PCRE). Ссылка на документацию и примеры регулярных выражений: PCRE Doc. Онлайн редактор регулярных выражений:http://myregexp.com/ | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $isIntNumber = str.match("1.234", "/^[0-9]+$/") // $isIntNumber будет равен false
$isIntNumber = str.match("1234", "/^[0-9]+$/") // $isIntNumber будет равен true |
str.distance(str1 string, str2 string) numberНазначение: вычисляет степень сходства двух строк. Аргументы: - str1 – первая строка для сравнения.
- str2 – вторая строка для сравнения.
Возвращаемое значение: возвращает число от 0 до 1 включительно, определяющее степень сходства двух строк. : 1 – строки эквивалентны, 0 – строки абсолютно разные. Примечание: функция фактически вычисляет расстояние Дамерау–Левенштейна. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $d = str.distance("", "abc") // $d равен 0
$d = str.distance("Да", "да") // $d равен 1
$d = str.distance("корыто", "открыто") // $d равен 0.714
$d = str.distance("Да, верно", "таверна") // $d равен 0.625
$d = str.distance("жутко косые бананы", "жуй кокосы, ешь бананы") // $d равен 0.714
$d = str.distance("сошел с ума от раны", "Пошел он в пусурманы") // $d равен 0.45
$d = str.distance("ёж", "дезоксирибонуклеиновая кислота") // $d равен 0.033 |
Функции хэшированияhash.of(text string, algo string = "md5", binary bool = false) stringНазначение: вычисляет хэш строки согласно указанному алгоритму. Аргументы: - text – произвольная строка для хэширования.
- algo – название алгоритма хэширования. По умолчанию используется алгоритм md5.
- binary – когда установлено в true, выводит необработанные двоичные данные. При false выводит данные в шестнадцатеричной кодировке в нижнем регистре. По умолчания равен false.
Возвращаемое значение:возвращает строку, содержащую вычисленный хеш-код в шестнадцатеричной кодировке в нижнем регистре. Если Если binary задан как true, то возвращается хеш-код в виде бинарных данных. В случае ошибки (например, если указан недопустимый алгоритм хэширования) возвращает пустую строку. Допустимые значения алгоритмов хэширования: - md2
- md4
- md5
- sha1
- sha224
- sha256
- sha384
- sha512/224
- sha512/256
- sha512
- sha3–224
- sha3–256
- sha3–384
- sha3–512
- ripemd128
- ripemd160
- ripemd256
- ripemd320
- whirlpool
- tiger128,3
- tiger160,3
- tiger192,3
- tiger128,4
- tiger160,4
- tiger192,4
- snefru
- snefru256
- gost
- gost–crypto
- adler32
- crc32
- crc32b
- crc32c
- fnv132
- fnv1a32
- fnv164
- fnv1a64
- joaat
- murmur3a
- murmur3c
- murmur3f
- xxh32
- xxh64
- xxh3
- xxh128
- haval128,3
- haval160,3
- haval192,3
- haval224,3
- haval256,3
- haval128,4
- haval160,4
- haval192,4
- haval224,4
- haval256,4
- haval128,5
- haval160,5
- haval192,5
- haval224,5
- haval256,5
Примечание: если третий параметр true, то передавать возвращаемое функцией значение в качества качестве сообщения бота или его части нельзя. Это приведёт к падению бота. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $hash = hash.of("Наглый коричневый лисёнок прыгает вокруг ленивой собаки.") // $hash будет содержать bff8b4bc8b5c1c1d5b3211dfb21d1e76
$hash = hash.of("Наглый коричневый лисёнок прыгает вокруг ленивой собаки.", "ripemd160") // $hash будет содержать 8817ca339f7f902ad3fb456150a1bb9b4cb5dde9
$hash = hash.of("Наглый коричневый лисёнок прыгает вокруг ленивой собаки.", "sha256", true) // $hash будет содержать бинарную строку (содержащую неотображаемые символы) |
Функции кодирования/декодированияcodec.base64Encode(str string) stringНазначение: кодирует заданную строку в base64 Base64. Аргументы: - str – произвольная строка для кодирования.
Возвращаемое значение: возвращает строку, закодированную в base64Base64. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $encoded = codec.base64Encode("Привет!") // $encoded будет содержать строку "0J/RgNC40LLQtdGCIQ==" |
codec.base64Decode(str string) ?stringНазначение: декодирует заданную в base64 Base64 строку. Аргументы: - str – строка, закодированная в base64Base64.
Возвращаемое значение: возвращает раскодированную строку либо nil, если закодированная строка содержит символы, не входящие в алфавит символов base64 Base64 кодировки. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $decoded = codec.base64Decode("0J/RgNC40LLQtdGCIQ==") // $decoded будет содержать строку "Привет!"
$failed = codec.base64Decode("Привет!") // $failed будет равен nil |
Функции для работы с датой и временемdt.add(d1 int|string, d2 int|string) stringНазначение: складывает две даты, заданные в виде строки либо как число секунд. - Если хотя бы один из аргументов функции число секунд, то это число будет прибавлено к числу секунд другой даты.
- Если обе даты заданы строкой, то результат определяется по формуле d1 + abs(secondsOf(d1) - secondsOf(d2)), где abs – модуль числа (положительное значение), secondsOf – это дата, представленная как количество секунд, прошедших с начала 1970 года (даты до этого времени представлены отрицательным значением).
Аргументы: - d1 – строка, представляющая собой дату в одном из допустимых форматов, или целое число, соответствующее количеству секунд.
- d2 – аналогично первому аргументу.
Возвращаемое значение: возвращает новую дату и время в виде строки. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $d = dt.add("2022-01-01 12:30:00", 59) // $d содержит строку "2022-01-01 12:30:59"
$d = dt.add(3600, "2022-01-01 12:30:00") // $d содержит строку "2022-01-01 13:30:00"
$d = dt.add("2022-01-01 00:00:00", "2022-01-02 00:00:00") // $d содержит строку "2022-01-03 00:00:00" |
dt.sub(d1 int|string, d2 int|string) int|stringНазначение: вычисляет разность двух дат, заданных в виде строк либо количеством секунд. - Если обе даты заданы количеством секунд, то функция вернёт их разность в виде числа секунд.
- Если обе даты заданы строкой, то будет возвращено целое число, равное разности между датами в секундах.
- Если первый аргумент задан строкой даты, а второй – числом секунд, то результатом будет новая дата, равная разности даты и числа секунд.
- Если второй аргумент задан строкой даты, а первый числом секунд, то результатом будет ошибка.
Аргументы: - d1 – строка, представляющая собой дату в одном из допустимых форматов, или целое число, соответствующее количеству секунд.
- d2 – аналогично первому аргументу.
Возвращаемое значение: возвращает новую дату и время в виде строки либо число секунд – разность дат. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $d = dt.sub(100, 50) // $d содержит 50
$d = dt.sub("2022-01-01 12:30:00", 3600) // $d содержит строку "2022-01-01 11:30:00"
$d = dt.sub(3600, "2022-01-01 12:30:00") // Такой вызов недопустим и приведёт к остановке программы
$d = dt.sub("2022-01-01 01:00:00", "2022-01-01 00:00:00") // $d содержит 3600 |
Назначение: форматирует дату согласно заданному формату. Аргументы: - dt – дата заданная строкой или числом секунд.
- format – строка определяющая формат даты и времени.
Возвращаемое значение: строка даты в заданном формате. Допустимые параметры форматирования: | Символ в строке format | Описание | Пример возвращаемого значения |
|---|
| Год | | y | Полное числовое представление года, не менее 4 цифр | 1999, 2012, 10208 | | yy | Две последние цифры года c дополнением нулями, если необходимо | 99, 05 | | Месяц | | M | Порядковый номер месяца без ведущего нуля | от 1 до 12 | | MM | Порядковый номер месяца с ведущим нулём | от 01 до 12 | | День | | d | День месяца без ведущего нуля | от 1 до 31 | | dd | День месяца, 2 цифры с ведущим нулём | от 01 до 31 | | Час | | h | Часы в 12-часовом формате без ведущего нуля | от 1 до 12 | | hh | Часы в 12-часовом формате с ведущим нулём | от 01 до 12 | | H | Часы в 24-часовом формате без ведущего нуля | от 0 до 23 | | HH | Часы в 24-часовом формате с ведущим нулём | от 00 до 23 | | Минуты | | m | Минуты без ведущего нуля | от 0 до 59 | | mm | Минуты с ведущим нулём | от 00 до 59 | | Секунды | | s | Секунды без ведущего нуля | от 0 до 59 | | ss | Секунды с ведущим нулём | от 00 до 59 |
Примечание: если строка формата содержит символы, совпадающие с вышеперечисленными, но не являющиеся параметрами форматирования, то их следует экранировать с помощью символа обратного слэша "\". | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $dt = dt.format('2022-12-20 08:34:05', 'y.MM.dd h-mm-ss') // $dt будет содержать строку "22.12.20 8-34-05"
$dt = dt.format('16:30:47', '\Hour\s an\d \minute\s: HH/mm') // $dt будет содержать строку "Hours and minutes: 16/30" |
date.nearFuture(day int) stringНазначение: возвращает ближайшую будущую к текущей дату по заданному дню. Аргументы: - day – число дней для определения ближайшей в будущем даты.
Возвращаемое значение: возвращает ближайшую к day дату. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Допустим сейчас 2022-12-20
$d = date.nearFuture(25) // $d содержит 2022-12-25
$d = date.nearFuture(10) // $d содержит 2023-01-10 |
date.nearPast(day int) stringНазначение: возвращает ближайшую прошлую к текущей дату по заданному дню. Аргументы: - day – число дней для определения ближайшей в прошлом даты.
Возвращаемое значение: возвращает ближайшую к day дату. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Допустим сейчас 2022-12-20
$d = date.nearPast(25) // $d содержит 2022-11-25
$d = date.nearPast(10) // $d содержит 2023-12-10 |
date.future(day int) stringНазначение: возвращает дату, соответствующую указанному дню в следующем месяце. Аргументы: - day – число дней для определения даты в будущем.
Возвращаемое значение: дата в будущем. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Допустим сейчас 2022-12-20
$d = date.future(25) // $d содержит 2023-01-25
$d = date.future(10) // $d содержит 2023-01-10 |
date.past(day int) stringНазначение: возвращает дату, соответствующую указанному дню в прошлом месяце. Аргументы: - day – число дней для определения даты в прошлом.
Возвращаемое значение: дата в прошлом. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Допустим сейчас 2022-12-20
$d = date.past(25) // $d содержит 2022-11-25
$d = date.past(10) // $d содержит 2022-11-10 |
time.nearFuture(minute int) stringНазначение: возвращает ближайшее будущее к текущему время по заданному количеству минут. Аргументы: - minute – число минут для определения ближайшего в будущем времени.
Возвращаемое значение: возвращает ближайшее к minute время. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Допустим сейчас 23:30:00
$t = time.nearFuture(45) // $t содержит 23:45:00
$t = time.nearFuture(15) // $t содержит 00:15:00 |
time.nearPast(minute int) stringНазначение: возвращает ближайшее прошлое к текущему время по заданному количеству минут. Аргументы: - minute – число минут для определения ближайшего в прошлом времени.
Возвращаемое значение: возвращает ближайшее к minute время. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Допустим сейчас 23:30:00
$t = time.nearPast(45) // $t содержит 22:45:00
$t = time.nearPast(15) // $t содержит 23:15:00 |
time.future(minute int) stringНазначение: возвращает время, соответствующее указанному числу минут в следующем часе. Аргументы: - minute – число минут для определения времени в будущем.
Возвращаемое значение: время в будущем. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Допустим сейчас 23:30:00
$t = time.future(45) // $t содержит 00:45:00
$t = time.future(15) // $t содержит 00:15:00 |
time.past(minute int) stringНазначение: возвращает время, соответствующее указанному числу минут в прошедшем часе. Аргументы: - minute – число минут для определения времени в прошлом.
Возвращаемое значение: время в прошлом. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Допустим сейчас 23:30:00
$t = time.past(45) // $t содержит 22:45:00
$t = time.past(15) // $t содержит 22:15:00 |
Функции по работе с очередью сообщений пользователяqueue.size() intНазначение: определение размера очереди сообщений пользователя. Аргументы: отсутствуют. Возвращаемое значение: число сообщений пользователя. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $messageCount = queue.size() // $messageCount содержит число сообщений пользователя за всё время диалога |
queue.last() ?UserMessageНазначение: возвращает последнее сообщение пользователя либо nil, если очередь сообщений пуста. Аргументы: отсутствуют. Возвращаемое значение: объект UserMessage или nil. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $lastMessage = queue.last() // $lastMessage содержит последнее на данный момент сообщение пользователя |
queue.first() ?UserMessageНазначение: возвращает первое сообщение пользователя либо nil, если очередь сообщений пуста. Аргументы: отсутствуют. Возвращаемое значение: объект UserMessage или nil. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $firstMessage = queue.first() // $firstMessage содержит первое сообщение пользователя за всё время диалога |
queue.nth(index int) ?UserMessageНазначение: возвращает сообщение пользователя по его порядковому номеру, начиная с 1. Аргументы: - index – порядковый номер сообщения пользователя.
Возвращаемое значение: объект UserMessage или nil. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| linenumbers | true |
|---|
| $message = queue.nth(1) // $message содержит первое сообщение пользователя
$message = queue.nth(5) // $message содержит пятое сообщение пользователя |
queue.lastNth(index int) ?UserMessageНазначение: возвращает сообщение пользователя по его порядковому номеру, считая с конца очереди. Последнее сообщение соответствует порядковому номеру 1. Аргументы: - index – порядковый номер сообщения пользователя, считая с конца очереди.
Возвращаемое значение: объект UserMessage или nil. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $message = queue.lastNth(1) // $message содержит последнее сообщение пользователя
$message = queue.lastNth(5) // $message содержит пятое с конца очереди сообщение пользователя |
Функции для работы с фактамиfact.save(context string, factName string, factValue mixed, botId string = nil, clientId string = nil)Назначение: сохраняет факт в базе фактов. Аргументы: - context – строка, определяющая контекс контекст, в рамках которого существует факт.
- factName – строка, определяющая название факта.
- factValue – любое значение, определяющее содержимое факта.
- botId – идентификатор бота. По умолчанию не задан.
- clientId – идентификатор клиента. По умолчанию не задан.
Возвращаемое значение: отсутствует. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| fact.save("место", "город", "Екатеринбург") // Факт, доступный всем ботам компании
fact.save("место", "город", "Екатеринбург", nil, @clientId) // Факт с привязкой к клиенту
fact.save("место", "город", "Екатеринбург", @botId) // Факт с привязкой к боту
fact.save("место", "город", "Екатеринбург", @botId, @clientId) // Факт с привязкой к боту и клиенту |
fact.load(context string, factName string, botId string = nil, clientId string = nil) mixedНазначение: извлекает факт из базы фактов. Аргументы: - context – строка, определяющая контекс контекст, в рамках которого существует факт.
- factName – строка, определяющая название факта.
- botId – идентификатор бота. По умолчанию не задан.
- clientId – идентификатор клиента. По умолчанию не задан.
Возвращаемое значение: содержимое факта. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| fact.save("место", "город", "Екатеринбург", @botId, @clientId) // Сохраняет факт с привязкой к боту и клиенту
$city = fact.load("место", "город", @botId, @clientId) // Загружаем факт в переменную. $city содержит "Екатеринбург" |
fact.delete(context string, factName string, botId string = nil, clientId string = nil)Назначение: удаляет факт из базы фактов. Аргументы: - context – строка, определяющая контекс контекст в рамках которого существует факт.
- factName – строка, определяющая название факта.
- botId – идентификатор бота. По умолчанию не задан.
- clientId – идентификатор клиента. По умолчанию не задан.
Возвращаемое значение: отсутствует. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| fact.save("место", "город", "Екатеринбург", @botId, @clientId) // Сохраняет факт с привязкой к боту и клиенту
$city = fact.load("место", "город", @botId, @clientId) // Загружаем факт в переменную. $city содержит "Екатеринбург"
fact.delete("место", "город", @botId, @clientId) // Удаляем факт.
$city = fact.load("место", "город", @botId, @clientId) // Пытаемся загрузить удалённый факт. Теперь $city содержит nil. |
fact.query() FactQueryНазначение: возвращает экземпляр FactQuery для построения и выполнения запросов к базе фактов. Аргументы: отсутствуют. Возвращаемое значение: объект FactQuery. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Добавили пару фактов в базу
fact.save("место", "страна", "Россия")
fact.save("место", "город", "Екатеринбург")
// Загрузили в $places список мест отсортированных по имени факта в порядке убывания:
// [{"name": "город", "value": "Россия"}, {"name": "страна", "value": "Екатеринбург"}]
$places = fact.query().
select("name,value").
where("context", "=", "место").
sortBy("-name").
rows() |
fact.cond() FactQueryConditionНазначение: возвращает экземпляр FactQueryCondition для построения составных условий в запросах к базе фактов. Аргументы: отсутствуют. Возвращаемое значение: объект FactQueryCondition. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Добавили факты в базу
fact.save("города", "екатеринбург", "Екатеринбург")
fact.save("города", "москва", "Москва")
fact.save("города", "санкт-петербург", "Санкт-Петербург")
fact.save("города", "новосибирск", "Новосибирск")
// Найдём один город, начинающийся с буквы "м" или с буквы "т" и не равный городам "Екатеринбург" и "Новосибирск"
$city = fact.query().
select("value").
where("context", "=", "города").
where(fact.cond().
where("name", "^@", "м").
orWhere("name", "^@", "т")).
where("name", "not in", ("екатеринбург", "новосибирск")).
one() |
Функции для работы с таймеромtimer.start(time int, nodeId string) stringНазначение: запускает таймер обратного отсчёта. По истечении указанного времени бот осуществит переход на указанный узел (блок). Аргументы: - time – время в секундах.
- nodeId – идентификатор блока для перехода после завершения отсчёта.
Возвращаемое значение: идентификатор таймера. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $timerId = timer.start(60, "760b9732-4bfb-4846-a348-faae5138fcb2") // $timerId содержит уникальный идентификатор таймера на 60 секунд |
timer.stop(timerId string)Назначение: останавливает (удаляет) таймер обратного отсчёта. Аргументы: - timerId – идентификатор таймера.
Возвращаемое значение: отсутствует. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $timerId = timer.start(60, "760b9732-4bfb-4846-a348-faae5138fcb2")
timer.stop($timerId) // останавливаем (удаляем) таймер |
Функции для работы с текстом на естественном языке (NLP)nlp.parse(message string|UserMessage) SentenceНазначение: парсит текст на естественном языке. Аргументы: - message – текст на естественном языке или объект UserMessage.
Возвращаемое значение: объект Sentence,содержащий информацию о всех намерениях и сущностях исходного сообщения. Примечание: данная функция извлекает из текста только сущности. Для работы с намерениями используйте функцию nlu.parse. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $sentence = nlp.parse(queue.first()) // парсим первое сообщение пользователя |
nlp.join(message1 string|UserMessage, message2 string|UserMessage) SentenceНазначение: объединяет два текста на естественном языке в одно и затем парсит его. Аргументы: - message1 – текст на естественном языке или объект UserMessage.
- message2 – текст на естественном языке или объект UserMessage.
Возвращаемое значение: объект Sentence,содержащий информацию о всех намерениях и сущностях объединённого сообщения. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $sentence = nlp.join(queue.lastNth(2), queue.lastNth(1)) // объединяем предпоследнее и последнее сообщения пользователя и затем парсим его |
nlp.setPerception($sentence Sentence)Назначение: позволяет установить сообщение пользователя для обработки в других узлах (блоках) схемы бота. Аргументы: - sentence – объект Sentence, содержащий информацию о намерениях и сущностях некоторого сообщения.
Возвращаемое значение: отсутствует. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $sentence = nlp.join(queue.lastNth(2), queue.lastNth(1)) // объединяем предпоследнее и последнее сообщения пользователя и затем парсим его
nlp.setPerception($sentence) // Теперь остальные узлы схемы будут работать с cообщением $sentence |
Функции для "понимания" естественного языка.nlu.parse(text string, agentId string, timezoneOffset int = 0, version int = 1) SentencePurpose: разбор текста на естественном языке. Выявление намерений и сущностей. Arguments: - text –текст для разбора.
- agentId – идентификатор (uuid) агента (нейросети), производящего разбор текста.
- timezoneOffset – смещение временной зоны, необходимое для правильного выявления временных сущностей. По умолчанию используется смещение для UTC.
- version – версия NLU. Может быть числом 1 или 2.
Возвращаемое значение: объект Sentence. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Пример использования |
|---|
| linenumbers | true |
|---|
| $sentence = nlu.parse("Доброе утро Вася!", "d926726a-5acb-4233-8c1e-ce4300921de0") |
Функции для работы с HTTPhttp.sendRequest(url string, method string, body any = nil, headers Map = nil) ResponseНазначение: отправляет HTTP запрос на указанный URL. Аргументы: - url – URL-адрес, на который будет оправлен запрос.
- method – HTTP-метод. Допустимые значения: GET, POST, PUT, DELETE, PATCH, HEAD и OPTIONS.
- body – тело запроса. Может быть представлено скалярным значением, списком или ассоциативным массивом.
- headers – HTTP-заголовки запроса. По умолчанию устанавливается заголовок Content-Type: application/json.
Возвращаемое значение: объект HTTP-ответа. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Выполняем запрос на получение списка юзеров
$response = http.sendRequest("https://iam.twin24.ai/api/v1/users", "GET", {"limit": 15, "offset": 5}, {"Authorization": "Bearer authToken"})
// Извлекаем информацию о запросе
$statusCode = $response.statusCode
$body = $response.body
$headers = $response.headers
$error = $response.error |
http.request(url string = "", method string = "POST", body any = nil) RequestНазначение: формирует новый объект HTTP-запроса. Аргументы: - url – строка URL.
- method – название HTTP-метода.
- body – содержимое тела запроса.
Возвращаемое значение: объект, содержащий информацию о HTTP-запросе. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Пример использования |
|---|
| linenumbers | true |
|---|
| $response = http.request("https://some.url", "POST", {"param1": 123, "param2": true}).
headers({"Content-Type": "application/json"}).
timeout(300).
send() |
Объект Requesttimeout(timeout int) RequestНазначение: задаёт максимально допустимое время запроса в секундах. Если запрос отрабатывает отрабатывается дольше указанного времени, то его выполнение прерывается. Аргументы: - timeout – допустимое время запроса в секундах.
Возвращаемое значение: объект, содержащий информацию о HTTP-запросе. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $response = http.request("https://some.url", "GET").
timeout(300).
send() |
url(url string) RequestНазначение: задаёт URL запроса. Аргументы: - url – строка URL.
Возвращаемое значение: объект, содержащий информацию о HTTP-запросе. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Пример использования |
|---|
| linenumbers | true |
|---|
| $response = http.request().
url("http://some.url?p1=v1&p2=v2").
method("GET").
send() |
method(method string) RequestНазначение: задаёт HTTP-метод запроса. Аргументы: - method – название HTTP-метода.
Возвращаемое значение: объект, содержащий информацию о HTTP-запросе. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $response = http.request().
url("http://some.url?p1=v1&p2=v2").
method("GET").
send() |
body(body any) RequestНазначение: задаёт тело запроса. Аргументы: - body – тело запроса.
Возвращаемое значение: объект, содержащий информацию о HTTP запросе. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $response = http.request().
url("http://some.url?p1=v1&p2=v2")
method("PUT").
body("some body").
send() |
Назначение: добавляет HTTP заголовок. Аргументы: - header – название HTTP-заголовка.
- value – значение HTTP-заголовка.
Возвращаемое значение: объект, содержащий информацию о HTTP запросе. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $response = http.request().
url("http://some.url?p1=v1&p2=v2").
method("POST").
header("Content-Type", "application/json").
header("Accept-Language", "en-US,en;q=0.5").
send() |
Назначение: задаёт HTTP-заголовки. Аргументы: - headers – HTTP-заголовки.
Возвращаемое значение: объект, содержащий информацию о HTTP-запросе. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $response = http.request().
url("http://some.url?p1=v1&p2=v2").
method("PUT").
body("some body").
headers({"Content-Type": "application/json", "Accept-Language": "en-US,en;q=0.5"}).
send() |
file(fileId string, name string = "") RequestНазначение: добавляет файл для отправки по HTTP. Аргументы: - fileId – идентификатор ранее загруженного файла.
- name – название параметра запроса. Если параметр не задан, то его имя будет совпадать с идентификатором файла.
Возвращаемое значение: объект, содержащий информацию о HTTP-запросе. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Пример использования |
|---|
| linenumbers | true |
|---|
| $response = http.request().
url("http://some.url").
method("POST").
header("Content-Type", "multipart/form-data").
file($fileId, "file").
send() |
send() ResponseНазначение: отправляет сформированный запрос. Возвращаемое значение: объект ответа сервера. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Пример использования |
|---|
| linenumbers | true |
|---|
| $response = http.request("http://some.url?p1=v1&p2=v2", "PUT", "some body").
headers({"header1": "...", "header2": "...").
send() |
Объект ResponsestatusCode intНазначение: код статуса ответа. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $response = http.sendRequest("http://some.url?p1=v1&p2=v2", "PUT", "some body")
$code = $response.statusCode |
body anyНазначение: тело ответа. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $response = http.sendRequest("http://some.url?p1=v1&p2=v2", "PUT", "some body")
$body = $response.body |
Назначение: заголовки ответа. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $response = http.sendRequest("http://some.url?p1=v1&p2=v2", "PUT", "some body")
$headers = $response.headers |
error stringНазначение: значение элемента error тела ответа или пустая строка, если такого элемента нет. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $response = http.sendRequest("http://some.url?p1=v1&p2=v2", "PUT", "some body")
$error = $response.error |
isError() boolНазначение: определение успешности ответа. Возвращаемое значение: возвращает true, если свойство error не пустое или код статуса больше или равен 400, иначе возвращает false. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $response = http.sendRequest("http://some.url?p1=v1&p2=v2", "PUT", "some body")
$isError = $response.isError() |
isSuccessful() boolНазначение: определение успешности ответа. Возвращаемое значение: возвращает true, если свойство error пустое и код статуса меньше 400, иначе возвращает false. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $response = http.sendRequest("http://some.url?p1=v1&p2=v2", "PUT", "some body")
$isSuccessful = $response.isSuccessful() |
Назначение: определение наличия заголовка. Аргументы: - header – название заголовка.
Возвращаемое значение: true, если заголовок с указанным именем существует, и false в противном случае. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $response = http.sendRequest("http://some.url?p1=v1&p2=v2", "PUT", "some body")
$hasContentType = $response.hasHeader("Content-Type") |
Назначение: получение значения заголовка. Аргументы: - header – название заголовка.
Возвращаемое значение: значение заголовка с указанным именем или пустую строку, если такого заголовка нет. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $response = http.sendRequest("http://some.url?p1=v1&p2=v2", "PUT", "some body")
$contentType = $response.header("Content-Type") |
toFile() stringНазначение: получение файла из HTTP-ответа. Возвращаемое значение: идентификатор загруженного файла. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $response = http.sendRequest("http://some.url", "GET")
$fileId = $response.toFile() |
Системные функцииsys.sleep(microseconds int)Назначение: останавливает работу бота на указанное количество микросекунд. Если количество микросекунд превышает 1 минуту, то пауза будет уменьшена до 1 минуты. Аргументы: - microseconds – число микросекунд паузы.
Возвращаемое значение: отсутствует. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| sys.sleep(3_000_000) // Пауза в 3 секунды |
Функции для работы с GPT-3gpt3.ask(text string) stringНазначение: отправляет сообщение в нейросеть ChatGPT3 и возвращает её ответ. Аргументы: - text – запрос к нейросети на русском языке.
Возвращаемое значение: ответ нейросети в виде строки. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $answer = gpt3.ask("Есть ли жизнь на Марсе?") // В $answer будет ответ нейросети на заданный вопрос |
Объект FactQueryИспользуя методы этого объекты, вы можете выполнять и строить разнообразные запросы к базе фактов. База фактов представляет собой список записей. Каждая запись представляет собой единичный факт, состоящий из следующих частей (полей): - Контекст (context). Произвольная строка, длина которой не превышает 255 символов. Обозначает некоторую предметную область, в рамках которой существует факт. Может участвовать в поиске.
- Имя факта (name). Произвольная строка, длина которой не превышает 255 символов. Служит для идентификации факта в заданном контексте. Может участвовать в поиске.
- Значение факта (value). Любое значение. Это собственно и есть та информация, которую мы трактуем как факт. Не может участвовать в поиске (технически может, но результат недетерминированне определен).
- Идентификатор бота (botId). Может быть задан при сохранении факта с целью привязки факта к боту. Может участвовать в поиске.
- Идентификатор клиента (clientId). Может быть задан при сохранении факта с целью привязки факта к клиенту. Может участвовать в поиске.
select(fields string|Collection) FactQueryНазначение: задаёт список полей из базы фактов, значения которых следует вернуть в результате запроса. Если метод select не вызыалсявызывался, то будут возвращены поля context, name и value. Аргументы: - fields – строка, содержащая список неободимых необходимых полей, разделённых запятой либо коллекция этих полей.
Возвращаемое значение: тот же объект FactQuery. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $facts = fact.query().rows() // select не вызван возвращаем все поля.
$facts = fact.query().select(["value", "context"]).rows() // Возвращаем список фактов, для которых нам нужны только value и context.
$facts = fact.query().select("botId").rows() // Возвращаем только поле botId, к которымкоторому привязаны факты. |
where(field string, operator string, value mixed) FactQueryНазначение: задаёт условие поиска фактов. Несколько методов where объединяются по принципу логического "И", т. Т.е. все условия должны быть выполнены. Метод where равносилен методу andWhere(field, operator, value). Аргументы: - field – название поля, для которого задаётся условие , (т.е. первый аргумент операции operator).
- operator – оператор, обозначающий операцию, выполняющуюся над field. Список доступных операций смотри ниже.
- value – второй аргумент операции.
Возвращаемое значение: тот же объект FactQuery. Список доступных операций: - "=" проверка, что field равно value.
- "!=" или "<>" проверка на неравенство, что field не равно value.
- ">" проверяет, что field больше value.
- "<" проверяет, что field меньше value.
- ">=" проверяет, что field больше или равно value.
- "<=" проверяет, что field меньше или равно value.
- "^@" или "startsWith" ищет совпадение строки value с началом field. Поиск регистрозависимый.
- "~" проверяет соответствие field регулярному выражению value. Поиск регистрозависимый.
- "!~" проверяет несоотвествие field регулярному выражению value. Поиск регистрозависимый.
- "~*" проверяет соответствие field регулярному выражению value. Поиск регистронезависимый.
- "!~*" проверяет несоотвествие field регулярному выражению value. Поиск регистронезависимый.
- "in" проверяет совпадение field хотя бы с одним значением в коллекции value.
- "not in" проверяет несовпадение field со всеми значениями из коллекции value.
| Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Ищем факты у которых context содержит подстроку test
$facts = fact.query().
select("name,value").
where("context", "~", "^.*test.*$").
rows() |
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). Аргументы: - cond – объект FactQueryCondition, определяющий сложносоставное условие.
Возвращаемое значение: тот же объект FactQuery. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Ищем факты, у которых context содержит подстроку test, и при этом name равен "слово", или name начинается на "оп".
$facts = fact.query().
select("name,value").
where("context", "~", "^.*test.*$").
andWhere(fact.cond().
where("name", "=", "слово").
orWhere("name", "^@", "оп")).
rows() |
andWhere(cond FactQueryCondition) FactQueryЭквивалентен where(cond). orWhere(cond FactQueryCondition) FactQueryАналогичен where(cond), с той лишь разницей, что несколько вызовов этого метода объединяются по принципу логического "ИЛИ", т.е. должно выполняться хотя бы одно условие. sortBy(fields string|Collection) FactQueryНазначение: задаёт сортирову фактов по указанным полям. Аргументы: - fields – строка содержащая список полей (через запятую), по которым следует отсортировать факты, либо коллекция, содержащая названия полей. Каждое поле может содержать префикс "+" для сортировки по возрастанию или "-" для сортировки по убыванию. Если префикс не указан, то используется сортировка по возрастанию.
Возвращаемое значение: тот же объект FactQuery. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Получаем все факты для бота с двойной сортировкой:
// сначалаСначала по контексту по возрастанию (т.е. в алфавитном порядке)
// иИ далее по имени факта по убыванию.
$facts = fact.query().
select("name,value").
where("botId", "=", @botId)
sortBy("+context,-name"). // можноМожно также использовать коллеции. Например, sortBy(["+context", "-name"])
rows() |
limit(limit int) FactQueryНазначение: ставит ограничение на максимальное количество извлекаемых фактов. Аргументы: - limit – целое число определяющее лимит на количество извлекаемых фактов.
Возвращаемое значение: тот же объект FactQuery. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Получаем первые 10 фактов
$facts = fact.query().
select("name,value").
sortBy("name").
limit(10).
rows() |
skip(count int) FactQueryНазначение: задаёт количество фактов которые следует пропустить при поиске. Аргументы: - count – целое число, определяющее количество фактов для пропуска.
Возвращаемое значение: тот же объект FactQuery. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Пропускаем 5 первых фактов и извлекаем следующие 10
$facts = fact.query().
select("name,value").
sortBy("name").
skip(5).
limit(10).
rows() |
one() mixedНазначение: возвращает первое указанное через select поле первого найденного факта. Аргументы: отсутствуют. Возвращаемое значение: значение поля. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Извлекает имя первого найденного факта
$firstFactName = fact.query().
select("name,value"). // value хоть и указано, но будет проигнорировано
one() |
column() ListНазначение: возвращает список, состоящий из всех значений первого выбранного поля найденных фактов. Аргументы: отсутствуют. Возвращаемое значение: списокзначений поля. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Извлекает список имён всех найденных фактов
$names = fact.query().
select("name,value"). // value хоть и указано, но будет проигнорировано
column() |
row() MapНазначение: возвращает все выбранные поля в виде ассоциативного массива для первого найденного факта. Аргументы: отсутствуют. Возвращаемое значение: значения всех полей первого факта. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Извлекает имя и значение первого найденного факта
$names = fact.query().
select("name,value").
row() |
rows() List<Map>Назначение: возвращает список всех найденных фактов. Каждый факт возвращается как ассоциативный массив, ключами которого являются поля факта, а значениями - – значения полей. Аргументы: отсутствуют. Возвращаемое значение: значения всех полей всех фактов. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| // Извлекает имя и значение всех фактов
$names = fact.query().
select("name,value").
rows() |
Объект 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Назначение: оригинальный текст сообщения. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Пример использования |
|---|
| linenumbers | true |
|---|
| $msg = queue.last().message // $msg содержит текст последнего сообщения пользователя |
attachments List<string>Назначение: список идентификаторов файлов, приложенных к сообщению. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Пример использования |
|---|
| linenumbers | true |
|---|
| $attachments = queue.first().attachments // $attachments содержит список вложений первого сообщения пользователя. |
isEmpty() boolНазначение: определяет пустое ли сообщение. Аргументы: отсутствуют. Возвращаемое значение: true, если сообщение пустое, и false в противном случае. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Пример использования |
|---|
| linenumbers | true |
|---|
| $isEmpty = queue.last().isEmpty() // $isEmpty содержит true, если последнее сообщение пользователя пустое, и false в противном случае |
hasAttachments() boolНазначение: определяет, есть ли вложения в данном сообщении. Аргументы: отсутствуют. Возвращаемое значение: true, если сообщение имеет вложения, и false в противном случае. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Пример использования |
|---|
| linenumbers | true |
|---|
| $hasAttachments = queue.first().hasAttachments() // $hasAttachments содержит true, если первое сообщение пользователя имеет вложения, и false в противном случае |
Объект Sentenceintent stringНазначение: распознанное намерение. | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $sentence = nlu.parse("Привет Вася", "d926726a-5acb-4233-8c1e-ce4300921de0")
$intent = $sentence.intent // $intent содержит "greeting" |
intentConfidence numberНазначение: степень достоверности распознанного намерения (1 – однозначное распознавание, 0 – намерение фактически нераспознанно). | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $sentence = nlu.parse("Привет Вася", "d926726a-5acb-4233-8c1e-ce4300921de0")
$confidence = $sentence.intentConfidence // $confidence содержит 0.98 |
entities List<Tuple>Назначение: список распознанных сущностей. Каждый элемент списка содержит кортеж из трёх элементов: тип сущности (string), значение сущности (строка), достоверность распознавания сущности (number). | Блок кода |
|---|
| language | php |
|---|
| theme | DJango |
|---|
| firstline | 1 |
|---|
| title | Примеры использования |
|---|
| linenumbers | true |
|---|
| $sentence = nlu.parse("Доброе утро Вася", "d926726a-5acb-4233-8c1e-ce4300921de0")
$entities = $sentence.entities // $entities содержит [("human-name", "Вася", 0.96), ("time", "2023-01-09 23:30:00", 0.87)]
$first = $entities.get(0) // $first содержит ("human-name", "Вася", 0.96)
$type = $first.get(0) // $type содержит "human-name" |
|