Как получить городской номер телефона клиента
В данной статье мы расскажем, как получить от клиента имя и городской либо мобильный номер телефона. Полученные данные будут отправляться в личные сообщения администратора бота в канале Telegram.
Если вам нужно получать только мобильные номера телефонов, вы можете использовать готовый интент Номер телефона или блок phone to $var .
Получение данных клиента
Получение имени
- Создайте новый сценарий для чат-бота и добавьте экран с блоком Текст с приветствием и просьбой ввести имя.
- На этом же экране нажмите + БЛОК → Еще блоки → Имена.
Раздел Еще блоки содержит готовые интенты.
Готовый интент Имена будет распознавать российские имена, которые содержатся в системном справочнике $NAME . Когда бот распознает имя, он поместит его в переменную $NAME . Интент Имена принимает только те имена, которые есть в справочнике $NAME . Чтобы распознавать имена, которых нет в справочнике, необходимо дополнить сценарий. - Соедините опцию Любая другая фраза с этим же экраном, чтобы бот спрашивал у клиента имя до тех пор, пока клиент его не напишет.
Если вы общаетесь с клиентом в канале, где уже указано его имя, вы можете получить имя из канала при помощи переменной $rawRequest .
Получение номера телефона
- От интента Имена создайте второй экран с блоком Текст и напишите в нем просьбу ввести номер телефона.
- На этот же экран добавьте блок Интенты.
- Для получения городских и мобильных номеров телефонов скопируйте следующее регулярное выражение:
$regexp<^((8|+7)[- ]?)?((?d<3>)?[- ]?)?[d- ]$>
Внутри $regexp<> вы можете использовать любое регулярное выражение. Чтобы добавлять свои регулярные выражения, используйте синтаксис их написания на языке Java.
Публикация бота в канале Telegram
Перейдите к инструкции по подключению канала Telegram и выполните ее шаги, чтобы опубликовать бота.
После подключения канала Telegram перейдите к следующему шагу этой статьи.
Получение chat_id
Чтобы бот отправлял данные клиентов в ваш аккаунт или группу в Telegram, вам нужно получить chat_id аккаунта или группы.
Для аккаунта
Для группы
Если вы хотите отправлять сообщения в группу Telegram, а не в личные сообщения отдельного аккаунта, тогда:
- Создайте группу в Telegram.
- Перейдите в диалог с вашим ботом в Telegram.
- Нажмите → Добавить в группу.
- Добавьте бота в нужную группу.
- Проделайте те же шаги, что и для получения chat_id для аккаунта, только замените выражение в текстовом блоке на $rawRequest.message.chat.id , чтобы получить chat_id группы:
Отправка данных клиента
Данные от клиента будут отправляться боту через Telegram API.
- Добавьте в сценарий блок HTTP-запрос и заполните его следующим образом:
- Укажите метод GET .
- В поле URL вставьте URL следующего вида: https://api.telegram.org/bot/sendMessage
- В этом URL вместо параметра подставьте токен, полученный от бота BotFather при создании бота в Telegram:
- На вкладке BODY укажите JSON-объект:
- В поле chat_id вставьте идентификатор, полученный на предыдущем шаге.
- В поле text добавьте текст с переменными, где содержится информация о клиенте, которую вы хотите отправить.
«chat_id»: «113468479», «text»: «Имя клиента: $NAME.name, номер телефона: $queryText» >
Здесь $NAME.name — переменная, в которой хранится имя клиента.
В переменной $queryText хранится полный текст ответа клиента на последний запрос. Если вы хотите сохранить ответ клиента на весь сценарий, создайте новую переменную и присвойте ей значение переменной $queryText .
Запрос для отправки данных клиента должен выглядеть следующим образом:
Тестирование отправки данных
Теперь можете протестировать работу сценария.
Для начала нажмите Опубликовать, чтобы изменения в сценарии отправились в Telegram. После этого нажмите Тестировать.
Если вы используете один и тот же аккаунт при создании и при тестировании бота, тогда после получения данных бот пришлет их в тот же диалог:
Бот всегда будет присылать полученные данные в чат с аккаунтом, chat_id которого вы указали в запросе.
Когда реальные клиенты будут отправлять данные боту, он не будет выводить им сообщение с их данными, а отправит его в указанный чат. Чтобы убедиться в этом, вы можете отправить сообщение боту с другого аккаунта.
Возможные ошибки
Если при попытке протестировать сценарий в Telegram бот не реагирует на команду /start , возможно, вы не опубликовали бота в этом канале. Убедитесь, что корректно проделали шаги по публикации бота.
Если при отправке данных клиента возникнет ошибка, бот выведет сообщение с кодом ошибки в чат.
Ошибка -1
Данная ошибка возникает, если вы неправильно оформили HTTP-запрос.
Проверьте, корректно ли вы указали URL. В нем не должно присутствовать пробелов, в том числе в начале и конце URL. Также убедитесь в отсутствии других лишних символов.
Ошибка 400
Эта ошибка также говорит о неверном оформлении HTTP-запроса.
В первую очередь проверьте синтаксис тела запроса на вкладке BODY. В запросе не должны одновременно присутствовать одинарные ‘ ‘ и двойные » » кавычки. Также убедитесь, что в JSON-объекте не пропущены фигурные скобки или запятые.
Чтобы проверить валидность вашего JSON-объекта, вы можете использовать какой-либо сервис по проверке JSON. Например, JSON Formatter.
Если ошибок в JSON-объекте нет, попробуйте удалить Telegram-бота в BotFather, создать бота заново и использовать новый токен в HTTP-запросе.
Дополнение сценария
Системный справочник $NAME , при помощи которого вы запрашиваете имя клиента, содержит ограниченное количество имен.
Вы можете скачать справочник и посмотреть его содержимое, перейдя на вкладку Сущности → Системные справочники и нажав Скачать под справочником $NAME .
В текущем сценарии, если имя клиента не содержится в системном справочнике $NAME , бот будет снова спрашивать имя у клиента. Чтобы избежать этой ситуации и научить бота принимать любые имена с первого раза, дополните сценарий.
Любой введенный клиентом текст сохранится в переменную $queryText до следующего запроса.
Если бот найдет в сообщении клиента сущность $NAME , он присвоит переменной $name значение из справочника. Если бот не найдет сущность в сообщении, в переменную $name он запишет значение $queryText .
«chat_id»: 123456789, «text»: «Имя клиента: $name, номер телефона: $queryText» >
Не забудьте повторно опубликовать сценарий.
Теперь бот будет принимать за имя любой текст, набранный клиентом в ответ на запрос имени.
Пример диалога с клиентом:
Сообщение, которое бот отправит на указанный chat_id :
Вы также можете использовать регулярные выражения для валидации имени. Например, выражение $regexp$> будет принимать слова длиной от двух до пятнадцати символов, состоящие из букв русского алфавита.
Готовый сценарий
Так выглядит весь сценарий:
Источник: help.aimylogic.com
Человек за ботом!
Использовать подменные номера телефонов и менять голос при звонке стало проще: для этого больше не требуется устанавливать специальное приложение, нужен лишь Telegram-бот, выяснил “Ъ”. С одной стороны, появление нового сервиса рискует спровоцировать рост числа телефонных мошенничеств, считают эксперты. Однако он может оказаться полезен и в поимке злоумышленников, если создатели бота начнут сотрудничать с правоохранителями.
Выйти из полноэкранного режима
Развернуть на весь экран
Фото: Олег Харсеев, Коммерсантъ / купить фото
В мессенджере Telegram появился бот, который позволяет подменять номера исходящих вызовов и изменять голос, рассказал “Ъ” глава отдела информационной безопасности «СерчИнформ» Алексей Дрозд. После оплаты бот позволяет ввести в специальное поле номер абонента и номер, который тот должен увидеть.
При совершении звонка пользователю не нужно выходить из Telegram, что открывают доступ к технологии подмены номера любому желающему, отмечает эксперт.
Другие сервисы звонков с подменой номера обычно требуют установки специальной программы и настройки телефонии по интернет-протоколу (IP), рассказывает эксперт. В Telegram уже встроена IP-телефония.
Если звонящий через бот укажет в исходящем номере телефон, который записан в контактах абонента, то на вызываемом устройстве в момент звонка высветится записанное имя, добавляет заместитель руководителя центра реагирования на инциденты информационной безопасности Group-IB Ярослав Каргалев. При такой схеме, по его мнению, опасность в том, что звонящий может выдать себя за родственника, друга или работодателя жертвы с целью вымогательства.
Как мошенники вышли на «удаленку»
Но чаще всего злоумышленники, используя подмену номера, представляются службой безопасности банка и в ходе разговора уговаривают жертву, чтобы она перевела свои деньги на счет мошенника, уточняет господин Дрозд.
По данным Банка России (ЦБ), 80% злоумышленников, звонящих якобы от лица финансовых организаций, используют подмену номеров. Число заблокированных ЦБ мошеннических номеров за первое полугодие 2020 года составило 9,7 тыс. Проблемой уже занялись законодатели: инициативу для борьбы с подменой номера готовит комитет Госдумы по финансовому рынку.
Появление все более простых инструментов для телефонного мошенничества может способствовать его распространению, считает технический директор Trend Micro в России и СНГ Михаил Кондрашин.
В то же время, уточняет господин Кондрашин, наибольший ущерб наносят профессиональные телефонные мошенники, которым такие сервисы не нужны. С этим согласен директор технического департамента RTM Group Федор Музалевский: «Если на рынке станет на один сервис больше — ничего особенно не изменится».
В Telegram появились фейковые рассылки от российских «звезд»
Бот, напротив, может оказаться полезен в поимке мошенников, добавляет Михаил Кондрашин. Его разработчики, например, могут фиксировать всех участников разговора, отмечает он, и если пойдут на контакт с правоохранительными органами, то у последних окажутся реальные номера телефонов злоумышленников.
Между тем подмену номера используют не только мошенники, но и вполне легальный бизнес. Спрос на подобные сервисы вырос в 2020 году на фоне популярности онлайн-заказов и доставки, поясняет ведущий разработчик коммуникационной платформы Voximplant Игорь Шеко.
По словам господина Шеко, подмена номера стала необходимым инструментом для любой компании, желающей обезопасить своих клиентов и сотрудников от нежелательных звонков после оказания услуги.
Новый Telegram-бот, соглашается руководитель направления «Информационная безопасность» IT-компании «Крок» Андрей Заикин, это просто удобный интерфейс доступа к IP-телефонии, которая является вполне легальным сервисом.
Юлия Степанова, Максим Буйлов
- Газета «Коммерсантъ» №19 от 04.02.2021, стр. 1
- Максим Буйлов подписаться отписаться
- Юлия Степанова подписаться отписаться
- Работа Telegram подписаться отписаться
- Телефонное мошенничество подписаться отписаться
- Борьба с мошенничеством и хищениями подписаться отписаться
Источник: www.kommersant.ru