Фильтр телефонов — различия между версиями

Материал из TaxiMaster
Перейти к: навигация, поиск
(Примеры выражений)
(Пример выражения для SMPP)
Строка 75: Строка 75:
 
Чтобы не исправлять все номера в базе данных, вы можете настроить фильтр следующим образом:
 
Чтобы не исправлять все номера в базе данных, вы можете настроить фильтр следующим образом:
  
* {{field|Выражение}} — {{code|89\d{9}$}} (все номера, начинающиеся с 8, например, 89120123456).
+
* {{field|Выражение}} — {{code|89\d{9}$}} (все номера, начинающиеся с 89, например, 89120123456).
 
* В поле {{field|Параметры}} укажите параметры таким образом, чтобы бралась значащая часть номера (последние десять знаков), и к ней подставлялся префикс {{code|7}}.
 
* В поле {{field|Параметры}} укажите параметры таким образом, чтобы бралась значащая часть номера (последние десять знаков), и к ней подставлялся префикс {{code|7}}.
  

Версия 13:04, 30 ноября 2010

Имеются страницы, на которые следует обратить внимание
Обратите внимание на следующую страницу документации: Окно «Фильтры телефонов» для устройств связи

Фильтр сотовых телефонов — выражение, определяющее набор номеров сотовых телефонов. Фильтры задаются в окне «Фильтры сотовых телефонов». Синтаксис выражений, определяющих фильтры, совпадает с синтаксисом регулярных выражений.

Окно «Фильтры сотовых телефонов»

В Такси-Мастер 2 окно «Фильтры телефонов» выглядит так:

Картинка
Окно Фильтры телефонов в ТМ2.png

В этом окне, как и в других, есть панель инструментов и таблица. В таблице отображается список фильтров телефонов.

Открывается окно «Фильтры телефонов» через главное меню:

Картинка
Пункт Фильтры телефонов в главном меню.png

Новый фильтр

Создание нового фильтра

Чтобы создать новый фильтр, откройте окно фильтров и нажмите кнопку «Добавить запись», либо клавишу Insert. В открывшемся окне заполните все необходимые поля:

  1. В поле «Наименование» укажите характеризующее фильтр наименование.
  2. В поле «Приоритет» укажите приоритет действия фильтра (чем меньше число, тем ниже приоритет).
  3. В поле «ИД устройства» укажите номер устройства (только для модуля СМС, см. ниже).
  4. В поле «Выражение» укажите непосредственно выражение фильтра.
  5. В поле «Параметры» укажите параметры работы фильтра (см. ниже).
  6. В поле «Описание» введите краткое описание фильтра.
  7. Нажмите «OK».

Создайте столько фильтров, сколько вам нужно. Перезапустите Такси-Мастер, чтобы измененные параметры вступили в силу.

Предупреждение!

В поле «ИД устройства» необходимо указывать порядковый номер устройства, начиная с нулевого. В то же время, в конфигураторе отчет идет с первого, а не с нулевого. Это значит, что, например, на вкладке «Устройство #4» в конфигураторе находится устройство, ИД которого — 3 (всегда на 1 меньше).

Будьте внимательны!

Какое выражение выбрать?

Выражение фильтра зависит от того, в каком виде номера хранятся в базе данных. При попытке отправить номер телефона берется, например, из карточки заказа (по сути, из базы данных) и сравнивается с выражением. Если номер, на который Такси-Мастер пытается отправить СМС, не подходит под выражение, он считается неподходящим, и отправка не происходит.

Рассмотрим пример. Если в базе данных номера хранятся в федеральном формате, то есть начинаются с цифры «8», то выражение также должно начинаться на «8». Если в международном формате, то есть «+7», — то выражение должно начинаться с «+7». Для первого случая подходит фильтр «89\d{9}$», для второго — «\+79\d{9}$». Обратите внимание на то, что во втором случае символу «+» предшествует обратная косая черта? — это диктуется синтаксисом регулярных выражений.

Помните также о том, что если номера телефонов попадают в базу данных из устройства связи посредством модуля связи, то на такой номер действуют правила преобразования номеров. С их помощью вы можете приводить номер из любого вида к тому, который вам нужен для хранения в базе данных. Рекомендуется хранить номера в федеральном формате.

Еще один момент — когда вы отправляете СМС через SMPP-сервер. В этом случае выражение имеет дополнительные параметры.

Примеры выражений

Чаще всего используются лишь несколько выражений:

  1. «89\d{9}$» — выражение, которому соответствуют все номера, начинающиеся на «89» и содержащие 11 цифр («89» и еще девять цифр), то есть все сотовые.
  2. «8909\d{7}$» — этому выражению соответствуют все номера, которые начинаются на «8909» (оператор МТС Приволжского района), за которыми следуют 7 любых цифр.

По правилам синтаксиса регулярных выражений знак «+», с которого могут начинаться сотовые телефоны (например, «+7909...»), не может быть указан в таком виде, поскольку является спецсимволом. Его нужно «закрывать» (escape) обратной косой чертой (backslash) таким образом: «\+79\d{9»}.

Пример выражения для SMPP

Фильтр для SMPP в Такси-Мастер 1 (ИД устройства — «0», так как в конфигураторе это устройство находится на вкладке «Устройство #1»)

Провайдер СМС, с которым СМС-сервер работает по протоколу SMPP, может накладывать ограничение на номера телефонов получателей СМС. Чаще всего провайдер требует, чтобы номер был в международном формате — для России, к примеру, он начинается с «7» (а не с «8», как это принято). Чтобы не исправлять все номера в базе данных, вы можете настроить фильтр следующим образом:

  • «Выражение»«89\d{9}$» (все номера, начинающиеся с 89, например, 89120123456).
  • В поле «Параметры» укажите параметры таким образом, чтобы бралась значащая часть номера (последние десять знаков), и к ней подставлялся префикс «7».

В поле «Параметры» нужно указать следующее:

Prefix=7
Sign=10

После этого всем номерам, которые начинаются с «8» и содержат 11 знаков, вместо «8» будет подставляться «7».

Параметры

В карточке фильтра присутствует поле «Параметры». Это поле доступно только тогда, когда к Такси-Мастер подключен модуль СМС. Его назначение — указать дополнительные параметры редактируемому фильтру, причем для разных типов устройств параметры различаются.

Шаблон:Окна ТМ2

Ссылки