
LINK Посібник із впровадження REST API SMS
LINK Mobility надає послуги доставки повідомлень, мікроплатежів і послуг на основі місцезнаходження. Платформа діє як прозорий еквайер вмісту з білою міткою та маршрутизатор транзакцій між постачальниками послуг та операторами.
LINK Mobility надає RESTful API, який можна використовувати для доступу до таких послуг LINK Mobility, як надсилання SMS. Цей API розроблений таким чином, щоб бути простим у використанні та сумісним з усіма сучасними мовами та фреймворками. Використовуючи мову за вашим вибором, ваша програма може використовувати Link Mobility REST API для реалізації потужних можливостей обміну повідомленнями та оплати
© LINK Mobility, 10 березня 2021 р
Юридична інформація
Інформація, наведена в цьому документі, є виключною власністю та авторським правом Netsize. Він є конфіденційним і призначений виключно для інформаційного використання. Він не є обов’язковим і може бути змінений без попередження. Будь-яке несанкціоноване розкриття або використання вважається незаконним.
Netsize™ і linkmobility™ захищені французьким, ЄЕС і міжнародними законами про інтелектуальну власність.
Усі інші цитовані торгові марки є виключною власністю відповідних власників.
Ніщо, що міститься в цьому документі, не повинно тлумачитися як надання будь-якої ліцензії чи права згідно з патентом, авторським правом чи торговою маркою Netsize.
NETSIZE
Société anonyme au capital de 5 478 070 євро
Siège social :62, avenue Emile Zola92100 Boulogne – Франція
418 712 477 RCS Nanterre
http://www.LinkMobility.com
http://www.linkmobility.com
Обсяг документа
У цьому документі описано, як Постачальник послуг використовує API LINK Mobility REST для SMS. Призначений для технічних архітекторів і дизайнерів, які реалізують послуги Постачальника послуг.
1. Основне використання
Відправити смс дуже просто. Ви надсилаєте HTTP-запит до LINK Mobility, який можна виконати лише за допомогою a web браузер.

2. Функціональний Overview
Система LINK Mobility надає такі основні функції для SMS-повідомлень:
Надсилання SMS-повідомлень із мобільним зв’язком (MT), таких як текстові або двійкові (наприклад, WAP Push), платні та стандартні повідомлення.
Отримання звітів про доставку надісланих МТ повідомлень.
Отримання SMS-повідомлень з мобільного зв’язку (MO), платні та стандартні тарифи.
API SMS REST призначений для надсилання стандартних SMS-повідомлень MT.
API надсилає всі SMS-повідомлення асинхронно, забезпечуючи такі функції, як:
«Випалив і забув» – Постачальник послуг хоче мати більш передбачуваний час відповіді та не хоче чекати результату від Оператора.
Функція повторної спроби – LINK Mobility повторно надішле повідомлення, якщо в Оператора виникнуть тимчасові проблеми.
2.1 Надсилання SMS-повідомлення
![]()
Постачальник послуг Netsize Consumer

- Надіслати повідомлення MT
- Ідентифікатор зворотного повідомлення
- Надіслати SMS-повідомлення
- Надати звіт про доставку
- Відправити звіт про доставку
Основний порядок надсилання SMS-повідомлень описано таким чином:
Постачальник послуг робить запит на відправку SMS-повідомлення одержувачу через систему LINK Mobility.
Постачальнику послуг повертається ідентифікатор повідомлення. Цей ідентифікатор можна використовувати, наприклад, щоб співвіднести повідомлення з правильним звітом про доставку.
LINK Mobility обробляє маршрутизацію та доставляє SMS-повідомлення споживачеві, до якого звернуто адресу.
Звіт про доставку запускається, наприклад, коли SMS-повідомлення доставлено на пристрій Споживача.
Звіт про доставку надсилається Постачальнику послуг. Звіт містить той самий ідентифікатор повідомлення, що й у кроці 2.
Альтернативний потік: недійсний запит
Якщо надані параметри або облікові дані користувача в запиті недійсні, Постачальнику послуг повертається помилка. Помилка вказує на причину відхилення, і потік завершується. Ідентифікатори повідомлень не повертаються.
3. Кінцева точка
Доступ до ресурсу SMS здійснюється за шляхом:
/restapi/v1/sms
Example URL
https://europe.ipx.com/restapi/v1/sms
Для безпеки з’єднання LINK Mobility REST API доступний лише через HTTPS.
Сертифікат сервера Link Mobility підписаний Thawte Server CA.
4. Операції
Сервіс СМС надає такі операції:
| Ім'я | шлях |
| Надіслати | /restapi/v1/sms/send |
4.1 Надіслати
Операція надсилання використовується для надсилання SMS одному одержувачу.
Ця операція призначена як для базових, так і для досвідчених користувачів. У найпростішому випадку для доставки SMS потрібні лише адреса призначення та текст повідомлення. LINK Mobility виявить схему кодування даних і за потреби виконає автоматичне об’єднання повідомлення в кілька частин.
Для розширеного використання Постачальник послуг може використовувати додаткові параметри для повного контролю форматування повідомлення, включаючи заголовок даних користувача.
Постачальник послуг може надсилати об’єднані повідомлення, але підготовка даних користувача та заголовок даних користувача має здійснюватися Постачальником послуг, а повідомлення має бути надіслано за допомогою кількох запитів на надсилання до LINK Mobility.
5. Аутентифікація
Ім’я користувача та пароль надсилаються в кожному запиті за допомогою базової схеми автентифікації HTTP.
https://www.w3.org/Protocols/HTTP/1.0/spec.html#BasicAA
Облікові дані надсилаються в заголовку авторизації в HTTP-запиті. Клієнт створює поле заголовка, як описано тут:
https://en.wikipedia.org/wiki/Basic_access_authentication#Client_side
наприкладample, якщо ім’я користувача — john, а changeme — пароль, то кінцевий заголовок авторизації буде таким:
Авторизація: Basic am9objpjaGFuZ2VtZSA=
Як запасний варіант можна надіслати ім’я користувача та пароль як параметри запиту. Це рекомендовано лише для клієнтів, які не підтримують базову автентифікацію.
6. Подання запиту
6.1 Рядок запиту
Параметри запиту подаються як рядок запиту, що містить пари ім’я/значення. Рядок запиту кодується за допомогою процентного кодування (URL кодування).
http://www.w3schools.com/tags/ref_urlencode.asp
наприкладample, привіт, світ! кодується як Hello+World%21.
6.2 Обов'язкові параметри запиту
| Ім'я | Максимальна довжина | опис |
| адреса призначення | 40 | MSISDN, на який слід надіслати SMS-повідомлення, починаючи з коду країни. Прampномер: 46123456789. Для деяких ринків (де MSISDN споживача потрібно маскувати) це значення також може бути буквено-цифровим псевдонімом із префіксом «#». |
| messageText | 1600 | Зміст SMS повідомлення. |
6.3 Додаткові параметри запиту (для розширеного використання)
| Ім'я | Максимальна довжина | опис |
| вихідна адреса | 16 | Адреса вихідного SMS-повідомлення. Тип вихідної адреси визначається параметром originatorTON. Максимальна довжина короткого номера – 16. Алфавітно-цифровий відправник обмежений стандартним алфавітом GSM із максимальною довжиною 11 символів. Максимальна довжина відправника MSISDN становить 15 (з використанням того самого формату, що й елемент destinationAddress). Можна опустити, якщо originatingAddress і originatingTON вибрано системою. Ця функція залежить від ринку та конфігурації. Поведінка може відрізнятися залежно від інтеграції оператора. |
| авторТОН | 1 | Тип номера вихідної адреси (TON): 0 – короткий номер 1 – буквено-цифровий (макс. довжина 11) 2 – MSISDN Можна пропустити, якщо originatingAddress і originatingTON буде обрано системою. Ця функція залежить від ринку та конфігурації. Поведінка може відрізнятися залежно від інтеграції оператора. |
| userDataHeader | 280 | Заголовок даних користувача разом із даними користувача може містити до 140, тобто 280 у шістнадцятковому кодуванні, октетів. Цей параметр завжди має шістнадцяткове кодування. |
| DCS | 3 | Схема кодування даних. Поведінка може відрізнятися залежно від інтеграції оператора. |
| PID | 3 | Ідентифікатор протоколу. Поведінка може відрізнятися залежно від інтеграції оператора. |
| relativeValidityTime | 6 | Відносний час дії в секундах (відносно часу подачі в LINK Mobility). Максимальне значення – 604800 (7 днів), а за замовчуванням – 48 годин. Поведінка може відрізнятися залежно від інтеграції оператора. |
| час доставки | 20 | Часamp коли має бути доставлено SMS-повідомлення (відкладений час доставки). Дивіться розділ про формат дати та часу. |
| statusReportFlags | 1 | Надіслати запит на звіт: 0 – Немає звіту про доставку (за замовчуванням) 1 – запит на звіт про доставку 9 – запит на звіт про доставку сервера (LINK Mobility не пересилає звіт Постачальнику послуг, але робить його доступним у звітах тощо) |
| campaignName | 50 | Транзакції LINK Mobility є tagз цим ім'ям. Він використовується для групування транзакцій у звітах Link Mobility. |
| maxConcatenatedMessages | 1 | Значення від 1 до 10, яке визначає кількість дозволених об’єднаних повідомлень. За замовчуванням 3. |
| correlationId | 100 | Ідентифікатор, наданий постачальником послуг, який буде відображено у звіті про доставку. |
| ім'я користувача | 100 | Надається як альтернатива базовій автентифікації HTTP. |
| пароль | 100 | Надається як альтернатива базовій автентифікації HTTP. |
6.4 Методи запиту HTTP
Для максимальної сумісності API підтримує як методи запиту HTTP GET, так і POST. Інші методи HTTP заборонені.
6.4.1 GET
Закодований рядок запиту додається до URL.
ОТРИМАТИ
https://europe.ipx.com/restapi/v1/sms/send?destinationAddress=461234
56789&messageText=Привіт+Світ%21
Авторизація: Basic am9objpjaGFuZ2VtZSA=
6.4.2 ПОСТ
Закодований рядок запиту надсилається в тіло повідомлення HTTP-запиту. Content-Type: application/x-www-form-urlзакодований.
ПОСТ https://europe.ipx.com/restapi/v1/sms/send
Хост: europe.ipx.com
Тип вмісту: application / x-www-form-urlзакодований
Авторизація: Basic am9objpjaGFuZ2VtZSA=
Тривалість: 57
destinationAddress=46123456789&messageText=Hello+World%21
6.5 Дата і час
Параметри в REST API, що представляють дату й час, завжди входять у часовий пояс UTC (універсальний координований час). Timestamps представлені у вигляді рядка в такому форматі:
2017-04-25T23:20:50Z
Це означає 20 хвилин і 50 секунд після 23 години 25 квітня 2017 року за UTC.
7. Повідомлення у відповідь
Після отримання та інтерпретації повідомлення запиту API відповідає повідомленням відповіді HTTP.
7.1 Код статусу HTTP
REST API завжди повертає код статусу HTTP 200 OK для оброблених запитів. Тіло повідомлення містить параметр responseCode, який використовується для визначення точного результату.
7.2 Тіло повідомлення
Тіло повідомлення складається з JSON, що описує результат запиту.
http://json.org/
Link Mobility JSON відповідає Google JSON Style Guide.
https://google.github.io/styleguide/jsoncstyleguide.xml
7.3 Параметри відповіді
| Ім'я | Максимальна довжина | опис |
| responseCode | 3 | 0 означає успішну транзакцію. |
| responseMessage | 255 | Текстовий опис відповіді, наприклад текст помилки. |
| часamp | 20 | Дата й час обробки запиту LINK Mobility. (Див. розділ формату дати/часу). |
| traceId | 36 | Внутрішній ідентифікатор Link Mobility. Використовується для підтримки та усунення несправностей. |
| messageIds | 10 х 36 | Масив унікальних ідентифікаторів повідомлень LINK Mobility для кожного успішного повідомлення (якщо повідомлення об’єднано, повертається кілька ідентифікаторів повідомлень). Опускається в разі невдачі. |
7.4 Прикладample відповіді
Успіх
HTTP/1.1 200 OK
Тип вмісту: додаток/json
Тривалість: 144
Дата: 15 вересня 2016 р., 13:20:31 GMT
{“responseCode”:0,”responseMessage”:”Успіх”,”часamp”:”2016-09-15T13:20:31Z”, “traceId”:”f678d30879fd4adc25f2″,”messageIds”:[“1-4850879008”]}
Ось той самий JSON, відформатований для читабельності:
{
«responseCode“:0,
«responseMessage“:”Успіх”,
«часamp“:”2016-0915T13:20:31Z”,
«traceId“:”f678d30879fd4adc25f2”,
«messageIds“:[“1-4850879008”] }
провал
HTTP/1.1 200 OK
Тип вмісту: додаток/json
Тривалість: 148
Дата: 15 вересня 2016 р., 13:20:31 GMT
{“responseCode”:1,”responseMessage”:” Недійсний вхід або неавторизоване використання API”,”timestamp”:”2016-09-15T13:20:31Z”,”traceId”:”f678d30879fd4adc25f2″}
Успіх
HTTP/1.1 200 OK
Тип вмісту: додаток/json
Тривалість: 144
Дата: 15 вересня 2016 р., 13:20:31 GMT
{“responseCode”:0,”responseMessage”:”Успіх”,”часamp”:”2016-09-15T13:20:31Z”, “traceId”:”f678d30879fd4adc25f2″,”messageIds”:[“1-4850879008”]}
Ось той самий JSON, відформатований для читабельності:
{
«responseCode“:0,
«responseMessage“:”Успіх”,
«часamp“:”2016-0915T13:20:31Z”,
«traceId“:”f678d30879fd4adc25f2”,
«messageIds“:[“1-4850879008”] }
провал
HTTP/1.1 200 OK
Тип вмісту: додаток/json
Тривалість: 148
Дата: 15 вересня 2016 р., 13:20:31 GMT
{“responseCode”:1,”responseMessage”:” Недійсний вхід або неавторизоване використання API”,”timestamp”:”2016-09-15T13:20:31Z”,”traceId”:”f678d30879fd4adc25f2″}
7.5 Коди відповідей
Наступні коди відповідей можна повернути у відповідь на надсилання:
| Код | текст | опис |
| 0 | Успіх | Успішно виконано. |
| 1 | Недійсний вхід або неавторизоване використання API | Неправильне ім’я користувача чи пароль або Постачальник послуг заборонено LINK Mobility. |
| 2 | Споживач заблоковано Link Mobility | Споживач заблокований LINK Mobility. |
| 3 | Операція не надається LINK Mobility | Операція заблокована для Постачальника послуг. |
| 4 | Споживач невідомий LINK Mobility | Споживач невідомий LINK Mobility. Або якщо псевдонім був використаний у запиті; псевдонім не знайдено. |
| 5 | Споживач заблокував цю послугу в LINK Mobility | Споживач заблокував цю послугу в LINK Mobility. |
| 6 | Вихідна адреса не підтримується | Вихідна адреса не підтримується. |
| 7 | Альфа-вихідна адреса не підтримується обліковим записом | Вихідна адреса альфа-версії не підтримується обліковим записом. |
| 8 | Вихідна адреса MSISDN не підтримується | Вихідна адреса MSISDN не підтримується. |
| 9 | Розширений GSM не підтримується | Розширений GSM не підтримується. |
| 10 | Unicode не підтримується | Unicode не підтримується. |
| 11 | Звіт про стан не підтримується | Звіт про стан не підтримується. |
| 12 | Необхідні можливості не підтримуються | Потрібна можливість (окрім наведеної вище) для надсилання повідомлення не підтримується. |
| 13 | Перевищено максимальну швидкість обмеження постачальника вмісту | Постачальник послуг занадто швидко надсилає SMS-повідомлення на LINK Mobility. |
| 14 | Ідентифікатор протоколу не підтримується обліковим записом | Ідентифікатор протоколу не підтримується. |
| 15 | Перевищено ліміт конкатенації повідомлень | Кількість з’єднаних повідомлень перевищує максимальну запитану кількість. |
| 16 | Не вдалося спрямувати повідомлення. | LINK Mobility не вдалося спрямувати повідомлення. |
| 17 | Заборонений період часу | Не дозволено надсилати повідомлення протягом періоду часу |
| 18 | Занадто низький баланс на рахунку постачальника послуг | Постачальник послуг заблоковано через занадто низький баланс |
| 50 | Частковий успіх | Частковий успіх під час надсилання SMS-повідомлення кільком одержувачам. |
| 99 | Внутрішня помилка сервера | Інша помилка Link Mobility, зверніться до служби підтримки LINK Mobility для отримання додаткової інформації. |
| 100 | Недійсна адреса призначення | Адреса призначення (MSISDN або псевдонім) недійсна. |
| 102 | Недійсний ідентифікатор посилання (пов’язаний). | Ідентифікатор посилання недійсний, можливо, ідентифікатор посилання вже використовується, занадто старий або невідомий. |
| 103 | Недійсне ім'я облікового запису | Назва облікового запису недійсна. |
| 105 | Недійсні метадані служби | Метадані служби недійсні. |
| 106 | Недійсна вихідна адреса | Початкова адреса недійсна. |
| 107 | Недійсна буквено-цифрова вихідна адреса | Буквено-цифрова вихідна адреса недійсна. |
| 108 | Недійсний час дії | Час дії недійсний. |
| 109 | Недійсний час доставки | Час доставки недійсний. |
| 110 | Недійсний вміст повідомлення/дані користувача | Дані користувача, тобто SMS-повідомлення, недійсні. |
| 111 | Недійсна довжина повідомлення | Довжина SMS-повідомлення недійсна. |
| 112 | Недійсний заголовок даних користувача | Заголовок даних користувача недійсний. |
| 113 | Неправильна схема кодування даних | DCS недійсний. |
| 114 | Недійсний ідентифікатор протоколу | PID недійсний. |
| 115 | Недійсні позначки звіту про стан | Прапорці звіту про стан недійсні. |
| 116 | Недійсний TON | TON автора недійсний. |
| 117 | Недійсний campaign ім'я | campназва aign недійсна. |
| 120 | Недійсне обмеження для максимальної кількості з’єднаних повідомлень | Максимальна кількість об’єднаних повідомлень недійсна. |
| 121 | Недійсна вихідна адреса msisdn | Вихідна адреса MSISDN недійсна. |
| 122 | Недійсний ідентифікатор кореляції | Ідентифікатор кореляції недійсний. |
8. Додаткові функції
8.1 Виправлення MSISDN
Корекція MSISDN є додатковою функцією, яку за запитом можна ввімкнути за допомогою підтримки LINK Mobility.
Ця функція виправить адреси призначення та узгодить їх із необхідним форматом E.164. Окрім корекції формату, система також може виконувати специфічні для ринку функції, такі як переклад міжнародних французьких номерів для виправлення номерів DOM-TOM (départements et territoires d'outre-mer), якщо це можливо.
Нижче наведено ряд напрampкількість виправлень:
| Надіслана адреса призначення | Виправлена адреса призначення |
| +46(0)702233445 | 46702233445 |
| (0046)72233445 | 46702233445 |
| +460702233445 | 46702233445 |
| 46(0)702233445 | 46702233445 |
| 46070-2233445 | 46702233445 |
| 0046702233445 | 46702233445 |
| +46(0)702233445aaa | 46702233445 |
| 336005199999 | 2626005199999 (французьке число перекладено на номер DOM-TOM) |
Крім того, можна дозволити національні телефонні номери для вибраного ринку. Якщо цю функцію ввімкнено, будь-які міжнародні номери для інших ринків мають надсилатися зі знаком «+», щоб відрізнити їх від вибраного ринку.
Нижче наведено кілька напрampкількість виправлень, зроблених під час використання Швеції (код країни 46) як ринку за замовчуванням для національних номерів.
| Надіслана адреса призначення | Виправлена адреса призначення |
| 0702233445 | 46702233445 |
| 070-2233 445 | 46702233445 |
| 070.2233.4455 | 46702233445 |
| 460702233445 | 46702233445 |
| +460702233445 | 46702233445 |
| +458022334455 | 458022334455 |
| 45802233445 | Недійсний, оскільки відсутній знак "+". |
Зауважте, що виправлений MSISDN використовуватиметься LINK Mobility і повертатиметься у звітах про доставку.
Для отримання додаткової інформації зверніться до служби підтримки LINK Mobility.
8.2 Заміна символів
Заміна символів є додатковою функцією, яку за запитом можна ввімкнути підтримкою LINK Mobility.
Ця функція перетворює символи алфавіту, що не належать до GSM, у даних користувача (текст SMS) на еквівалентні символи алфавіту GSM, коли DCS встановлено на «GSM» (17). наприкладample “Seqüência de teste em Português” буде перекладено на “Seqüencia de teste em Portugues”.
9. Звіти про доставку
Постачальник послуг може, якщо це передбачено, запитувати звіти про доставку SMS-повідомлень або сповіщення про доставку для надісланих повідомлень MT. Ці звіти ініціюються в SMSC оператора, коли повідомлення MT доставлено цільовому Споживачу або видалено, наприклад, термін дії закінчився або з певної причини не маршрутизується.
Постачальнику послуг повідомляється лише про остаточний статус SMS-повідомлення, тобто доставлено чи видалено. Для кожного повідомлення MT створюється лише один звіт. Якщо статус видалено, може застосовуватися код причини. Цей код причини вказує на те, чому SMS-повідомлення не було доставлено.
Звіти направляються через LINK Mobility та надсилаються Постачальнику послуг за допомогою протоколу HTTP.
Щоб отримувати звіти, Постачальник послуг повинен запровадити, напрample Java Servlet або сторінку ASP.NET. Обидва отримують HTTP-запити GET або POST.
Параметри
Запит містить такі параметри:
| Параметр | Тип | M/O/I* | Значення за замовчуванням | Максимальна довжина | опис |
| MessageId | рядок | M | – | 22 | Ідентифікатор повідомлення MT, якому відповідає цей звіт. |
| DestinationAddress | рядок | M | – | 40 | MSISDN споживача, тобто адреса призначення вихідного повідомлення MT. |
| СтатусКод | ціле число | M | 1 | Код статусу вказує на стан повідомлення MT. Застосовні коди стану: 0 – Доставлено 2 – Видалено (застосовується код причини) |
|
| Часamp | рядок | M | – | 20 | Час, що вказує, коли LINK Mobility отримав звіт про доставку. Часовий пояс часуamp CET або CEST (з літнім часом, як визначено для ЄС). Формат: ррррММДД ГГ:хх:сс. |
| Оператор | рядок | M | – | 100 | Ім'я Оператора, який використовується під час відправки SMS-повідомлення, або ім'я облікового запису, який використовується під час відправлення SMS-повідомлення. Список доступних операторів надається службою підтримки LINK Mobility. |
| ReasonCode | ціле число | O | – | 3 | Код причини вказує, чому повідомлення отримало статус видалено. Застосовні коди причин: 100 – Термін дії минув 101 – Відхилено 102 – Помилка формату 103 – Інша помилка 110 – Абонент невідомий 111 – Абонент заборонений 112 – Абонент не підключений 113 – Абонент недоступний 120 – збій SMSC 121 – перевантаження SMSC 122 – SMSC роумінг 130 – Помилка слухавки 131 – Перевищено пам’ять телефону Поведінка може відрізнятися залежно від інтеграції оператора. |
| OperatorTimeStamp | рядок | O | – | 20 | Час, що вказує, коли звіт було ініційовано в SMSC Оператора (якщо надано Оператором). Часовий пояс часуamp CET або CEST (з літнім часом, як визначено для ЄС). Формат: ррррММДД ГГ:хх:сс. |
| StatusText | рядок | O | – | 255 | Заповнювач для додаткової інформації від Оператора, наприклад, текстовий опис статусу/причини. Поведінка може відрізнятися залежно від інтеграції оператора. |
| CorrelationId | рядок | O | – | 100 | Ідентифікатор кореляції, наданий у SendRequest або SendTextRequest. |
| Код мережі оператора | ціле число | O | – | 6 | Код мобільної мережі (MCC + MNC) Оператора. |
* M = обов'язковий, O = необов'язковий, I = ігнорується.
Постачальник послуг повинен надати LINK Mobility разом із цільовим URL для звітів про доставку (необов’язково включаючи облікові дані для базової автентифікації HTTP). Постачальник послуг може вибрати бажаний метод HTTP для використання:
HTTP POST (рекомендовано)
HTTP GET.
Exampфайл із використанням HTTP GET (успішно доставлено):
https://user:password@www.serviceprovider.com/receivereport?%20MessageId=122&DestinationAddress=46762050312&Operator=Vodafone&TimeStamp=20100401%2007%3A47%3A44&StatusCode=0
Example з використанням HTTP GET (не доставлено, Оператор надав timestamp на подію):
Параметри є URL кодувати.
Кодування символів:
Постачальник послуг може вибрати бажане кодування символів для використання:
UTF-8 (рекомендовано)
ISO-8859-1.
9.1 Підтвердження постачальника послуг
Постачальник послуг повинен підтверджувати кожен звіт про доставку. Підтвердження може бути позитивним, тобто звіт про доставку отримано успішно, або негативним, тобто помилка.
Будь ласка, зверніть увагу: LINK Mobility має тайм-аут читання для підтвердження 30 секунд для звітів про доставку. Тайм-аут ініціює повторну спробу доставки (якщо повторну спробу ввімкнено) або скасування доставки (якщо повторну спробу вимкнено). Це означає, що програма постачальника послуг має забезпечувати швидкий час відгуку, особливо під час високого навантаження.
Настійно рекомендується підтвердити звіт про доставку в LINK Mobility перед його обробкою.
Правило для позитивного та негативного підтвердження описано таким чином:
Позитивне підтвердження, ACK, звіт про доставку надіслано:
Код відповіді діапазону HTTP 200 у поєднанні з таким вмістом у форматі XML:
Негативне підтвердження, NAK, звіт про доставку не доставлено:
Будь-яка відповідь, крім позитивного підтвердження, напрample, негативне підтвердження ініціюється будь-яким кодом помилки HTTP або таким вмістом XML:
Вміст XML можна використовувати для керування механізмом повторних спроб LINK Mobility. NAK викличе повторну спробу, якщо ввімкнено. Для постачальників послуг, у яких не налаштовано механізм повторної спроби, вміст XML необов’язковий.
Нижче наведено запит HTTP POST і відповідь напрampфайл звіту про доставку, доставлений Постачальнику послуг:
HTTP запит:
POST /context/app HTTP/1.1
Тип вмісту: application / x-www-form-urlзакодовано;набір символів=utf-8
Хост: сервер:порт
Тривалість вмісту: xx
MessageId=213123213&DestinationAddress=46762050312&Operator=Telia& OperatorTimeStamp=20130607%2010%3A45%3A00&TimeStamp=20130607%2010%3A 45%3A02&StatusCode=0
Відповідь HTTP:
HTTP/1.1 200 OK
Тип вмісту: текстовий/звичайний
9.2 Повторіть спробу
Система LINK Mobility може виконувати повторні спроби для невдалих, тобто непідтверджених, доставок звітів про доставку. Постачальник послуг може вибрати бажану поведінку повторної спроби:
Немає повторних спроб (за замовчуванням) – повідомлення буде відхилено, якщо спроба підключення не вдасться, час очікування читання або будь-який код помилки HTTP.
Повторіть спробу – повідомлення буде надіслано повторно для кожного типу проблеми з’єднання, тайм-ауту читання або негативного підтвердження.
Коли повторну спробу для NAK увімкнено, важливо розуміти, які сценарії створюватимуть повторну спробу з LINK Mobility і як працює повторна спроба. Кожен постачальник послуг має власну чергу повторних спроб, де повідомлення впорядковані відповідно до часу надсилання повідомленьamp. Link Mobility завжди намагається спочатку доставити старіші повідомлення, навіть якщо індивідуальний порядок повідомлень, доставлених Постачальнику послуг, не гарантується. Основною причиною видалення повідомлень із черги повторних спроб є одна з двох причин: або закінчується TTL повідомлення, або (теоретично) черга повторних спроб стає заповненою. TTL залежить від оператора та облікового запису, тобто може змінюватись залежно від оператора та/або типу повідомлення, наприклад, платне SMS або SMS-повідомлення зі стандартною ціною.
Постачальник послуг із увімкненою повторною спробою повинен перевірити унікальний ідентифікатор повідомлення MT, щоб переконатися, що повідомлення ще не отримано.
Важливо, щоб Постачальник послуг дотримувався цих простих правил, якщо під час обробки звіту про доставку виникає помилка, якщо причиною помилки є: Тимчасова, наприклад, база даних недоступна, слід повернути NAK. LINK Mobility повторно надішле повідомлення.
Постійна спроба та повторна спроба можуть спричинити таку саму проблему, слід повернути ACK. наприкладample, коли повідомлення не вдалося правильно проаналізувати або спричинило неочікувану помилку виконання.
Відповідні дії гарантують відсутність блокування або погіршення пропускної здатності через неодноразове надсилання звіту про доставку.
10. Поради щодо впровадження
1. Є можливість використовувати свій web браузер для надсилання запитів до API. Це дозволяє дуже легко досліджувати та оцінювати послуги без будь-яких інструментів розробки.
2. Chrome або Firefox рекомендовано разом із розширенням, таким як JSONView для відображення гарно відформатованого JSON.
3. Ми використовували SoapUI для тестування POST, базової автентифікації та для перевірки необроблених повідомлень HTTP-запитів і відповідей.
4. cURL інструмент корисний для надсилання запитів POST із базовою автентифікацією. див. прampнижче.
curl Опублікувати \
-H “Content-Type: application/x-www-form-urlзакодований” \
-H «Авторизація: базова am9objpjaGFuZ2VtZSA=» \
https://europe.ipx.com/restapi/v1/sms/send \
–data «destinationAddress=46123456789&messageText=Hello+World%21»
_______________
Трансформація персоналізованих комунікацій
Документи / Ресурси
![]() |
LINK Посібник із впровадження REST API SMS [pdfПосібник користувача Mobility Implementation Guide REST API SMS, Mobility, Implementation Guide REST API SMS, REST API SMS, API SMS, SMS |




