Фильтр телефонов — различия между версиями
(→Пример выражения для SMPP) |
|||
| (не показаны 22 промежуточные версии 4 участников) | |||
| Строка 1: | Строка 1: | ||
| − | '''Фильтр | + | '''Фильтр телефонов''' — выражение, определяющее набор номеров сотовых телефонов. |
| − | |||
Синтаксис выражений, определяющих фильтры, совпадает с синтаксисом регулярных выражений. | Синтаксис выражений, определяющих фильтры, совпадает с синтаксисом регулярных выражений. | ||
| − | == Окно {{ | + | == Окно «Фильтры телефонов» == |
| − | + | ||
| − | + | {{картинка|Окно Фильтры телефонов в ТМ2.png}} | |
| − | + | ||
| + | В окне "Фильтры телефонов", как и в [[Окна {{ТМ}}|других]], есть панель инструментов и таблица. | ||
| + | В таблице отображается список фильтров телефонов. | ||
| + | |||
| + | Открывается окно «Фильтры телефонов» через главное меню: | ||
| + | |||
| + | {{картинка|Пункт Фильтры телефонов в главном меню.png}} | ||
== Новый фильтр == | == Новый фильтр == | ||
| − | [[Изображение: | + | [[Изображение:Фильтр телефона для SMPP.png|thumb|Создание нового фильтра]] |
Чтобы создать новый фильтр, откройте окно фильтров и нажмите кнопку {{button|Добавить запись}}, либо клавишу {{key|Insert}}. | Чтобы создать новый фильтр, откройте окно фильтров и нажмите кнопку {{button|Добавить запись}}, либо клавишу {{key|Insert}}. | ||
В открывшемся окне заполните все необходимые поля: | В открывшемся окне заполните все необходимые поля: | ||
# В поле {{button|Наименование}} укажите характеризующее фильтр наименование. | # В поле {{button|Наименование}} укажите характеризующее фильтр наименование. | ||
| − | # В поле {{button|Приоритет}} укажите приоритет действия фильтра (чем меньше число, тем | + | # В поле {{button|Приоритет}} укажите приоритет действия фильтра (чем меньше число, тем выше приоритет). |
| − | # В поле {{button|ИД устройства}} укажите номер устройства (только для [[Модуль СМС|модуля СМС]]). | + | # В поле {{button|ИД устройства}} укажите номер устройства (только для [[Модуль СМС|модуля СМС]], см. ниже). |
# В поле {{button|Выражение}} укажите непосредственно выражение фильтра. | # В поле {{button|Выражение}} укажите непосредственно выражение фильтра. | ||
# В поле {{button|Параметры}} укажите параметры работы фильтра (см. ниже). | # В поле {{button|Параметры}} укажите параметры работы фильтра (см. ниже). | ||
| Строка 23: | Строка 28: | ||
Создайте столько фильтров, сколько вам нужно. | Создайте столько фильтров, сколько вам нужно. | ||
{{commit settings}} | {{commit settings}} | ||
| + | |||
| + | {{предупреждение| | ||
| + | В поле {{field|ИД устройства}} необходимо указывать порядковый номер устройства, начиная с нулевого. | ||
| + | В то же время, в [[Конфигуратор СМС-сервера|конфигураторе]] отчет идет с первого, а не с нулевого. | ||
| + | Это значит, что, например, на вкладке {{tab|Устройство #4}} в конфигураторе находится устройство, ИД которого — 3 (всегда на 1 меньше). | ||
| + | |||
| + | Будьте внимательны! | ||
| + | }} | ||
| + | |||
| + | == Какое выражение выбрать? == | ||
| + | Выражение фильтра зависит от того, в каком виде номера хранятся в базе данных. | ||
| + | При попытке отправить номер телефона берется, например, из карточки заказа (по сути, из базы данных) и сравнивается с выражением. | ||
| + | Если номер, на который Такси-Мастер пытается отправить СМС, не подходит под выражение, он считается неподходящим, и отправка ''не происходит''. | ||
| + | |||
| + | Рассмотрим пример. | ||
| + | Если в базе данных номера хранятся в федеральном формате, то есть начинаются с цифры {{code|8}}, то выражение также должно начинаться на {{code|8}}. | ||
| + | Если в международном формате, то есть {{code|+7}}, — то выражение должно начинаться с {{code|+7}}. | ||
| + | Для первого случая подходит фильтр {{code|89\d{9}$}}, для второго — {{code|\+79\d{9}$}}. | ||
| + | Обратите внимание на то, что во втором случае символу {{code|+}} предшествует {{коммент|обратная косая черта|Backslash}} — это диктуется синтаксисом регулярных выражений. | ||
| + | |||
| + | Помните также о том, что если номера телефонов попадают в базу данных из устройства связи посредством [[Модули {{ТМ}}|модуля связи]], то на такой номер действуют [[правила преобразования номеров]]. | ||
| + | С их помощью вы можете приводить номер из любого вида к тому, который вам нужен для хранения в базе данных. | ||
| + | Рекомендуется хранить номера в федеральном формате. | ||
| + | |||
| + | Еще один момент — когда вы отправляете СМС через [[SMPP]]-сервер. | ||
| + | В этом случае [[#Пример выражения для SMPP|выражение имеет дополнительные параметры]]. | ||
=== Примеры выражений === | === Примеры выражений === | ||
| Строка 30: | Строка 61: | ||
# {{code|8909\d{7}$}} — этому выражению соответствуют все номера, которые начинаются на {{code|8909}} (оператор МТС Приволжского района), за которыми следуют 7 любых цифр. | # {{code|8909\d{7}$}} — этому выражению соответствуют все номера, которые начинаются на {{code|8909}} (оператор МТС Приволжского района), за которыми следуют 7 любых цифр. | ||
| − | + | По правилам синтаксиса регулярных выражений знак {{code|+}}, с которого могут начинаться сотовые телефоны (например, {{code|+7909...}}), не может быть указан в таком виде, поскольку является спецсимволом. | |
| − | Его нужно «закрывать» обратной косой чертой (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}}. | ||
| Строка 56: | Строка 87: | ||
Его назначение — указать дополнительные параметры редактируемому фильтру, причем для разных типов устройств параметры различаются. | Его назначение — указать дополнительные параметры редактируемому фильтру, причем для разных типов устройств параметры различаются. | ||
| − | + | {{Окна ТМ}} | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
== Ссылки == | == Ссылки == | ||
| Строка 85: | Строка 93: | ||
[[Категория:Клиентская часть]] | [[Категория:Клиентская часть]] | ||
| − | |||
[[Категория:Модуль СМС]] | [[Категория:Модуль СМС]] | ||
[[Категория: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/Регулярные_выражения — о регулярных выражениях на Википедии.

