Flash SMS, или флеш-сообщение, приходит на телефон как SMS, но при поддержке этого формата сразу открывается на экране. Обычно телефон не добавляет его в переписку автоматически. Сохранить текст вручную можно, если устройство предлагает такую возможность.
В стандарте связи это сообщение класса 0 (Class 0). Его отличие от обычного SMS связано с обработкой на телефоне, а не с более высокой скоростью доставки. Если сообщение появилось во время звонка, это ещё не означает, что звонок и уведомление связаны.
Отправитель задаёт класс сообщения при передаче через SMS-сервис. После доставки совместимый телефон показывает текст сразу, вместо привычного уведомления о новом сообщении в переписке. Внешний вид окна и доступные кнопки зависят от устройства.
Отсутствие автоматического сохранения удобно не во всех случаях. Получатель может закрыть окно, а затем не найти текст. Поэтому для адреса, номера заказа или инструкции, к которой нужно вернуться, лучше выбрать обычное SMS.
| Формат | Как получает пользователь | Что происходит с текстом |
|---|---|---|
| Обычное SMS | Сообщение в приложении для SMS | Обычно остаётся в переписке |
| Flash SMS | Текст сразу на экране, если телефон поддерживает такой режим | Не сохраняется автоматически; ручное сохранение зависит от телефона |
| USSD | Ответ или меню оператора в рамках отдельного сеанса | Не является сообщением в SMS-переписке |
Окно с балансом после команды вида *100# само по себе не служит примером Flash SMS. Если оператор отвечает через USSD, это другая технология, хотя результат тоже виден на экране телефона.
Флеш-сообщение может выглядеть как отдельное окно с текстом и кнопкой закрытия. Нельзя заранее обещать одинаковый экран на всех Android-смартфонах и iPhone: обработка зависит от телефона, его программного обеспечения и того, как сообщение передано в сети.
Стандарт допускает отключение немедленного показа на устройстве. Если такой показ недоступен, телефон должен обрабатывать сообщение по обычным правилам, без учёта класса 0. Поэтому один и тот же формат не стоит оценивать по единственному тесту на одном аппарате.
Если в окне есть кнопка сохранения, воспользуйтесь ей до закрытия. Когда такой кнопки нет, сохраните нужные сведения другим способом, например скриншотом. Не пересылайте снимок с кодом входа или другими личными данными посторонним.
Уже закрытое окно может не оставить записи в приложении сообщений. Если текст нужен повторно, запросите его у отправителя или проверьте сведения в официальном приложении сервиса.
Flash Call использует входящий звонок для подтверждения номера. Например, сервис просит ввести последние цифры номера, с которого поступил вызов. Текстовое сообщение для этого способа не требуется.
Flash SMS передаёт текст, а Flash Call использует звонок. Совпадение слова flash в названиях не делает их одним способом связи. Если во время разговора появилось всплывающее сообщение, определите его источник по содержимому, а не только по моменту появления.
Сначала нужно понять, что именно выводит окно. Это может быть Flash SMS, меню SIM-карты, ответ USSD или уведомление приложения. От этого зависит способ отключения; блокировка отправителя в приложении SMS подходит не для каждого случая.
Не подтверждайте покупку или подключение услуги ради закрытия окна. Сообщение с логотипом банка или знакомым названием отправителя само по себе не подтверждает подлинность. Проверяйте сведения в официальном приложении или через известный вам канал связи.
Для отправки нужен SMS-сервис, который поддерживает этот класс сообщений на выбранном направлении. Параметры задаются по документации конкретного сервиса: настройка из чужого API может не работать в вашей интеграции.
В XML-документации TargetSMS тип flashsms упомянут при получении списка запланированных сообщений. Это упоминание не заменяет инструкцию по отправке: в соответствующем разделе приведён пример для обычного SMS. Способ подключения Flash SMS и доступность нужного направления уточните в поддержке до настройки запроса.
После подтверждения поддержки начните с короткого тестового текста на своих номерах. Проверьте отображение на используемых устройствах, возможность сохранить сообщение и результат после закрытия окна. Для аудитории с разными операторами проверьте нужные сети отдельно.
Проверьте также длину текста и количество частей SMS. Большой текст неудобен для всплывающего окна. Если сообщение не дошло, разберите причины недоставки SMS, а не меняйте класс сообщения наугад.
Статус доставки не доказывает, что человек прочитал текст. Появление окна и успешная передача сообщения также не подтверждают выполнение нужного действия: оплату, переход или ответ.
Класс сообщения задаётся в поле TP-DCS. По стандарту 3GPP TS 23.038 значения 0x10 и 0x18 обозначают класс 0 с кодировками GSM 7-bit и UCS2 соответственно. Значение 0xF0 также относится к классу 0 с GSM 7-bit. Это значения протокола, а не универсальные параметры HTTP-запроса.
Используйте интерфейс и кодировку, которые поддерживает ваш SMS-сервис. Не подменяйте параметр типа сообщения числом DCS, если документация этого не предусматривает.
Выбирайте обычное сообщение, когда получателю нужно сохранить адрес, реквизиты, инструкцию или историю уведомлений. Flash SMS стоит рассматривать для короткого текста, который полезен непосредственно при появлении на экране, после проверки поддержки и отображения.
Для настройки отправки через TargetSMS обратитесь в поддержку: укажите задачу, нужные сети и способ интеграции. Так можно согласовать формат до разработки и массового запуска.