Фильтр телефонов — различия между версиями
(→Новый фильтр) |
|||
(не показано 13 промежуточных версий 4 участников) | |||
Строка 1: | Строка 1: | ||
− | '''Фильтр | + | '''Фильтр телефонов''' — выражение, определяющее набор номеров сотовых телефонов. |
− | |||
Синтаксис выражений, определяющих фильтры, совпадает с синтаксисом регулярных выражений. | Синтаксис выражений, определяющих фильтры, совпадает с синтаксисом регулярных выражений. | ||
− | == Окно «Фильтры | + | == Окно «Фильтры телефонов» == |
− | |||
{{картинка|Окно Фильтры телефонов в ТМ2.png}} | {{картинка|Окно Фильтры телефонов в ТМ2.png}} | ||
− | В | + | В окне "Фильтры телефонов", как и в [[Окна {{ТМ}}|других]], есть панель инструментов и таблица. |
В таблице отображается список фильтров телефонов. | В таблице отображается список фильтров телефонов. | ||
Строка 16: | Строка 14: | ||
== Новый фильтр == | == Новый фильтр == | ||
− | [[Изображение: | + | [[Изображение:Фильтр телефона для SMPP.png|thumb|Создание нового фильтра]] |
Чтобы создать новый фильтр, откройте окно фильтров и нажмите кнопку {{button|Добавить запись}}, либо клавишу {{key|Insert}}. | Чтобы создать новый фильтр, откройте окно фильтров и нажмите кнопку {{button|Добавить запись}}, либо клавишу {{key|Insert}}. | ||
В открывшемся окне заполните все необходимые поля: | В открывшемся окне заполните все необходимые поля: | ||
# В поле {{button|Наименование}} укажите характеризующее фильтр наименование. | # В поле {{button|Наименование}} укажите характеризующее фильтр наименование. | ||
− | # В поле {{button|Приоритет}} укажите приоритет действия фильтра (чем меньше число, тем | + | # В поле {{button|Приоритет}} укажите приоритет действия фильтра (чем меньше число, тем выше приоритет). |
# В поле {{button|ИД устройства}} укажите номер устройства (только для [[Модуль СМС|модуля СМС]], см. ниже). | # В поле {{button|ИД устройства}} укажите номер устройства (только для [[Модуль СМС|модуля СМС]], см. ниже). | ||
# В поле {{button|Выражение}} укажите непосредственно выражение фильтра. | # В поле {{button|Выражение}} укажите непосредственно выражение фильтра. | ||
Строка 50: | Строка 48: | ||
Обратите внимание на то, что во втором случае символу {{code|+}} предшествует {{коммент|обратная косая черта|Backslash}} — это диктуется синтаксисом регулярных выражений. | Обратите внимание на то, что во втором случае символу {{code|+}} предшествует {{коммент|обратная косая черта|Backslash}} — это диктуется синтаксисом регулярных выражений. | ||
− | Помните также о том, что если номера телефонов попадают в базу данных из устройства связи посредством [[Модули | + | Помните также о том, что если номера телефонов попадают в базу данных из устройства связи посредством [[Модули {{ТМ}}|модуля связи]], то на такой номер действуют [[правила преобразования номеров]]. |
С их помощью вы можете приводить номер из любого вида к тому, который вам нужен для хранения в базе данных. | С их помощью вы можете приводить номер из любого вида к тому, который вам нужен для хранения в базе данных. | ||
Рекомендуется хранить номера в федеральном формате. | Рекомендуется хранить номера в федеральном формате. | ||
Строка 63: | Строка 61: | ||
# {{code|8909\d{7}$}} — этому выражению соответствуют все номера, которые начинаются на {{code|8909}} (оператор МТС Приволжского района), за которыми следуют 7 любых цифр. | # {{code|8909\d{7}$}} — этому выражению соответствуют все номера, которые начинаются на {{code|8909}} (оператор МТС Приволжского района), за которыми следуют 7 любых цифр. | ||
− | + | По правилам синтаксиса регулярных выражений знак {{code|+}}, с которого могут начинаться сотовые телефоны (например, {{code|+7909...}}), не может быть указан в таком виде, поскольку является спецсимволом. | |
Его нужно «закрывать» (escape) обратной косой чертой (backslash) таким образом: | Его нужно «закрывать» (escape) обратной косой чертой (backslash) таким образом: | ||
{{code|\+79\d{9}}}. | {{code|\+79\d{9}}}. | ||
==== Пример выражения для [[SMPP]] ==== | ==== Пример выражения для [[SMPP]] ==== | ||
− | [[Изображение:Фильтр телефона для SMPP.png|thumb|Фильтр для SMPP в | + | [[Изображение:Фильтр телефона для SMPP.png|thumb|Фильтр для SMPP в Такси-Мастер (ИД устройства — {{code|0}}, так как в [[Конфигуратор СМС-сервера|конфигураторе]] это устройство находится на вкладке {{tab|Устройство #1}})]] |
Провайдер СМС, с которым [[СМС-сервер]] работает по протоколу [[SMPP]], может накладывать ограничение на номера телефонов получателей СМС. | Провайдер СМС, с которым [[СМС-сервер]] работает по протоколу [[SMPP]], может накладывать ограничение на номера телефонов получателей СМС. | ||
Чаще всего провайдер требует, чтобы номер был в международном формате — для России, к примеру, он начинается с {{code|7}} {{серым|(а не с {{code|8}}, как это принято)}}. | Чаще всего провайдер требует, чтобы номер был в международном формате — для России, к примеру, он начинается с {{code|7}} {{серым|(а не с {{code|8}}, как это принято)}}. | ||
Чтобы не исправлять все номера в базе данных, вы можете настроить фильтр следующим образом: | Чтобы не исправлять все номера в базе данных, вы можете настроить фильтр следующим образом: | ||
− | * {{field|Выражение}} — {{code|89\d{9}$}} (все номера, начинающиеся с | + | * {{field|Выражение}} — {{code|89\d{9}$}} (все номера, начинающиеся с 89, например, 89120123456). |
* В поле {{field|Параметры}} укажите параметры таким образом, чтобы бралась значащая часть номера (последние десять знаков), и к ней подставлялся префикс {{code|7}}. | * В поле {{field|Параметры}} укажите параметры таким образом, чтобы бралась значащая часть номера (последние десять знаков), и к ней подставлялся префикс {{code|7}}. | ||
Строка 89: | Строка 87: | ||
Его назначение — указать дополнительные параметры редактируемому фильтру, причем для разных типов устройств параметры различаются. | Его назначение — указать дополнительные параметры редактируемому фильтру, причем для разных типов устройств параметры различаются. | ||
− | + | {{Окна ТМ}} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Ссылки == | == Ссылки == | ||
* {{code/url|http://ru.wikipedia.org/wiki/Регулярные_выражения}} — о регулярных выражениях на Википедии. | * {{code/url|http://ru.wikipedia.org/wiki/Регулярные_выражения}} — о регулярных выражениях на Википедии. | ||
− | |||
[[Категория:Клиентская часть]] | [[Категория:Клиентская часть]] | ||
− | |||
[[Категория:Модуль СМС]] | [[Категория:Модуль СМС]] | ||
[[Категория:SMPP]] | [[Категория:SMPP]] |
Текущая версия на 14:42, 24 декабря 2021
Фильтр телефонов — выражение, определяющее набор номеров сотовых телефонов. Синтаксис выражений, определяющих фильтры, совпадает с синтаксисом регулярных выражений.
Содержание
Окно «Фильтры телефонов»
В окне "Фильтры телефонов", как и в других, есть панель инструментов и таблица. В таблице отображается список фильтров телефонов.
Открывается окно «Фильтры телефонов» через главное меню:
Новый фильтр
Чтобы создать новый фильтр, откройте окно фильтров и нажмите кнопку Добавить запись , либо клавишу Insert. В открывшемся окне заполните все необходимые поля:
- В поле Наименование укажите характеризующее фильтр наименование.
- В поле Приоритет укажите приоритет действия фильтра (чем меньше число, тем выше приоритет).
- В поле ИД устройства укажите номер устройства (только для модуля СМС, см. ниже).
- В поле Выражение укажите непосредственно выражение фильтра.
- В поле Параметры укажите параметры работы фильтра (см. ниже).
- В поле Описание введите краткое описание фильтра.
- Нажмите OK .
Создайте столько фильтров, сколько вам нужно. Перезапустите Такси-Мастер, чтобы измененные параметры вступили в силу.
В поле ИД устройства необходимо указывать порядковый номер устройства, начиная с нулевого. В то же время, в конфигураторе отчет идет с первого, а не с нулевого. Это значит, что, например, на вкладке Устройство #4 в конфигураторе находится устройство, ИД которого — 3 (всегда на 1 меньше).
Будьте внимательны!
Какое выражение выбрать?
Выражение фильтра зависит от того, в каком виде номера хранятся в базе данных. При попытке отправить номер телефона берется, например, из карточки заказа (по сути, из базы данных) и сравнивается с выражением. Если номер, на который Такси-Мастер пытается отправить СМС, не подходит под выражение, он считается неподходящим, и отправка не происходит.
Рассмотрим пример. Если в базе данных номера хранятся в федеральном формате, то есть начинаются с цифры обратная косая черта? — это диктуется синтаксисом регулярных выражений.
8 , то выражение также должно начинаться на 8 . Если в международном формате, то есть +7 , — то выражение должно начинаться с +7 . Для первого случая подходит фильтр 89\d{9}$ , для второго — \+79\d{9}$ . Обратите внимание на то, что во втором случае символу + предшествуетПомните также о том, что если номера телефонов попадают в базу данных из устройства связи посредством модуля связи, то на такой номер действуют правила преобразования номеров. С их помощью вы можете приводить номер из любого вида к тому, который вам нужен для хранения в базе данных. Рекомендуется хранить номера в федеральном формате.
Еще один момент — когда вы отправляете СМС через SMPP-сервер. В этом случае выражение имеет дополнительные параметры.
Примеры выражений
Чаще всего используются лишь несколько выражений:
- 89\d{9}$ — выражение, которому соответствуют все номера, начинающиеся на 89 и содержащие 11 цифр ( 89 и еще девять цифр), то есть все сотовые.
- 8909\d{7}$ — этому выражению соответствуют все номера, которые начинаются на 8909 (оператор МТС Приволжского района), за которыми следуют 7 любых цифр.
По правилам синтаксиса регулярных выражений знак
+ , с которого могут начинаться сотовые телефоны (например, +7909... ), не может быть указан в таком виде, поскольку является спецсимволом. Его нужно «закрывать» (escape) обратной косой чертой (backslash) таким образом: \+79\d{9 }.Пример выражения для SMPP
Провайдер СМС, с которым СМС-сервер работает по протоколу SMPP, может накладывать ограничение на номера телефонов получателей СМС. Чаще всего провайдер требует, чтобы номер был в международном формате — для России, к примеру, он начинается с 7 (а не с . Чтобы не исправлять все номера в базе данных, вы можете настроить фильтр следующим образом: 8 , как это принято)
- Выражение — 89\d{9}$ (все номера, начинающиеся с 89, например, 89120123456).
- В поле Параметры укажите параметры таким образом, чтобы бралась значащая часть номера (последние десять знаков), и к ней подставлялся префикс 7 .
В поле Параметры нужно указать следующее:
Prefix=7 Sign=10
После этого всем номерам, которые начинаются с
8 и содержат 11 знаков, вместо 8 будет подставляться 7 .Параметры
В карточке фильтра присутствует поле Параметры . Это поле доступно только тогда, когда к Такси-Мастер подключен модуль СМС. Его назначение — указать дополнительные параметры редактируемому фильтру, причем для разных типов устройств параметры различаются.
Окна Такси-Мастер | |||
---|---|---|---|
Основные | Заказы | ||
Экипажи | Клиенты | ||
Водители | Отчеты | ||
Телефония | СМС |
Ссылки
- http://ru.wikipedia.org/wiki/Регулярные_выражения — о регулярных выражениях на Википедии.