====== Типы шаблонов ======
* **Транзакционный шаблон** - должен укладываться под текст сообщения, который
содержит информацию о движении денежных средств на банковских счетах
юридических и физических лиц. Шаблон обязательно должен содержать переменные;
* **Сервисный шаблон** - должен укладываться под текст сообщения, который содержит
информацию о событиях и/или операциях в рамках оказания сервиса/услуги
заказчиком рассылки. Шаблон обязательно должен содержать переменные.
====== Процедура сопоставления текста с шаблоном ======
Текст сообщения сопоставляется с шаблонами платформы в следующем порядке:
- Если сообщение многосоставное, то все части сообщения склеиваются;
- Текст сообщения нормализуется, то есть:
- Все табуляции и переносы строк заменяются на пробелы;
- Все, что не является буквами, цифрами или пробелом, вырезается;
- Все идущие подряд пробелы объединяются в один;
- Если в сообщении первым и/или последним символом является пробел, то такие пробелы исключаются;
- Текст сообщения приводится к нижнему регистру;
- Текст шаблона нормализуется по тем же правилам, что и текст сообщения;
- Нормализованный текст сообщения сравнивается со всеми заявленными на имя отправителя шаблонами - сначала с сервисными, затем с транзакционными (если шаблон найден в обоих типах, то приоритетным считается сервисный);
- Абоненту передается сообщение в исходном виде.
==== Правила отнесения шаблонов к транзакционным ====
**Транзакционным** признается сообщение, информирующее абонента о проведении в данный момент операции движения денежных средств на его счете, либо о невозможности выполнения такой операции.\\
**Под операцией движения средств мы понимаем:** \\
* состоявшаяся операция зачисления \ прихода \ снятия резерва денежных средств
* состоявшаяся операция списания \ расхода \ перевода \ резервирования денежных средств
* выплата комиссии, начисление % по вкладу, конверсия денежных средств в другую валюту
* отмена либо невозможность совершения перечисленных операций
В транзакционном шаблоне должен быть ЯВНО указан тип операции, номер счета, сумма.\\
Не признаются транзакционными шаблоны, содержащие: \\
* код подтверждения операции (операция еще не произошла);
* уведомления об авторизации/отмене авторизации карты;
* уведомление о верификации/отмене верификации карты;
* уведомление о статусе платежных поручений (принято, исполнено, отвергнуто, на обработке и т.п. кроме случаев, когда результатом изменения статуса стало изменение баланса счета, что так же должно явно следовать из текста шаблона);
* запросы выписки, баланса и результат выполнения этих запросов (кроме случаев, когда за выполнение операции берется комиссия, что так же должно явно следовать из текста шаблона);
* уведомления о просроченных платежах;
* уведомления о выпуске карты и т.п.;
* уведомления о смене статуса карты;
* пароли для входа в систему ДБО;
* смену PIN-кода;
* уведомление о неудачных попытках ввода PIN-кода;
* уведомления о входе/выходе/попытках входа в систему ДБО;
* уведомления о необходимости подтвердить попытку входа в систему ДБО;
* подключение\отключение смс-информирования и других услуг банка, кроме случаев, когда со счета клиента списывается комиссия за подключение услуги;
* шаблоны транзакционного типа, но дополненные информаций рекламного характера (даже услуг клиента).
А также шаблоны, содержащие в явном виде указания на совершенную операцию одного из вышеперечисленных типов – относятся к сервисным.
==== Правила отнесения шаблонов к сервисным: ====
Сервисным признается сообщение, информирующее абонента о статусе оказания ему Сервиса/Услуги Клиента.\\
**Под статусом оказания Сервиса/Услуги мы понимаем:**\\
* Приветственное сообщение по факту регистрации в услуге;
* Информирование пользователя о событиях, влияющих на условия оказания услуг (изменение финансовых условий предоставление сервиса, к примеру, повышение абонентской платы);
* Информирование об изменении телефона (на номер отправляется код, который затем указывается для идентификации пользователя, к примеру, для назначения/смены пароля);
* Подтверждение Заказа/покупки;
* Статус доставки/возврата/обмене товара;
* Напоминания о запланированном событии в рамках оказания услуги (к примеру, о назначенном визите);
* Информирование о технических работах/предупреждений о приостановке/возобновлении работы сервисов;
* Уведомления о входе/выходе/попытках входа в систему самообслуживания Клиента.
* Информация с учетными данными для авторизации в системе Клиента.
* Информирование о расписаниях занятий, текущих и итоговых достижениях, сообщения о внутреннем распорядке или домашнем задании и другие сообщения, отправленные учебными заведениями, которые не противоречат правилам отнесения шаблонов к сервисным.
* Информирование о долге Клиента и реквизиты договора, на основании которого возник долг Клиента;
* Информирование об условиях и графике погашения долга Клиента;
* Информирование Клиента о начислениях/списаниях/сроке использования баллов/погашения купонов в программах лояльности.\\
**Не признаются сервисными шаблоны, содержащие:** \\
* Шаблоны, не содержащие в явном виде указания на совершенную операцию одного из вышеперечисленных типов;
* Шаблоны сервисного типа, но дополненные информаций рекламного характера (даже услуг клиента);
* Побуждение к совершению покупки или заказу услуги;
* Информацию, нацеленную на повышение лояльности (поздравительные рассылки к праздникам, предложение оценить работу сотрудников/офиса, и т. п.);
* Информацию от компаний, не оказывающих услуг для абонентов.
====== Использование переменных ======
* **%w** - любой набор символов (букв и цифр), не разделенных пробелом, эквивалентно переменной **%w{1,1}** (например, "слово" или "B2B");
* **%d** - любой набор цифр, не разделенных пробелом, эквивалентно переменной **%d{1,1}**;
* **%w+** - последовательность слов (могут содержать буквы и цифры), разделенных пробелом (например, "проект B2B");
* **%d+** - последовательность чисел, разделенных пробелом;
* **%w{1,x}** - ограниченная последовательность слов (могут содержать буквы и цифры), разделенных пробелом (нижняя граница 0, верхняя 70), например, **%w{0,3}**;
* **%d{1,x}** - ограниченная последовательность чисел, разделенных пробелом (нижняя граница 0, верхняя 70), например, **%d{0,4}**.
==== Особенности учета переменных и символов в шаблонах и сообщениях: ====
* Слово, число или переменная могут содержать спецсимволы, но при сопоставлении сообщений с шаблонами спецсимволы не учитываются;\\
Набор букв или цифр %d и %w может содержать в себе знаки препинания и спецсимволы: ! № # % . , : ; ? \ / ( ) +
- “ ”― _ ' " ` & ^ ? { } [ ] < > / \ | ! @ # $ % ^ ( ) + = ~ *
**Шаблонирование**
* Единственным возможным разделителем для чисел и слов является пробел, использование нестандартных пробельных символов (неразрывного пробела, короткого пробела и так далее) не рекомендуется ни в шаблонах, ни в текстах сообщений, и может приводить к нестандартным результатам шаблонизации;
* Шаблоны регистронезависимы, то есть оба слова "оплата" и "Оплата" попадут под шаблон "оплата". \\
**Примеры:**
* **1234;5678** – такое выражение не будет являться для системы двумя числами, будет обработано при сопоставлении с шаблонами как **12345678**, в сообщении абоненту будет передано в исходном виде, то есть **1234;5678**;
* **пло_хой** – такое выражение не будет являться для системы двумя словами, будет обработано при сопоставлении с шаблонами как плохой, в сообщении абоненту будет передано в исходном виде, то есть **пло_хой**.
====== Требования к оформлению шаблонов ======
- Шаблон должен быть записан корректно с применением правил применения переменных в шаблоне.
- Корректность написания шаблона – целиком и полностью в зоне ответственности клиента.
- Не стоит необоснованно использовать переменную %w+, в том числе в конце шаблона, это вызовет вопросы модератора.
- Не стоит использовать переменную %w+ для указания таких данных, как электронный адрес, телефон, ссылка, номер карты, дата, ФИО и т.п.
- Операнда %w+ будет гарантировано согласована для использования: - государственными органами - благотворительными фондами - при необходимости указания содержания официально зарегистрированного письма - в сервисном сообщении при описании причин сбоя в системе, сообщениях технического характера, когда оно направлено сотрудникам в целях устранения неполадок и т.п. В остальных случаях ее использование не обоснованно и не подлежит согласованию модератором в обязательном порядке.
- Для указания даты, телефона, пароля - желательно использование операнды %d{1,n}.
- Не стоит объединять все подряд в групповых переменных %w+, %d+, %w{1,n}, %d{1,n}
- C другой стороны не стоит формировать конструкции вида %d. %w+ %d Сумма %w+ %d %w+ %d %w+ %d %w там, где можно обойтись одной\двумя переменными.
- Простое правило: чем читабельнее шаблон для человека, тем меньше вопросов он вызывает при согласовании.
- Следует избегать дублирования шаблонов, кроме случаев, когда шаблон используется для нескольких имен отправителей.
- После обозначения каждой переменной, указанной в п.2, в шаблоне необходимо ставить пробел.
- Если любая переменная из п.2. используется внутри шаблона, то перед ней необходимо ставить пробел.
- Каждое отступление от правил возможно в индивидуальном порядке при согласовании модератором в случае, если есть достаточное обоснование в рамках транзакционного и сервисного характера шаблона.
====== Примеры использования переменных ======
**Пример 1**\\
Шаблон
VISA%d: Покупка на сумму %d руб. %w{1,3} выполнена успешно.
Доступно: %d руб
Пример сообщения, подходящего под шаблон:
VISA12345: Покупка на сумму 10250,00 руб. В
магазине Ромашка, выполнена успешно. Доступно: 100500,00 руб.
Пример сообщения, не подходящего под шаблон:
VISA12345 6789: Покупка на сумму сто руб. В самом лучшем
магазине, выполнена успешно. Доступно: чуть-чуть руб.
**Ошибки:**\\
* Для первой переменной %d допустимо использовать только одно число;
* Для второй переменной %d также допустимо использовать только одно число, в примере использовано слово, что не разрешено для данной переменной;
* Третья переменная %w{1,3} должна содержать только слова и их может быть от 1 до 3, в примере 4 слова, что не разрешено для данной переменной. В данном случае следовало бы использовать в шаблоне переменную %w{1,4} или %w+.
----
**Пример 2**\\
Шаблон
Только сегодня для Вас действует %d скидка на наши услуги! С
Уважением %w
Пример сообщения, подходящего под шаблон:
Только сегодня для Вас действует 15% скидка на наши услуги! С
Уважением Магазин.
Пример сообщения, не подходящего под шаблон:
Только сегодня для Вас действует 15% скидка на наши услуги! С
Уважением Ваш Магазин.
**Ошибки:**\\
* В конце сообщения использовано 2 слова для переменной, где разрешено только 1.
----
**Пример 3**\\
Шаблон
Уважаемый/ая %w{1,2}. За годовое обслуживание кредитной
карты %d Вам начислена комиссия в размере %d RUR.
Пример сообщения, подходящего под шаблон:
Уважаемый/ая Иван Иванов. За годовое обслуживание кредитной
карты 5544 Вам начислена комиссия в размере 70.00 RUR
Пример сообщения, не подходящего под шаблон:
Уважаемый/ая Иван Иванович Иванов. За годовое обслуживание
кредитной карты 5544 Вам начислена комиссия в размере 70.00 RUR.
**Ошибки:**\\
* В начале сообщения использовано 3 слова для переменой, где разрешено только 2.
----
====== Примеры шаблонов по типам ======
==== Транзакционные шаблоны ====
**Пример 1**\\
Шаблон
%d; Выдача наличных; Успешно; Сумма: %d %w; Доступный лимит
снятия: %d %w; %w{1,3} %d; %d+
Пример сообщения, подходящего под шаблон:
4*7825; Выдача наличных; Успешно; Сумма: 5000,00 RUR; Доступный
лимит снятия: 10000.00 RUR; RU/MOSCOW/ATM 11325748525;
01.04.2015 18:15:05
----
**Пример 2**\\
Шаблон
Vash platezh v %w %d na summu %d RUB s karty %d uspeshno
vypolnen.
Пример сообщения, подходящего под шаблон:
Vash platezh v ozon.ru 01.04.2015 na summu 200.00 RUB s karty 5*0258
uspeshno vypolnen.
----
**Пример 3**\\
Шаблон
Vash platezh v %w %d{1,2} na summu %d RUB s karty uspeshno
vypolnen.
Пример сообщения, подходящего под шаблон:
Vash platezh v ozon.ru 01.04.2015 15:12:55 na summu 200.00 RUB s
karty uspeshno vypolnen.
----
==== Сервисные шаблоны ====
**Пример 1**\\
Шаблон
Одноразовый пароль на доступ к личному кабинету %d. Не
передавайте пароль третьим лицам
Пример сообщения, подходящего под шаблон:
Одноразовый пароль на доступ к личному кабинету 89765434. Не
передавайте пароль третьим лицам
----
**Пример 2**\\
Шаблон
Ваш заказ %d в Интерне-магазине выполнен. Срок хранения до %d
включительно.
Пример сообщения, подходящего под шаблон:
Ваш заказ 1278-44 в Интерне-магазине выполнен. Срок хранения до
13.01.2016 включительно.
----
ПРИМЕЧАНИЕ:
- При загрузке шаблонов на платформу автоматически из текста вырезаются все знаки препинания и лишние пробелы в начале и в конце шаблона. При этом абоненты будут получать SMS в том виде, в котором он отправляется на платформу. Т.е. с учетом пунктуации отправителя.
- В случае, если текст SMS будет содержать лишние пробелы в начале и в конце текста, такое SMS платформой будет признано как НЕ соответствующее шаблону.