Проверка номера мобильного телефона
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
- Игорь Столяров
- Ветеран движения
- Сообщения: 7373
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Проверка номера мобильного телефона
Привет всем !
Возникло непреодолимое желание проверять номера мобильных телефонов клиентов в программе.
Хотя бы РФ и хотя бы просто по синтаксису ... Существуют ли вообще какие-то описания требований ?
Например те же таблицы или диапазоны корректных кодов операторов ? Правила составления номеров ?
Или может быть кто-нибудь пробовал решить задачу на Clarion ?
Заранее спасибо за наводку ...
Возникло непреодолимое желание проверять номера мобильных телефонов клиентов в программе.
Хотя бы РФ и хотя бы просто по синтаксису ... Существуют ли вообще какие-то описания требований ?
Например те же таблицы или диапазоны корректных кодов операторов ? Правила составления номеров ?
Или может быть кто-нибудь пробовал решить задачу на Clarion ?
Заранее спасибо за наводку ...
За теми кто отстал - не возвращаться. (С) Кодекс
-
- ✯ Ветеран ✯
- Сообщения: 4983
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 7 раз
- Поблагодарили: 20 раз
Проверка номера мобильного телефона
Мне кажется, что мобильный номер в России имеет только десять цифр плюс код страны. Скорее всего и международный такой. Есть у меня разработка программы для биллинга. Могу вечером дома попробовать найти файл данных конторы, которая предоставляет услуги связи, и посмотреть какие есть вообще варианты. Помню, что есть там справочник кодов, который показывает страну/регион+тип ('7903' - 'Россия/Билайн'). Иностранные операторы, сдаётся мне, не расписаны точно. Но надо посмотреть.
We are hard at work… for you.
- Игорь Столяров
- Ветеран движения
- Сообщения: 7373
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Проверка номера мобильного телефона
Ну там у них без нас всё запущено ...
Вижу два пути, постараюсь с этого что-то слепить:
1. Действительно есть таблицы кодов мобильных операторов и правила составления номеров.
Например: http://codificator.ru/code/mobile/
2. Можно "попросить" оператора сервиса SMS рассылок отправить тестовое служебное сообщение
на номер мобильного телефона (бесплатно). Это проверит не только правильность номера, но и его доступность.
При этом такое сообщение на телефоне показано не будет - просто тест связи.
Вижу два пути, постараюсь с этого что-то слепить:
1. Действительно есть таблицы кодов мобильных операторов и правила составления номеров.
Например: http://codificator.ru/code/mobile/
2. Можно "попросить" оператора сервиса SMS рассылок отправить тестовое служебное сообщение
на номер мобильного телефона (бесплатно). Это проверит не только правильность номера, но и его доступность.
При этом такое сообщение на телефоне показано не будет - просто тест связи.
За теми кто отстал - не возвращаться. (С) Кодекс
-
- ✯ Ветеран ✯
- Сообщения: 4983
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 7 раз
- Поблагодарили: 20 раз
Проверка номера мобильного телефона
1. Сейчас номер как-бы "отвязан" от оператора. В общем не важно, Мегафон, МТС и т.д.
2. А если телефон выключен?
Мне кажется - синтаксис однозначный, 10 цифр. Доступность номера в данный момент - совсем под вопросом. Операторы не блокируют какое-то время даже номер с долгами. А потом передают номер другому (я с этим столкнулся, вообще хохма).
2. А если телефон выключен?
Мне кажется - синтаксис однозначный, 10 цифр. Доступность номера в данный момент - совсем под вопросом. Операторы не блокируют какое-то время даже номер с долгами. А потом передают номер другому (я с этим столкнулся, вообще хохма).
We are hard at work… for you.
- Игорь Столяров
- Ветеран движения
- Сообщения: 7373
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Проверка номера мобильного телефона
Да, и начало должно быть "+79" или '89'. В номере не должно быть ничего кроме цифр, скобок и разделителей (пробел, дефис).
Ну и опционально, проверка доступности. Уже хорошо.
За теми кто отстал - не возвращаться. (С) Кодекс
-
- ✯ Ветеран ✯
- Сообщения: 4983
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 7 раз
- Поблагодарили: 20 раз
Проверка номера мобильного телефона
Надо ещё посмотреть - нет ли кодов городов, начинающихся с девятки.
We are hard at work… for you.
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1376
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 7 раз
- Поблагодарили: 1 раз
- Контактная информация:
- Admin
- Администратор
- Сообщения: 3959
- Зарегистрирован: 05 Июль 2005, 15:59
- Откуда: Хабаровск
- Благодарил (а): 25 раз
- Поблагодарили: 22 раза
- Контактная информация:
Проверка номера мобильного телефона
Требование вводить в международном формате!
А дальше я бы вот такое предложил:
А дальше я бы вот такое предложил:
Код: Выделить всё
PROGRAM
MAP
PhoneNumber(STRING Phone),STRING
END
CODE
MESSAGE(|
PhoneNumber('8-914-541-23-92')&'|'&|
PhoneNumber('8-(914)54123-92')&'|'&|
PhoneNumber('8-09-1-4-5-4-1-2-,3-92 телефон')&'|'&|
PhoneNumber('+8234523455914-541-23-92')&'|'&|
PhoneNumber('8-(914-541-23-92)')&'|'&|
PhoneNumber('8-41-23-92)'))
PhoneNumber PROCEDURE(STRING Phone)!,STRING
lCik BYTE
lPos BYTE(10)
lPhone STRING(10)
CODE
LOOP lCik = LEN(Phone) TO 1 BY -1
IF MATCH(Phone[lCik],'[0-9]', Match:Regular)
lPhone[lPos] = Phone[lCik]
lPos-=1
IF lPos = 0 THEN BREAK END
END
END
lPhone = LEFT(lPhone)
IF LEN(CLIP(lPhone)) = 10
RETURN '+7'&lPhone
END
RETURN '-BAD CALL-'
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
- Admin
- Администратор
- Сообщения: 3959
- Зарегистрирован: 05 Июль 2005, 15:59
- Откуда: Хабаровск
- Благодарил (а): 25 раз
- Поблагодарили: 22 раза
- Контактная информация:
Проверка номера мобильного телефона
Хотя да, такое верно наверное только для России
За границей, кто в лес кто по дрова: https://www.virtualvista.com/app/public ... es?lang=ru
За границей, кто в лес кто по дрова: https://www.virtualvista.com/app/public ... es?lang=ru
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
-
- ✯ Ветеран ✯
- Сообщения: 4983
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 7 раз
- Поблагодарили: 20 раз
Проверка номера мобильного телефона
Да уж. Без локализации не обойтись. Вот iPhone чётко отображает - +7 (ххх) ххх-хх-хх. Видимо, внутри есть настройка на формат телефона в России.Admin писал(а): ↑03 Август 2017, 8:09 За границей, кто в лес кто по дрова: https://www.virtualvista.com/app/public ... es?lang=ru
We are hard at work… for you.
-
- ✯ Ветеран ✯
- Сообщения: 1702
- Зарегистрирован: 25 Март 2009, 21:55
- Благодарил (а): 9 раз
- Поблагодарили: 4 раза
Проверка номера мобильного телефона
толку от номера? в скайпе можно любой придуманный номер указать и с него звонить не говоря про другие мессенджеры
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
- Игорь Столяров
- Ветеран движения
- Сообщения: 7373
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Проверка номера мобильного телефона
Не о том песня эта ... причём совсем. Нет задачи контролировать по номеру звонящего абонента.
Есть масса мест, где клиент сообщает оператору свой номер телефона: контактные реквизиты при сдаче в ремонт,
приём моментальных платежей для пополнения баланса, сейчас еще и он-лайн чеки при любой оплате и т.д.
Человеку свойственно ошибаться, особенно когда вводишь эти номера телефонов по сотне в день: там "+" забыл
перед "7", в другом месте пропустил первую "8", два раза сработала клавиша при нажатии цифры и т.д.
Нужен хотя бы минимальный контроль вводимых данных, что бы потом система могла по этим номерам
отправлять уведомления, проводить платежи, отправлять чеки и т.д. Вот и всё. И не более того ...
За теми кто отстал - не возвращаться. (С) Кодекс
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1376
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 7 раз
- Поблагодарили: 1 раз
- Контактная информация:
Проверка номера мобильного телефона
Так задай в поле пользовательский формат и всё
@K+7 (###) ###-##-##K
От опечатки в цифре вряд ли что-то поможет
@K+7 (###) ###-##-##K
От опечатки в цифре вряд ли что-то поможет
-
- ✯ Ветеран ✯
- Сообщения: 1702
- Зарегистрирован: 25 Март 2009, 21:55
- Благодарил (а): 9 раз
- Поблагодарили: 4 раза
Проверка номера мобильного телефона
А чем двух факторная верификация не устраивает? через смс?Игорь Столяров писал(а): ↑03 Август 2017, 16:45
Не о том песня эта ... причём совсем. Нет задачи контролировать по номеру звонящего абонента.
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
- Игорь Столяров
- Ветеран движения
- Сообщения: 7373
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Проверка номера мобильного телефона
Тоже хороший вариант, но не гибкий. Кто-то оставляет городской номер, кто-то мобильный ...
Опять-таки, как верно заметили ранее, попадаются номера украинских операторов и т.д.
За теми кто отстал - не возвращаться. (С) Кодекс