Кейс: Мини-приложение для регистрации на мероприятие по номеру телефона
В этой статье мы разберём и создадим кейс: мини-приложение для регистрации на мероприятие с подтверждением номера телефона через новый инструмент Telegram – The Gateway и добавлением в лист ожидания.
Опробовать функционал мини-приложения можно по ссылке: https://t.me/InfoAzizBot/gateway. Поскольку это демо-версия, вы можете указать любой номер телефона, а код для регистрации будет отображён до его ввода. Демо-версия не отправляет коды и не выполняет рассылок.
Разработка:
Разработка происходит непосредственно в рамках сервиса PuzzleBot. Получить бесплатный бонус +7 дней к Креативному тарифу можно по ссылке https://puzzlebot.top/?r=Fmo8Tuss
Создаём переменные:
phone - текстовая переменная
code - числовая переменная
entered_code - числовая переменная
random_code - формула:
random(100000, 999999)
text1 - формула: (Можно заменить тексты в кавычках)
text2 - формула: (Можно заменить тексты в кавычках)
if({{entered_code}} == {{code}}, "Вы успешно зарегистрировались на мероприятие. Ожидайте уведомлений", "К сожалению вы ввели неверный код. Попробуйте ещё раз.")
Переходим в Конструктор:
1. Создаём блок "Мини-Приложение". Задаём произвольное название, у меня оно будет "Ввод номера" Добавляем туда блоки "Форма ввода" и "Клавиатура" (блок клавиатуры будет добавлен автоматически):
Форма ввода:
Добавляем заголовок с текстом "Введите номер телефона" Выбираем тип "Ввод текста" и масску ввода "Телефон". По желанию можем добавить Плейсхолдер с примером номера телефона. Открываем дополнительные настройки и включаем "Дублировать ответ в переменную", указываем переменную phone Пример данного блока будет на фото ниже
Клавиатура:
Блок "Клавиатура" будет добавлен автоматически. Выбираем тип клавиатуры "Фиксированная" Добавляем кнопку "Получить код" с действием "Переход к мини-приложению". В поле указываем название нового Мини-приложения - "Ввод кода"
Примеры обоих блоков
Открываем Действия данного мини приложения:
Действия:
Создаём действия "Изменить переменную" и "Отправить запрос"
Изменить переменную:
В первое поле (Переменную которую изменяем) вводим переменную code.
Во второе поле (Выражение) вводим переменную {{random_code}}
В дополнительных настройках включаем галочку "Дублировать в переменную" и указать перменную entered_code.
3. Создаём блок Условия, которое будет записывать пользователя в лист ожидания изменив категорию. Добавляем в правило условие с проверкой значения переменной. В первое поле вводим entered_code. В поле с выражением {{code}} В действия можем указать отправку команды (текста с уведомлением) и изменение категории пользователя.
Необходимо поставить вызов данного условия в действиях мини-приложения "Ввод кода"
Пример
4. Создаём Мини-Приложение с названием "Проверка кода" Добавляем блок Заголовка с переменной {{text1}} Добавляем блок Описания с переменной {{text2}} По желанию можно добавить клавиатуру
Пример
Последний шаг: Публикуем изменения и тестируем) Получить ссылку на мини-приложение можно открыв блок команду "Ввод номера". В поле "Прямая ссылка" будет указана ссылка на ваше мини-приложение.
Кейс: Мини-приложение для регистрации на мероприятие по номеру телефона
В этой статье мы разберём и создадим кейс: мини-приложение для регистрации на мероприятие с подтверждением номера телефона через новый инструмент Telegram – The Gateway и добавлением в лист ожидания.
Опробовать функционал мини-приложения можно по ссылке: https://t.me/InfoAzizBot/gateway. Поскольку это демо-версия, вы можете указать любой номер телефона, а код для регистрации будет отображён до его ввода. Демо-версия не отправляет коды и не выполняет рассылок.
Разработка:
Разработка происходит непосредственно в рамках сервиса PuzzleBot. Получить бесплатный бонус +7 дней к Креативному тарифу можно по ссылке https://puzzlebot.top/?r=Fmo8Tuss
Создаём переменные:
phone - текстовая переменная
code - числовая переменная
entered_code - числовая переменная
random_code - формула:
random(100000, 999999)
text1 - формула: (Можно заменить тексты в кавычках)
text2 - формула: (Можно заменить тексты в кавычках)
if({{entered_code}} == {{code}}, "Вы успешно зарегистрировались на мероприятие. Ожидайте уведомлений", "К сожалению вы ввели неверный код. Попробуйте ещё раз.")
Переходим в Конструктор:
1. Создаём блок "Мини-Приложение". Задаём произвольное название, у меня оно будет "Ввод номера" Добавляем туда блоки "Форма ввода" и "Клавиатура" (блок клавиатуры будет добавлен автоматически):
Форма ввода:
Добавляем заголовок с текстом "Введите номер телефона" Выбираем тип "Ввод текста" и масску ввода "Телефон". По желанию можем добавить Плейсхолдер с примером номера телефона. Открываем дополнительные настройки и включаем "Дублировать ответ в переменную", указываем переменную phone Пример данного блока будет на фото ниже
Клавиатура:
Блок "Клавиатура" будет добавлен автоматически. Выбираем тип клавиатуры "Фиксированная" Добавляем кнопку "Получить код" с действием "Переход к мини-приложению". В поле указываем название нового Мини-приложения - "Ввод кода"
Примеры обоих блоков
Открываем Действия данного мини приложения:
Действия:
Создаём действия "Изменить переменную" и "Отправить запрос"
Изменить переменную:
В первое поле (Переменную которую изменяем) вводим переменную code.
Во второе поле (Выражение) вводим переменную {{random_code}}
В дополнительных настройках включаем галочку "Дублировать в переменную" и указать перменную entered_code.
3. Создаём блок Условия, которое будет записывать пользователя в лист ожидания изменив категорию. Добавляем в правило условие с проверкой значения переменной. В первое поле вводим entered_code. В поле с выражением {{code}} В действия можем указать отправку команды (текста с уведомлением) и изменение категории пользователя.
Необходимо поставить вызов данного условия в действиях мини-приложения "Ввод кода"
Пример
4. Создаём Мини-Приложение с названием "Проверка кода" Добавляем блок Заголовка с переменной {{text1}} Добавляем блок Описания с переменной {{text2}} По желанию можно добавить клавиатуру
Пример
Последний шаг: Публикуем изменения и тестируем) Получить ссылку на мини-приложение можно открыв блок команду "Ввод номера". В поле "Прямая ссылка" будет указана ссылка на ваше мини-приложение.
3. Создаём блок Условия, которое будет записывать пользователя в лист ожидания изменив категорию. Добавляем в правило условие с проверкой значения переменной. В первое поле вводим entered_code. В поле с выражением {{code}} В действия можем указать отправку команды (текста с уведомлением) и изменение категории пользователя.
4. Создаём Мини-Приложение с названием \"Проверка кода\" Добавляем блок Заголовка с переменной {{text1}} Добавляем блок Описания с переменной {{text2}} По желанию можно добавить клавиатуру
Последний шаг: Публикуем изменения и тестируем) Получить ссылку на мини-приложение можно открыв блок команду \"Ввод номера\". В поле \"Прямая ссылка\" будет указана ссылка на ваше мини-приложение.
"}}],"summaryContent":null,"isExistSummaryContent":false,"warningFromEditor":null,"warningFromEditorTitle":null,"counters":{"comments":14,"favorites":1,"reposts":0,"views":74,"hits":646,"reads":null,"online":0},"dateFavorite":0,"hitsCount":646,"isCommentsEnabled":true,"isLikesEnabled":true,"isRemovedByUserRequest":false,"isFavorited":false,"isPinned":false,"repostId":null,"repostData":null,"subscribedToTreads":false,"isEditorial":false,"isAudioAvailable":false,"audioUrl":null,"isAudioAvailableToGenerate":false,"commentEditor":{"enabled":true,"who":null,"text":"","until":null,"reason":null,"type":"everybody"},"isBlur":false,"isPublished":true,"isDisabledAd":false,"withheld":[],"ogTitle":null,"ogDescription":null,"url":"https://vc.ru/telegram/1733334-keis-mini-prilozhenie-dlya-registracii-na-meropriyatie-po-nomeru-telefona","author":{"id":1241553,"name":"Aziz","nickname":"azizbots","description":"Разработчик Телеграм ботов, портфолио: https://t.me/infoazizbot/aziz","uri":"/azizbots","avatar":{"type":"image","data":{"uuid":"6f0dfae0-ef60-5e8d-81ba-4a3278232c11","width":2400,"height":2400,"size":1131847,"type":"png","color":"351059","hash":"","external_service":[],"base64preview":"/9j/4AAQSkZJRgABAQIAHAAcAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/wAARCAAKAAoDAREAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAABAUHCP/EACUQAAEDBAECBwAAAAAAAAAAAAECAwQABQcREgYTCBQhMVFhcf/EABgBAAIDAAAAAAAAAAAAAAAAAAUHAwQG/8QAIxEAAQMDAgcAAAAAAAAAAAAAAQACAwQFERIhMUFRYXGh0f/aAAwDAQACEQMRAD8AB8MuGMVysETbWW4F6vV6gSBKuIe2mA5s9tCkg7BSCPT3P4aZlU2almbBE8OAIJA5jv4TAss0UVM+Iv09cDOQfixXc8fdLxrlLjG8cy0+4gqDZAOlEbq86ipySShL7ZTBxAl9J1habMidF33ykt5nnHUVdtwp2fvVQ2LaOVw44KMWQAW95UlfffL7hLyySs7PI/NBHSPydysu47lf/9k="}},"cover":{"cover":{"type":"image","data":{"uuid":"ca390117-828f-5bd2-acc1-406b81f2ff93","width":1800,"height":800,"size":366873,"type":"png","color":"f6c28d","hash":"","external_service":[],"base64preview":"/9j/4AAQSkZJRgABAQIAHAAcAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/wAARCAAKAAoDAREAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAABQII/8QAHhABAAEEAgMAAAAAAAAAAAAAAQIAAwQREjEiQaH/xAAYAQACAwAAAAAAAAAAAAAAAAADBwQFBv/EAB4RAAICAgIDAAAAAAAAAAAAAAABAxECBAUSMUFR/9oADAMBAAIRAxEAPwDb+ZM2yEGXyl7zUbkboZcXig+eTa5y8nt9FZPLStt0GWLovKVhdVdi6ph7qTVgo/QGrvtqp6r4Tj//2Q=="}},"cover_y":20},"achievements":[{"title":"Год на vc.ru","code":"registration_1_year","description":"Первый год с vc.ru. Получена 24 июля 2025.","previewUuid":"0d11c244-49de-50e7-894e-b9b27945d42b","formats":{"glb":"https://static.vc.ru/achievements/fish.glb","usdz":"https://static.vc.ru/achievements/fish.usdz"},"viewData":{"contentColor":"#C67AA3","textMaxWidth":0.634765625,"textX":0.5888671875,"textY":0.54296875,"logoX":0.5859375,"logoY":0.6669921875,"logoXNoText":0.6044921875,"logoYNoText":0.5439453125},"id":4204936,"userId":1241553,"count":0,"shareImage":"https://api.vc.ru/achievements/share/4204936"},{"title":"3 года на vc.ru","code":"registration_3_years","description":"Провёл 3 года вместе с vc.ru. Получена 23 июля 2025.","previewUuid":"d9d72ac5-bcb5-55e0-8c72-b99251e5cdd9","formats":{"glb":"https://static.vc.ru/achievements/shark.glb","usdz":"https://static.vc.ru/achievements/shark.usdz"},"viewData":{"contentColor":"#8E6F09","textMaxWidth":0.66796875,"textX":0.5205078125,"textY":0.341796875,"logoX":0.5205078125,"logoY":0.4609375,"logoXNoText":0.5,"logoYNoText":0.3662109375},"id":581402,"userId":1241553,"count":0,"shareImage":"https://api.vc.ru/achievements/share/581402"}],"lastModificationDate":1765016437,"isSubscribed":false,"isSubscribedToNewPosts":false,"isMuted":false,"isAvailableForMessenger":true,"badgeId":"1e859157-d7e3-6c7e-a2c7-02421fa799ff","isDonationsEnabled":false,"isPlusGiftEnabled":true,"isUnverifiedBlogForCompanyWithoutPro":true,"isRemovedByUserRequest":false,"isFrozen":false,"isDisabledAd":false,"isPlus":true,"isVerified":false,"isPro":false,"yandexMetricaId":null,"badge":"plus","isOnline":false,"tgChannelShortname":null,"isUnsubscribable":true,"type":1,"subtype":"personal_blog"},"subsite":{"id":3680492,"name":"Телеграм","description":"Все о мессенджере Телеграм: новые фичи, каналы, новости, Павел Дуров, TON","uri":"/telegram","avatar":{"type":"image","data":{"uuid":"a6bd3ea3-1a25-5402-8c27-d063a43ad500","width":500,"height":500,"size":6665,"type":"jpg","color":"28a7e8","hash":"","external_service":[],"base64preview":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8LCwkMEQ8SEhEPERETFhwXExQaFRERGCEYGh0dHx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAARCAAKAAoDASEAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAABgME/8QAIRAAAQIGAgMAAAAAAAAAAAAAAQMEAAIFERIxBiETFEH/xAAVAQEBAAAAAAAAAAAAAAAAAAAEB//EABkRAAIDAQAAAAAAAAAAAAAAAAIDAAERYf/aAAwDAQACEQMRAD8AZcWpFGqLJ24fVgJKt2yi3ryjGY4g2F5tkn4AeoNBQ21FOS5hsMSHKrM7I69C1qAgLbLd5yTVA8uo0AdQmoSf/9k="}},"cover":{"type":"image","data":{"uuid":"ebe1c612-381b-52c8-897c-ac8a8002770f","width":1920,"height":1080,"size":636123,"type":"jpg","color":"def2f4","hash":"","external_service":[],"base64preview":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8LCwkMEQ8SEhEPERETFhwXExQaFRERGCEYGh0dHx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAARCAAKAAoDASEAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAwEI/8QAHxAAAQMEAwEAAAAAAAAAAAAAAQACERIiQVEhMTKS/8QAFwEAAwEAAAAAAAAAAAAAAAAAAAEDBP/EABURAQEAAAAAAAAAAAAAAAAAAAAB/9oADAMBAAIRAxEAPwDSQjeNKtIgXD5V2EVToNx8jKRrnUjk9bQUf//Z"}},"lastModificationDate":1721721308,"isSubscribed":false,"isSubscribedToNewPosts":false,"isMuted":false,"isAvailableForMessenger":false,"isDisabledAd":false,"nickname":"telegram","isUnsubscribable":true,"badge":null,"badgeId":null,"isDonationsEnabled":false,"isOnline":false,"isPlus":false,"isUnverifiedBlogForCompanyWithoutPro":false,"isVerified":false,"isRemovedByUserRequest":false,"isFrozen":false,"isPro":false,"type":2,"subtype":"community"},"reactions":{"counters":[{"id":2,"count":5},{"id":1,"count":4},{"id":22,"count":1},{"id":15,"count":1}],"reactionId":0},"isNews":false,"source":null,"clusters":[],"donations":{"amount":0,"isDonated":false},"commentsSeenCount":null,"keywords":[],"media":{"type":"image","data":{"uuid":"0a65aeac-5773-5f4d-8ddc-02e7343249ac","width":640,"height":360,"size":113655,"type":"png","color":"34abf7","hash":"","external_service":[],"base64preview":"/9j/4AAQSkZJRgABAQIAHAAcAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/wAARCAAKAAoDAREAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAABwAF/8QAIxAAAAQFBAMAAAAAAAAAAAAAAAECAwQFERKREyExUxVRVP/EABcBAAMBAAAAAAAAAAAAAAAAAAAGBwH/xAAjEQABAwMEAgMAAAAAAAAAAAABAAIRAwVRBhIUMQRhE0Hh/9oADAMBAAIRAxEAPwBWgJwycpi0RrLyIzlgyaNV23FbiJO/sjrUUrUNo1M7Utv8i0VBwRIrtLgO/uC0lxjqCIj2obZ7hZW2Ty6Nwpu5Rj4nAEx67gfqy/LTX5XcChcGjlJ3JrYKLdV3sVkPe0YSduOVarvYrIza3CNxyv/Z"}},"customCover":null,"robotsTag":"noindex","categories":[10],"isAnonymized":true}};