Работа с командами скриптов

Список команд

Ввод любой команды в скрипт начинается  с выбора команды из списка Команд:

image.png

image.png

image.png

Отправить текст

Результатом работы данной команды является текстовое сообщение отправленное пользователю бота.

Функциональную команду отправки текстового сообщения можно использовать в любой части вашего бота. Она наиболее часто используется при разработке скриптов. На основании этой команды строится большинство разговорных диалогов.

Добавить в скрипт ее можно, выбрав пункт Отправить текст из списка Команд:

Снимок экрана 2024-02-05 123004.png

После выбора данной команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

В поле Текст можно ввести текстовое сообщение, эмодзи для эмоциональной разгрузки текста и ссылки на сторонние ресурсы, например, Youtube, Telegram. Помимо этого вы можете использовать макропеременные в вашем сообщении.

Так же текст можно форматировать в некоторых мессенджерах, что так же позволит сделать его более приятным глазу и читабельным. Вот несколько примеров форматирования:

Мессенджер Форматирование Спецсимволы
Telegram


Жирный текст **Жирный текст**
Текст курсивом __Текст курсивом__
Зачеркнутый текст ~~Зачеркнутый текст~~
Моноширинный текст

`Моноширинный текст`

```Моноширинный текст 2```
Ссылка в тексте

[Текст](Ссылка)

Скрытый текст или spoiler

||Скрытый текст||


WhatsApp
Жирный текст *Жирный текст*
Текст курсивом _Текст курсивом_
Зачеркнутый текст ~Зачеркнутый текст~
Моноширинный текст

```Моноширинный текст```

Цитирование > Цитирование
Встроенный код `Код`

Макропеременные доступные для команды Отправить текст можно посмотреть на странице Доступные макропеременные для команды Отправить текст и Email

Отправить изображение и Отправить файл

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

Функциональную команду Отправки изображения можно использовать для передачи информации пользователю в графическом виде, что часто бывает проще сделать, чем написать текст.

На основании команды Отправки файла можно настроить отправку текстового файла, презентации, прайс-листа и файла другого формата.‌

Отправить изображение

 

Данную команду можно добавить в скрипт, выбрав пункт Отправить изображение из списка Команд:

Снимок экрана 2024-02-05 123004.png

Настройка полей

 

После выбора данной команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

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

По кнопке Создать как итог команда появится в редакторе скрипта:

image.png

Отправить файл

 

Данную команду можно добавить в скрипт, выбрав пункт Отправить файл из списка Команд:

Снимок экрана 2024-02-05 123004.png

Настройка полей

 

После выбора данной команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

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

По кнопке Создать как итог команда появится в редакторе скрипта:

image.png

Email

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

Чаще всего Email уведомление используется в случае, если пользователь оставил заявку на консультацию по услугам, покупку товара или консультацию специалиста. Таким образом, обеспечивается уведомление владельца бизнеса о новой заявке, оставленной пользователем через бота.

Добавить в скрипт ее можно, выбрав пункт Email из списка Команд:

Снимок экрана 2024-02-05 123004.png

 

После выбора данной команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

Следующие поля являются обязательными:

Помните, что текстовое содержимое email письма - это HTML разметка! Это значит, что все текстовые строки должны заключаться в символы <b></b>, а перенос строки обозначаться символом <br>. Макропеременные описываются без заключения в символы.

Макропеременные доступные для команды Email можно посмотреть на странице Доступные макропеременные для команды Отправить текст и Email.

По кнопке Создать как итог команда появится в редакторе скрипта:

image.png

Установить статус лида

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

Статусы необходимы для классификации клиентов по этапам их обработки. С помощью статусов бот различает логику взаимодействия с клиентом.

Общий принцип данной команды таков — обязательно должен присутствовать начальный статус и два финальных статуса — для успешного и не успешного исхода. Между ними может быть любое количество статусов, это зависит от специфики вашего бизнеса и настройки бота.

Подробнее со статусами вы можете познакомиться на странице Статусы.

Данную команду можно добавить в скрипт, выбрав пункт Установить статус лида из списка Команд:

Снимок экрана 2024-02-05 123004.png

После выбора данной команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

В поле Новый статус обращения необходимо выбрать статус из выпадающего списка или добавить новый статус.

Новый статут добавляется кнопкой Создать новый в выпадающем списке:

image.png

В отрывшемся диалоговом окне следует заполнить поле Название и нажать кнопку Создать:

image.png

По кнопке Создать в диалоговом окне настроек свойств как итог команда появится в редакторе скрипта:

image.png

Выполнить скрипт

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

Данная команда помогает настроить маршруты в боте и связать скрипты между собой. Самым ярким примером ее использования является создание в боте главного меню, к которому в конце будут приходить все маршруты.

Добавить в скрипт ее можно, выбрав пункт Выполнить скрипт из списка Команд:

Снимок экрана 2024-02-05 123004.png

После выбора данной команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

В параметре Скрипт необходимо выбрать из выпадающего списка скрипт, в который будет совершен переход.

По кнопке Создать как итог команда появится в редакторе скрипта:

image.png

Запросить значение

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

Общий принцип данной команды таков - бот задает вопрос пользователю, пользователь вводит ответ, значение этого ответа запоминается в боте. В большинстве своем эта команда используется для сбора контактных данных клиента.

Добавить в скрипт ее можно, выбрав пункт Запросить значение из списка Команд:

Снимок экрана 2024-02-05 123004.png

После выбора данной команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

Следующие поля являются обязательными:

Шаблоны валидации

Шаблон валидации задает ограничение на вводимые пользователем значения. Если пользователь ввел значение несоответствующее шаблону, то ему придет сообщение об ошибке. Нужно это для исключения разных форматов одной переменной. Ведь есть человеческий фактор и каждый может написать ту же дату по-разному.

Ниже перечислены все существующие на платформе шаблоны и их значение.

Шаблон валидации Описание
Дата ДД.ММ.ГГГГ Дата в соответствующем формате
Дата ММ.ДД.ГГГГ Дата в соответствующем формате
Дата ГГГГ.ММ.ДД Дата в соответствующем формате
Российский номер телефона Номер телефона в формате +7 (xxx) xxx-xxxx
Российский номер телефона, компактно Номер телефона в формате 7xxxxxxxxxx
Российский мобильный Мобильный в формате +7 (9xx) xxx-xxxx
Российский мобильный, компактно Мобильный в формате 79xxxxxxxxx
Число Только числовые символы
Email Формат email (*@*.*)
Произвольное рег. выражение Регулярное выражение которое вы можете создать сами

Как составить свое произвольное регулярное выражение можно узнать на странице Регулярные выражения.

По кнопке Создать как итог команда появится в редакторе скрипта:

image.png

Введенные значения будут записаны в раздел Атрибуты  тут их можно редактировать и удалять. Так же они отобразятся в поле Атрибуты в разделе Лиды.


Добавить тэги и удалить тэги

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

На основании этих команд можно проанализировать в каких разделах бота был пользователь. Тэги записываются в хранилище на платформе и могут быть использованы для дальнейшего взаимодействия с пользователем. Также с помощью тэга можно настроить рассылку сообщений для цифровой автоворонки продаж.

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

Добавить в скрипт их можно, выбрав пункты Добавить тэги и Удалить тэги из списка Команд:

Снимок экрана 2024-02-05 123004.png

После выбора команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

В поле Тэги необходимо ввести имя тэга и нажать Enter. Вы можете вводить в это поле больше одного тэга.

Имена тегов пишутся одним словом, без пробелов. Если тэг состоит из нескольких слов, то слова разделяются между собой знаком "_"

В случае команды Удалить тэги, если оставить поле Тэги пустым, то удалятся все тэги лида.

По кнопке Создать как итог команда появится в редакторе скрипта:

image.png

С тэгами так же можно работать с помощью JS методов. Все методы и их описание вы можете посмотреть в Справочнике по функциям JS

Добавить контекст и удалить контекст

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

Контекст необходимо использовать как дополнительный параметр выполнения маршрутов при настройке бота. На его основании можно гибко настроить ветку выполнения маршрута по ранее выполненным действиям пользователя. Если при выполнении скрипта включается выполнение того или иного контекста, то бот будет выполнять только маршруты с данным контекстом.

Добавить в скрипт их можно, выбрав пункты Добавить контекст и Удалить контекст из списка Команд:

Снимок экрана 2024-02-05 123004.png

 

После выбора команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

В поле Контекст необходимо ввести имя контекста и нажать Enter. Вы можете вводить в это поле больше одного контекста.

Имена контекстов пишутся одним словом, без пробелов. Если контекст состоит из нескольких слов, то слова разделяются между собой знаком "_"

В случае команды Удалить контекст, если оставить поле Контекст пустым, то удалятся все контексты бота.

 

По кнопке Создать как итог команда появится в редакторе скрипта:

image.png

С контекстами так же можно работать с помощью JS методов. Все методы и их описание вы можете посмотреть в Справочнике по функциям JS

Повторить вопрос

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

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

Команда Повторить вопрос применяется для дополнительного скрипта с типом Fallback и позволяет гибко настроить взаимодействие бота с пользователем. Таким образом, предотвращается остановка работы бота из-за нераспознанного или ошибочного ответа пользователя.

Добавить в скрипт ее можно, выбрав пункт Повторить вопрос из списка Команд:

Снимок экрана 2024-02-05 123004.png

После выбора данной команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

По кнопке Создать как итог команда появится в редакторе скрипта:

image.png

Помните, что лучше всего использовать данную команду в скриптах типа Fallback. Добавьте в него команду Отправить текст с информационным сообщением пользователю о дальнейших действиях, а затем саму команду Повторить вопрос.


Выполнить триггер

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

В большинстве случает проще использовать данную команду для вызова триггера в нужном месте. чем использовать подписание на событие и настраивать триггер в точке скрипта с помощью JS условия.

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

В команде есть следующие поля:

Параметр Запустить указанный Триггер через (минут) игнорируется, если указано точное время запуска в поле Запустить указанный Триггер в.

По кнопке Создать как итог команда появится в редакторе скрипта:

image.png

Здесь команда имеет операцию Перейти к триггеру. Переход по кнопке этой операции открывает форму редактирования данного триггера в разделе Триггеры.

Выполнить JavaScript

Результатом работы данной команды является выполнение написанного в параметрах команды JavaScript кода.

Функциональная команда позволяет выполнить JavaScript, например для установки значений глобальных переменных (переменных бота) или атрибутов лида.

Добавить в скрипт ее можно, выбрав пункт Выполнить JavaScript из списка Команд:

Снимок экрана 2024-02-05 123004.png

 

После выбора данной команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

В диалоговом окне, в поле JavaScript необходимо создать синтаксически верно написанный JavaScript.

Все методы и их описание вы можете посмотреть в Справочнике по функциям JS.

По кнопке Создать как итог команда появится в редакторе скрипта:

image.png

Стоп

Результатом работы данной команды является остановка работы бота.

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

Добавить в скрипт ее можно, выбрав пункт Стоп из списка Команд:

Снимок экрана 2024-02-05 123004.png

 

После выбора данной команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

По кнопке Создать как итог команда появится в редакторе скрипта:

image.png

Необходимо помнить, что данная команда должна быть добавлена в конце скрипта, так как работа бота остановится и все последующие команды не будут выполнены!

Для того, чтобы бот замолчал, но Лид мог в любой момент возобновить работу бота, необходимо перед командой Стоп выполнить команду Установить статус лида. Данная команда должна установить статус, для которого будет работать стартовый маршрут или будет выполнена команда Вернуть боту.

Распознать NLP намерение

Результатом работы данной команды является выполнение соответствующего скрипта по распознанному намерению.

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

Подробнее с тем как работают NLP намерения можно узнать из урока Автоматизируем службу поддержки.

Добавить в скрипт ее можно, выбрав пункт Распознать NLP намерение из списка Команд:

Снимок экрана 2024-02-05 123004.png

 

После выбора данной команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

В поле Текст для обнаружения намерения (будет отправлен в NLP) нужно ввести текст, который соответствует нужному вам намерению в Dialogflow. По этому намерению и будет выполнен соответствующий скрипт бота.

По кнопке Создать как итог команда появится в редакторе скрипта:

image.png

Перевести на оператора и Вернуть боту

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

Функциональная команда Перевести на оператора позволяет выполнить перевод на оператора и установить по лиду параметр Чат передан оператору. А функциональная команда Вернуть боту позволяет выполнить возврат диалога обратно боту и автоматически снимает по лиду этот параметр.

Добавить в скрипт их можно, выбрав пункты Перевести на оператора и Вернуть боту из списка Команд:

Снимок экрана 2024-02-05 123004.png

После выбора команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

В поле Если не поддерживается, то перевести в статус можно указать в какой статус при выполнении данной команды будет переведен лид. Поле не обязательное для заполнения.

При выполнении команды Перевести на оператора по Лиду будет установлен параметр Чат передан оператору и бот будет молчать.  Командой Вернуть боту по лиду снимается параметр Чат передан оператору и она должна быть установлена в скрипт, который будет запускаться по маршруту с активным параметром Действует при переводе на оператора.

По кнопке Создать как итог команда появится в редакторе скрипта:

image.png

Как правильно использовать данные команды можно подробнее узнать в уроке Автоматизируем службу поддержки.

С переводом на оператора так же можно работать с помощью JS методов. Все методы и их описание вы можете посмотреть в Справочнике по функциям JS

Выполнить JavaScript Callback

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

Принцип работы данной команды:
Данную команду можно использовать, для:

Добавить в скрипт ее можно, выбрав пункт Выполнить JavaScript Callback из списка Команд:

Снимок экрана 2024-02-05 123004.png

 

После выбора данной команды в списке Команд перед вами откроется диалоговое окно настройки свойств:

image.png

С пунктом Использовать условие вы можете познакомиться на странице Условие выполнения команды JS

Следующие поля являются обязательными:

Если поле активно и это первый запуск JavaScript Callback данной команды, то в JavaScript будет установлена в true системная предопределенная переменная isFirstImmediateCall, во всех других случаях isFirstImmediateCall устанавливается в false. Это необходимо, чтобы можно было проинициализировать компонент и, например, выслать текст вопроса или отправить изначально меню и т.д.

По кнопке Создать как итог команда появится в редакторе скрипта:

image.png

Возвращаемые значения

JavaScript Callback всегда должен возвращать данные с помощью «return» в определенном формате:

Для завершения инициализации

Используется, чтобы платформа ничего не делала со своей стороны, ожидая ответа пользователя. Вместо retrurn null можно ничего не указывать после ключевого слова return.

Для прерывания цикла

Используется для выхода из замыкания и переходу к следующей команде текущего скрипта (если не указан параметр для перехода к другому скрипту).

Прерывание с помощью throw new Error("break") недопустимо, в таком случае JS прервется, но из зацикливания не выйдет, т.е. будет распознано как return null.

Под "другими параметрами" здесь подразумевается, что можно указать параметры в JSON-объекте, на которые платформа умеет реагировать. На данный момент для "result": true, можно указывать следующие параметры:
Для повторения цикла

Используется для завершения обработки JavaScript (выхода из JavaScript), без прерывания зацикливания. Callback продолжит выполнение цикла и при приеме любого входящего сообщения мы  опять попадем в JavaScript код данной команды (если не указан параметр для перехода к другому скрипту).

Под "другими параметрами" здесь подразумевается, что можно указать параметры в JSON-объекте, на которые платформа умеет реагировать. На данный момент для "result": false, можно указывать следующие параметры:

Доступные макропеременные для команды Отправить текст и Email

Макропеременная - это переменная содержащая какое-либо часто используемое значение. На платформе Metabot24 есть ряд системных макропеременных, которые можно использовать в командах Отправить текст и Email.

Название Макропеременная
Название бота {{ $botName }}
Имя лида {{ $name }}
Значение атрибута {{ $varName }}
Тэг лида {{ #tagName }}
Контекст лида {{ @contextName }}
Последнее распознанное NLP намерение {{ $nlpLastIntentName }}
Последний распознанный NLP Action {{ $nlpLastActionName }}
Последний текстовый результат NLP {{ $nlpLastReponseText }}
Заявка {{ ticket.* }}

Некоторые из макропеременных будут описаны подробнее ниже.

Значение атрибута

{{ $varName }} - переменная-атрибут лида, где вместо varName нужно указать название атрибута. Содержит значение соответствующей переменной сохраненной в атрибутах лида.

Что такое атрибуты вы можете подробнее узнать на странице Структура платформы в разделе 11. Тэги и атрибуты.

Тэг лида

{{ #tagName }} - тэг лида, где вместо tagName нужно указать название тэга. Содержит значение “да” или “нет”, в зависимости от того установлен или нет соответствующий тэг для лида.

Что такое тэги вы можете подробнее узнать на странице Структура платформы в разделе 11. Тэги и атрибуты.

Контекст лида

{{ @contextName }} - контекст лида, где вместо contextName нужно указать название контекста. Содержит значение “да” или “нет”, в зависимости от того установлен или нет соответствующий контекст для лида.

Последний текстовый результат NLP

Используется в сочетании с DialogFlow Smalltalk Actions - для вывода в качестве ответа бота.

Узнать, что такое Smalltalk вы можете на странице Dialogflow: Small talk.

Заявка

{{ ticket.* }} — где * — любое из полей перечисленных ниже:

В зависимости от выбранного поля будет содержать соответствующее ему значение.

Подробнее с заявками вы можете познакомиться на странице Заявки.

Регулярные выражения

Регулярное выражение - это шаблон задающий ограничение на вводимые пользователем значения. Оно может состоять как из обычных, так и из специальных символов и их комбинаций.

Обычные символы интерпретируются буквально, например регулярное выражение абв интерпретируется как строгая последовательность соответствующих букв в этом порядке.

Помимо этого, для составления более сложных регулярных выражений используются специальные символы. Их написание и значение подробнее расписаны ниже.

Специальные символы

Символ Описание Пример
Общие символы и символы количества
\

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

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

  - символ а становится специальным символом, означающим границу слова.

 \* - специальный символ * интерпретируется как обычный символ "звездочка".

^ Следующий символ должен присутствовать в начале строки. - символ А должен быть первым в строке.
$ Предыдущий символ должен присутствовать в конце строки. а$ - символ а должен быть последним в строке.
* Предыдущий символ может быть повторен 0 или больше раз. а* - символ а может не быть в строке, а может повториться множество раз.
+ Предыдущий символ должен быть повторен 1 или больше раз. а+ - символ а может повториться один раз в строке, а может повториться множество раз.
? Предыдущий символ должен быть повторен 0 или 1 раз. а? - символ а может не быть в строке, а может быть один раз.
. Любой символ кроме переноса строки. a.c равно abc, a1c и тд.
x|y В строке должен присутствовать либо x либо y. abc|xyz - в строке может быть abc или xyz.
{n} Предыдущий символ должен быть повторен n раз. а{2} - а должна быть повторена в строке дважды.
{n,m} Предыдущий символ должен быть повторен не меньше n раз, но и не больше m раз. а{2,5} - а должна быть повторена в строке хотя бы дважды и не больше пяти раз.
Скобочные группы
(x) Объединение символов в единый элемент (с запоминанием).

abc* - * относится только к c.


(abc)* - * относится ко всему выражению в скобках.

(?:x) Объединение символов в единый элемент (без запоминания).
x(?=y) Соответствует x только если за ним идет y. ab(?=c) - после ab должна быть c.
x(?!y) Соответствует x только если за ним не идет y. ab(?!c) - после ab не должно быть c.
Соответствия набору символов
[xyz] Соответствует любому из символов в скобках.  [abcd] или [a-d] - строка должна состоять из любых символов от a до d.
[^xyz] Соответствует любому из символов не в скобках.  [^abcd] или [^a-d] - строка должна исключать символы от a до d.
[\b] Бэкспейс. [\b] - находит символ бэкспейса в строке.
\b Граница слова. \b - перед или после предыдущего символа должен быть пробел или другая граница слова.
\d Цифровой символ. \d - любой из символов от 0 до 9.
\D Нецифровой символ. \D - любой из символов кроме символов от 0 до 9.
\s Пробел. \s - находит пробел, табуляцию, перенос строки.
\S Не пробел. \S - любой из символов кроме пробела, табуляции, переноса строки.
\w Цифробуквенные символы и нижнее подчеркивание. \w- любой из символов от 0 до 9, от А до Я и _.
\W Нецифробуквенные символы. \w- любой из символов кроме символов от 0 до 9, от А до Я и _.
\0 NULL \0 - находит пустое множество.

Примеры регулярных выражений и их разбор

Дата формата ДД.ММ.ГГГГ

Выражение: (0?[1-9]|[12][0-9]|3[01])\.(0?[1-9]|1[012])\.(19|20)\d\d

(0?[1-9]|[12][0-9]|3[01])
0?[1-9] 0 может быть повторен 1 или 0 раз, а за ним идет любая цифра кроме 0.
[12][0-9] 1 или 2, а за ними любая цифра.
3[01] 3 и 0 или 1.
| или.
(0?[1-9]|1[012])
1[012] 1 и 0 или 1 или 2.
\.(19|20)\d
\. обычный символ точки.
19|20 19 или 20.
\d любая цифра.

Возможная строка: 11.03.2005

Email

Выражение: [^@\s]+@[^@\s]+\.[^@\s]+

[^@\s]+
[^@\s] любой из символов кроме @ и пробела.
+ предыдущий символ может быть повторен 1 или более раз.
@[^@\s]+
@ символ @.
\.[^@\s]+
\. обычный символ точки.

Возможная строка: email@pp.com

Другие регулярные выражения

Email без латинских букв

(?:[a-z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+\/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:(2(5[0-5]|[0-4][0-9])|1[0-9][0-9]|[1-9]?[0-9]))\.){3}(?:(2(5[0-5]|[0-4][0-9])|1[0-9][0-9]|[1-9]?[0-9])|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])

Для валидации номера телефона без рамок кодов страны

[\+\-]?[\d| ]+[\.\,]?[\d| ]*

Возможная строка: +7 900 700 30 10 / 79007003010 / 8900 700 30 10 / + 37 900 700 30 10

Валидация номера с кодом определенных стран и возможностью выйти

(^(\+?7|\+?37)\d{10}$|отмена|назад|выход|стоп)

Возможная строка: +79007003010 / +379007003010 / +77007003010

Имя или слово с заглавной

[А-Я]{1}[а-я]{2,20}

Возможная строка: Метабот

Условие выполнения команды JS

При создании и редактировании каждой команды скрипта можно увидеть поле Использовать условие. Данное поле при активации позволяет описать JS условие выполнения или невыполнения команды.

После его активации появляется новое поле — Условие выполнения:

Условие.png

Его можно заполнить JavaScript кодом. Стандартный код условия выглядит так:

if (lead.isTagExist('some_tag')) {
  return true;
}

В данном случае представлен код с проверкой существования тега. В самом условии может проверяться что угодно (теги, атрибуты, их значение и т.д.). Главное, для корректной работы условия, код обязательно должен вернуть true или false.