Пересилання вхідних SMS в інший чат Telegram або на webhook
Оновлено
Вхідні SMS на приватному номері приходять у діалог з ботом, але це зручно лише для однієї людини. Якщо код має бачити команда або його треба передати в систему, повідомлення пересилають далі: в інший чат Telegram або на webhook. Ми рекомендуємо SMS Activate App, сервіс видає приватний (не спільний) номер на 28 днів, приймає SMS і дзвінки, а вхідні повідомлення вміє пересилати в чат Telegram або на webhook. Розглянемо обидва варіанти, їхні налаштування та типові помилки.
Навіщо пересилати SMS далі
Діалог з ботом показує повідомлення лише тому, хто ним керує. Для робочого процесу цього мало: код підтвердження має бачити вся зміна, а іноді його треба передати в базу або систему сповіщень.
Пересилання вирішує дві задачі. Перша: дублювання повідомлення в інший чат Telegram, де його бачать колеги. Друга: передача даних на власний endpoint, де текст можна зберегти, обробити або розіслати кільком напрямками.
- Чат Telegram підходить для невеликої команди, якій достатньо просто бачити текст.
- Webhook підходить, коли дані мають потрапити в базу, систему сповіщень або внутрішнього бота.
- Обидва способи дублюють вміст SMS, тому доступ до місця призначення варто обмежити.
Пересилання в інший чат Telegram
Спочатку підготуйте місце призначення. Це може бути окремий діалог з ботом, група або канал, куди додано вашого бота.
- Створіть групу або канал і додайте туди бота, який приймає SMS.
- Дайте боту право публікувати повідомлення. У групах без цього права текст не з'явиться.
- Дізнайтеся ID чату. Це число, а не назва: для груп і каналів воно з'являється в адресі веб-версії Telegram, для особистого чату це ваш ID користувача.
- Вставте ID у поле пересилання в налаштуваннях номера і збережіть значення.
- Надішліть тестове повідомлення на номер і перевірте, що текст з'явився саме в потрібному чаті.
Знак мінуса і формат ID
ID груп і каналів від'ємний, а для супергруп і каналів починається з -100. Якщо скопіювати число без цього префікса або обрізати його, повідомлення піде не туди або не дійде взагалі.
Особистий діалог з ботом теж можна використати як місце призначення, але тоді всі повідомлення бачите лише ви. Для команди краще група з обмеженим списком учасників.
Після зміни складу групи або її перетворення на супергрупу ID може змінитися. У такому разі пересилання треба налаштувати заново.
Пересилання на webhook для команди
Webhook, або адреса зворотного виклику, це HTTPS-ендпойнт вашого сервера, на який надсилається запит щоразу, коли на номер приходить SMS. SMS Activate App дозволяє задати таку адресу в налаштуваннях номера, і повідомлення перестають бути прив'язаними до Telegram-чату.
У тілі запиту приходять дані повідомлення: номер, на який надійшов текст, відправник, сам текст і час отримання. Точний формат перевірте на тестовому повідомленні, бо він може відрізнятися від того, що ви очікували.
Endpoint має відповідати швидко і кодом 200. Повторні спроби можливі, але ви не керуєте їхньою кількістю, тому зберігайте повідомлення у власній базі одразу після прийому, а не чекайте наступної доставки.
Якщо команда працює в Telegram, зручна схема така: приймаєте webhook, обробляєте дані і далі самі розсилаєте їх у потрібні чати або канали. Так один номер обслуговує кілька напрямків без зайвих налаштувань.
Безпека доступу до кодів
Пересилання робить код доступним ширшому колу людей, ніж діалог з ботом. Ставтеся до цих повідомлень як до паролів.
- Обмежте склад групи або каналу: залишайте тільки тих, кому справді потрібен код.
- Не публікуйте переслані SMS у відкритих каналах і загальних чатах.
- Адресу webhook вважайте секретом: використовуйте HTTPS, не додавайте її в публічні репозиторії, чати та логи.
- Якщо адресу або склад чату змінили, перегляньте налаштування пересилання ще раз.
- Не зберігайте повний текст кодів у відкритих логах, якщо для цього немає робочої потреби.
Типові помилки та що перевірити
Більшість проблем пов'язана не з самим пересиланням, а з місцем призначення. Перевіряйте пункти по черзі.
- Бота немає в чаті або він без права публікувати повідомлення.
- ID чату скопійовано без знака мінус, з зайвими пробілами або зайвими символами.
- Endpoint повертає помилку, відповідає довго або недоступний ззовні.
- Пересилання вимкнено в налаштуваннях номера.
- На номер не приходять повідомлення взагалі: перевірте, чи підходить він для вашої платформи.
Що перевірити перед оплатою номера
SMS Activate App видає приватний (не спільний) номер на 28 днів. Оренда продовжується автоматично кожні 28 днів, поки вистачає балансу, і це можна вимкнути. Ціни стартують від $8 за 28 днів, номери зараз доступні в Австралія, Канада, Велика Британія, Ізраїль, Пуерто-Рико, Швеція і Сполучені Штати.
Поповнити баланс можна банківською карткою або криптовалютою, а керувати номером зручно як на сайті, так і в Telegram. Перед оплатою переконайтеся, що номер підходить для вашої платформи, бо плата за оренду не повертається.
Пересилання в чат Telegram підходить для команди, а webhook для системної обробки. У будь-якому випадку перевіряйте налаштування тестовим повідомленням і обмежуйте доступ до кодів.
Перейти до SMS Activate Appsms-activate.appЧасті запитання
Чи можна пересилати SMS в кілька чатів одночасно?
Як правило, для номера задається одне місце призначення: або чат Telegram, або webhook. Якщо повідомлення мають потрапити в кілька місць, приймайте їх на власний endpoint і розподіляйте вже там.
Що буде з пересиланням, коли сплине оплачений період?
Номер орендується на 28 днів, а продовження вмикається автоматично, поки вистачає балансу. Якщо продовження вимкнено або балансу не вистачило, номер перестає приймати повідомлення, а разом із ним зупиняється і пересилання.
Куди звертатися, якщо пересилання не працює?
Опишіть ситуацію на contact@sms-activate.bot: вкажіть номер, час повідомлення і те, що ви вже перевірили. Це прискорить розбір.
Більше посібників
Як отримувати SMS і дзвінки в Telegram за номером із бота
Як підключити номер у Telegram-боті та приймати на нього SMS і дзвінки: оренда, пересилання повідомлень, вибір країни, оплата й продовження.
Читати посібник →Оренда приватного номера в Telegram-боті: покрокова інструкція
Покрокова інструкція з оренди приватного номера в Telegram-боті: поповнення балансу, оплата на 28 днів і читання вхідних SMS та дзвінків.
Читати посібник →Telegram-бот чи сайт: де зручніше керувати віртуальним номером
Порівнюємо Telegram-бота та сайт для керування віртуальним номером: що однакове, чим відрізняється, і що зручніше для вашого сценарію роботи.
Читати посібник →