Онлайн-декодер PDU для SUBMIT, DELIVER и STATUS-REPORT
Вставьте PDU и читайте его поле за полем: сервисный центр, адрес, кодировку, отметку времени, объединение и декодированный текст. Если поле повреждено, декодер называет его, а не возвращает пустую страницу.
Декодируйте PDU в браузере
В поле заранее стоит кадр SMS-SUBMIT из кодировщика. Вставьте любой кадр, нажмите «Декодировать» и читайте поля ниже.
Декодер PDU
Без сетиДекодированные поля
Текст, отметки времени и ссылка объединения показываются ровно так, как их несёт кадр. Декодер никогда не переписывает входные данные.
Ничего не загружается на сервер. Кадр читает JavaScript на этой странице, поэтому PDU из личного хранилища сообщений остаётся на вашем компьютере.
Текстовый режим и режим PDU
Одно и то же сообщение выглядит по-разному в зависимости от того, какой режим его записал.
| Что видно | Результат текстового режима | Результат режима PDU |
|---|---|---|
| Текст сообщения | Читаемые символы | Шестнадцатеричные октеты: текст упакован или кодирован от старшего байта |
| Кодировка | Выбирает модем | Явно указана в октете схемы кодирования данных |
| Длинные сообщения | Модем скрывает разбиение | UDH показывает ссылку, номер части и общее число |
| Отметки времени | Локальный формат, если показывается | Отметка времени сервисного центра с октетом часового пояса |
| Отчёты о доставке | В сокращённом виде | Полный кадр статуса с двумя отметками времени и октетом результата |
Текстовый режим читает сообщение так, как его прочитал бы человек. Режим PDU читает его так, как хранит сеть. Когда что-то не работает, именно второе представление говорит, какое поле неверно.
Структура полей SMS-DELIVER
Доставленное сообщение приходит без получателя и срока действия, но с отметкой времени.
| Поле | Октеты | Значение |
|---|---|---|
| SCA | 1 + n | Сервисный центр, обработавший сообщение; 00 означает, что кадр его опускает |
| Первый октет | 1 | Тип сообщения, признак «есть ещё сообщения» и признак заголовка данных |
| Отправитель | 2 + n | Адрес отправителя, с 91 для международного номера |
| PID | 1 | Идентификатор протокола |
| DCS | 1 | Алфавит, класс и биты сжатия |
| SCTS | 7 | Отметка времени сервисного центра: год, месяц, день, часы, минуты, секунды и часовой пояс |
| UDL | 1 | Число септетов для GSM-7, число октетов для UCS-2 |
| UD | n | Необязательный UDH плюс текст |
Отметка времени — не значение Unix. Каждое поле даты — десятичные цифры в переставленных полубайтах, а последний октет несёт смещение от UTC в четвертях часа.
Поля STATUS-REPORT
Отчёт о статусе заменяет пользовательские данные двумя отметками времени и кодом результата.
| Поле | Октеты | Значение |
|---|---|---|
| Первый октет | 1 | Тип сообщения 02 плюс признак квалификатора отчёта, если он задан |
| MR | 1 | Ссылка на сообщение, которую аппарат вернул при отправке |
| Получатель | 2 + n | Номер, на который отправлено сообщение |
| SCTS | 7 | Когда сервисный центр получил сообщение |
| Время выдачи | 7 | Когда сервисный центр его доставил, в том же формате отметки времени |
| Статус | 1 | 00–1F доставлено; 20–3F временная ошибка, попытки продолжаются; 40–5F постоянная ошибка; 60–7F временная ошибка, попытки прекращены |
В отчёте о статусе нет пользовательских данных. Если кадр длиннее этих полей, лишние октеты выводятся как предупреждение, а не декодируются.
Где сообщения не декодируются
Большинство отказов — ошибки копирования, а не сломанные сообщения. Декодер называет поле, которое не смог прочитать.
| Вход | Сообщение | Что не так |
|---|---|---|
| 00110009812143 | Адрес короче объявленной длины. | Длина получателя говорит о 9 цифрах, но следом идут только два октета. |
| 0011A | Нечётная длина hex (5 полубайтов). PDU должен содержать целые байты. | При копировании потерян символ, поэтому последний байт неполный. |
| 004100098121436587F9000006070003010201 | Длина UDH 7 превышает пользовательские данные. | Октет длины заголовка данных обещает больше байтов, чем несёт кадр. |
Декодер также отвергает кадр, длина сервисного центра которого выходит за конец ввода, адрес, обрывающийся раньше времени, усечённую отметку времени и кадр SMS-COMMAND — это другой тип сообщения. 8-битная схема кодирования показывается как двоичная длина, а не как выдуманный текст. Неизвестные символы расширения и одиночный escape-код отбрасываются с предупреждением, а не превращают всё сообщение в шум.
Эти три входа — часть того же регрессионного файла, что и у кодировщика. Каждая ожидаемая ошибка хранится как подстрока, поэтому изменение формулировки в декодере не может пройти незаметно.
Нужно автоматическое решение?
Эта страница нужна, чтобы разобрать один кадр. Для потока сообщений используйте SMS Deliverer.
Приложение Windows декодирует входящие, собирает многочастные кадры, сохраняет отправителя и отметку времени и держит отчёты о доставке рядом с исходной отправкой. Тот же разборщик используют настольный интерфейс и локальный HTTP API, поэтому сообщение выглядит одинаково везде, где вы его читаете.
Начните с руководства по GSM-модемам ради аппаратной части, со страницы программы для Windows ради функций приёма или с кодировщика PDU, чтобы собрать кадр для теста.
Поддерживаемые кадры
- SMS-SUBMIT, включая составные части
- SMS-DELIVER с отметкой времени и отправителем
- SMS-STATUS-REPORT с обеими отметками времени
- GSM-7, символы расширения и UCS-2
- 8-битный UDH, 16-битная ссылка и адресация порта
Проверено 2026-11. Кадры SMS-COMMAND отвергаются намеренно: это не трафик сообщений.
Вопросы покупателей
Почему декодер пишет, что сервисного центра в PDU нет?
Начальные 00 означают, что в кадре нет адреса сервисного центра, поэтому аппарат или модем использует записанный на SIM. Остальная часть кадра всё равно декодируется как обычно.
Умеет ли он читать отчёт о доставке и многочастное сообщение?
Да. Кадры SMS-STATUS-REPORT показывают обе отметки времени и октет статуса. В многочастных сообщениях читается UDH, и часть показывает свою ссылку, порядковый номер и общее число.
Почему часть моего сообщения показана как двоичные данные?
Схема кодирования данных в этом кадре объявляет 8-битные данные, а не текст. Декодер сообщает число октетов, а не выдумывает символы, которых там нет.
Отправляет ли декодер мой PDU куда-либо?
Нет. Разбор идёт в этом браузере. Страница работает и офлайн, что важно, когда сообщение содержит личные номера или содержимое.