Автор: @RDGlessons Сегодня Telegram выпустил обновление Telegram API — Gateway API. Оно представлено как инструмент, способный заменить СМС-верификации. В этой статье мы расскажем о преимуществах, разберём, как пользоваться, и реализуем интеграцию.Основные особенности:Мгновенная доставка кодов верификации.Цена в ~$0.01 за сообщение, что в ~50 раз ниже средней цены за СМС*100% процентная доставка сообщения.Отчёты о прочтении и доставке.Но есть и большой минус: минимальная сумма пополнения составляет $100, причём оплата возможна только в TON.*В целях тестирования вы сможете отправлять бесплатные проверочные сообщения на аккаунт Telegram, привязанный к номеру, который вы использовали для входа. Инструкция по настройке:Авторизация:Для начала необходимо получить уникальный API токен, для отправки кодов верификации. Перейдите в Gateway account, авторизуйтесь по номеру Telegram и скопируйте API токен:Страница Gateway APIОтправка кодов через PuzzleBot:Создайте Интегрированную переменную во вкладке Переменные в PuzzleBot Заполните поле "Ссылка" данной ссылкой:https://gatewayapi.telegram.org/sendVerificationMessageВыберите тип запроса GET или POST Добавьте заголовки: Authorization: Bearer ТОКЕНЗамените ТОКЕН на действующий токен, полученный ранее. Добавьте параметры: phone_number - обязательно - номер телефона получателя кода в международном формате E. 164code - необязательно - код, который будет отправлен получателю. Код может состоять только от 4 до 8 цифр.code_length - необязательно (используется только если отсутствует поле code) - длина кода, который будет сгенерирован Telegram, от 4 до 8 символов.sender_username - необязательно - юзернейм публичного канала, от чьего имени придёт код получателю. Канал который вы укажите должен принадлежать вашему аккаунту.ttl - необязательно - количество секунд, после которых код будет удалён/деактивирован. Код удаляется только если сообщение с кодом не прочитано на момент удаления.callback_url - необязательно - адрес вебхука, который получит обновления сообщения: статус доставки и прочтение.request_id - необязательно - айди предыдущего сообщения, отправленного на этот же номер. Если всё указано верно - деньги с баланса за отправленное сообщение считываться не будут.Возвращаемый ответ: JSON: [ { "ok": true, "result": { "request_id": "1234567890", "phone_number": "1234567890", "request_cost": 0, "remaining_balance": 0, "delivery_status": { "status": "sent", "updated_at": 123456789 } } } ]Подробнее с документацией можно ознакомиться здесь.При вызове запроса на указанный номер придёт следующее сообщение:По нажатию на кнопку Copy Code пользователь скопирует код. Коды, сгенерированные Telegram можно проверить на соответствие с помощью метода checkVerificationStatus.Проверяем корректность введённого кода:Создайте Интегрированную переменную во вкладке Переменные в PuzzleBot Заполните поле "Ссылка" данной ссылкой:https://gatewayapi.telegram.org/checkVerificationStatusВыберите тип запроса GET или POST Добавьте заголовки: Authorization: Bearer ТОКЕНЗамените ТОКЕН на действующий токен, полученный ранее. Добавьте параметры:request_id - обязательно - айди сессии/предыдущего отправленного сообщения с кодом, который мы будем проверять. Возвращается в поле request_id при отправке кода.code - необязательно - код, который ввёл пользователь у вас на стороне.Возвращаемый ответ: JSON: [ { "ok": true, "result": { "request_id": "12345678901234567", "phone_number": "1234567890", "request_cost": 0, "delivery_status": { "status": "read", "updated_at": 1728154468 }, "verification_status": { "status": "code_valid", "updated_at": 1728204369, "code_entered": "123456" } } } ]В поле result.verification_status.status указано одно из значений code_valid или code_invalid, они отвечают за корректность и корректность введённого кода соответственно.Автор: @RDGlessonsПодпишитесь, чтобы не пропустить наши уроки и статьи.
Хорошая инструкция, очень интересно, где и как это применять
Круто! тут ребята https://notisend.ru/price/stoimost-telegram-gateway/ интегрировали Telegram Gateway. оплата в руб.
Если отправка в Telegram недоступна, код подтверждения будет отправлен через обычное SMS
Где-то уже используешь в своих проектах? или планируешь внедрить?
Пока большой необходимости в нём для своих проектов не вижу, но вероятно я ещё напишу статью с реализацией кейса с регистрацией на мероприятия
Очень интересно, но совсем непонятно, где и зачем это нужно 😁
Коротко и по делу)
а обычные сообщения можно отправлять?