Перейти до основного вмісту

Помилки та обмеження

Підключення відхилено​

Після будь-якого відхиленого bind сервер надсилає unbind і закриває з'єднання. Причина — у command_status відповіді bind_resp:

КодЩо означаєЩо робити
0x0FЛогін або пароль не збігаютьсяПеревірте, що system_id — номер телефону в міжнародному форматі, а пароль — від кабінету. Якщо обидва правильні — див. нижче
0x0DОбліковому запису не можна підключатисяУвімкніть перемикач SMPP на екрані налаштувань API; перевірте, що адреса, з якої ви підключаєтеся, є в полі IP-адреса, або залиште поле порожнім; переконайтеся, що обліковий запис активний
0x05У облікового запису вже стільки сесій, скільки дозволено, або це з'єднання вже підключенеЗакрийте сесії, які більше не потрібні, або попросіть підтримку підняти ліміт. Одне з'єднання — один bind

0x0F при правильних логіні й паролі має ще три причини:

  • Забагато невдалих спроб. Після двадцяти невдалих підключень з однієї адреси або для одного логіна за п'ять хвилин кожне наступне відхиляється, доки ці п'ять хвилин не минуть, — навіть із правильним паролем. Виправте налаштування, зачекайте й підключіться знову.
  • Обліковий запис заблоковано після невдалих входів. Невдалі підключення рахуються разом із невдалими входами в кабінет; понад ліміт обліковий запис перестає приймати пароль. Зверніться до підтримки.
  • Пароль задано ще в старому кабінеті й відтоді не змінювали. Задайте новий пароль у кабінеті: підключення приймає лише пароль сучасного типу.

0x0D може прийти й на кілька секунд під час робіт на нашому боці: якщо налаштування правильні, підключіться знову за хвилину.

submit_sm відхилено​

Ці помилки приходять одразу в submit_sm_resp, і повідомлення не приймається:

КодЩо означає
0x0Asource_addr порожній або задовгий: до 11 символів для імені, до 15 цифр для номера
0x0BУ destination_addr немає цифр або їх понад 20
0x45Непідтримуваний data_coding або довжина UDH не збігається з повідомленням
0x0DОбліковий запис заблоковано під час сесії
0x14Тимчасовий збій на нашому боці — надішліть те саме повідомлення трохи пізніше
0x08Внутрішня помилка — надішліть знову; якщо повторюється, зверніться до підтримки

Усе інше — баланс, одержувач, ім'я відправника, текст — перевіряється вже після того, як повідомлення прийнято, і повідомлення, що не пройшло перевірку, повертається звітом REJECTD з кодом у err:: див. Звіти про доставку.

Чого сесія не розуміє​

Сесія обробляє bind_transmitter, bind_receiver, bind_transceiver, submit_sm, deliver_sm_resp, enquire_link і unbind. На query_sm, cancel_sm, replace_sm, submit_multi і data_sm приходить відповідь із кодом 0x03 — сесія не рветься, але нічого не відбувається. Статус повідомлення приходить лише у звіті про доставку.

Обмеження​

ЩоОбмеження
Сесій на обліковий записОбмежено; підключення понад ліміт отримує 0x05
Непідтверджені submit_sm (вікно)Фіксованого ліміту немає: PDU одного з'єднання обробляються по черзі, і кожна відповідь приходить раніше, ніж береться наступний PDU
Швидкість відправленняБез обмеження на сесію
Непідтверджені звіти на сесію20
short_message255 октетів
Один PDU64 КБ
Тиша з вашого бокуПриблизно три хвилини без жодного PDU — і сесію закрито
Невдалі підключення20 за п'ять хвилин з однієї адреси або для одного логіна

Коли щось не працює​

  • З'єднання не відкривається. Перевірте вихідні правила свого файрвола: адреси — на сторінці IP-адреси. Команди на сторінці Підключення по SMPP покажуть, чи досяжний вхід з вашого сервера.
  • TLS не підключається. Підключайтеся за ім'ям smpp-tls.…, а не за адресою, і переконайтеся, що клієнт надсилає ім'я (SNI): сертифікат обирається за ним.
  • Сесія рветься кожні кілька хвилин. Надсилайте enquire_link кожні 30–60 секунд.
  • Звітів немає. Звіти приходять лише в сесії receiver і transceiver — сесія, підключена як transmitter, їх не отримує. Перевірте, що ви відповідаєте на кожен deliver_sm і що звіти не забирає інша сесія облікового запису.