Процедура для узла, в котором необходимо обработать пользовательский ввод и проверить номер телефона на валидность. После копирования добавьте названия узлов для следующего шага в сценарии и для повторного ввода номера телефона.
{# проверяем на валидность отправленный номер телефона #}
{% normalize_phone request.content is_forced=True as phone_number %}
{# Отправленный номер телефона валидный #}
{% if phone_number %}
{# сохраняем в профиль клиента отправленный номер телефона #}
{% set_attribute "profile_phone_number" phone_number %}
{# переадресуем пользователя в следующий сценарий #}
{% switch "название_сценария" %}
{% else %}
{# отправлен был невалидный номер телефона, переадресуем пользователя в сценарий где повторно просим его отправить номер #}
{% switch "название_сценария" %}
{% endif %}
Обработка номера телефона с проверкой на то, что был отправлен контакт из Telegram
Процедура для узла, в котором необходимо обработать пользовательский ввод и проверить отправить пользователь свой контакт из Telegram и только в этом случае сохранить его в профиль клиента. После копирования добавьте названия узлов для следующего шага в сценарии и для повторного ввода номера телефона.
{# проверяем на валидность отправленный номер телефона #}
{% if request.type == "contact" and request.is_own_contact %}
{# сохраняем в профиль клиента отправленный номер телефона #}
{% set_attribute "profile_phone_number" request.content %}
{% switch "название_сценария" %}
{% else %}
{# отправлен не контакт пользователя, переадресуем пользователя в сценарий где повторно просим его отправить номер #}
{% switch "название_сценария" %}
{% endif %}
Сохранение имени, email в профиль клиента
Для сохранения имени в процедуре узла сохранения напишите:
Вместо {{токен_чат_бота}} напишите токен чат-бота, который добавлен администратором в канал
Вместо {{id_telegram_канала}} напишите id нужного канала, узнать id можно через специальные чат-боты.
В процедуре узла пропишите следующий код:
{# проверяем ответ от Telegram для данного пользователя #}
{% if http_response.result.status == "member" or http_response.result.status == "administrator" or http_response.result.status == "creator" %}
{# пользователь подписан на канал #}
{% switch "название дальнейшего узла" %}
{% else %}
{# пользователь не подписан на канал #}
{% switch "название узла когда пользователь не подписан на канал" %}
{% endif %}
Не забудьте заменить названия сценариев в которые нужно перейти после проверки подписи.