Zgodność API GMS
SMSBAT obsługuje warstwę kompatybilności z GMS API. Umożliwia to migrację istniejących integracji zaprojektowanych dla GMS bezpośrednio do SMSBAT bez konieczności modyfikowania schematów routingu wiadomości, struktur ładunku lub słuchaczy wywołań zwrotnych.
Ustawienia połączenia
Aby kierować żądania przez SMSBAT, zaktualizuj podstawowy adres URL i dane uwierzytelniające w swojej integracji:
- Podstawowy adres URL:
https://restapi.smsbat.com - Punkt końcowy:
POST /api/GMSMessage/send_message - Format żądania:
aplikacja/json - Uwierzytelnianie: Podstawowe uwierzytelnianie HTTP (wykorzystuje dane uwierzytelniające API SMSBAT)
Parametry żądania
Interfejs API zgodności GMS akceptuje obiekt JSON z następującymi parametrami najwyższego poziomu:
| Parametr | Wpisz | Wymagane | Opis |
|---|---|---|---|
numer_telefonu |
ciąg | Tak | Numer telefonu odbiorcy w formacie międzynarodowym (np. „380501234567”). |
znacznik |
ciąg | Tak | Zarejestrowana nazwa nadawcy / nazwa alfa. |
kanały |
tablica | Tak | Lista kanałów do wypróbowania, w kolejności priorytetów. Obsługiwane wartości: viber, sms, push. Np. ["viber", "sms"]. |
opcje_kanału |
obiekt | Tak | Mapa zawierająca opcje dla każdego aktywnego kanału (patrz poniżej). |
dodatkowy_id |
ciąg | Nie | Twój wewnętrzny identyfikator wiadomości po stronie klienta. |
adres_wywołania zwrotnego |
ciąg | Nie | Adres URL punktu końcowego w systemie, aby otrzymywać wywołania zwrotne dotyczące stanu dostarczenia. |
kod_działu |
ciąg | Nie | Opcjonalny identyfikator kodu podziału (domyślnie „main”). |
Ustawienia opcji kanału
Obiekt channel_options zawiera konfiguracje specyficzne dla kanału.
=== „Wiadomość Vibera”
Używane, gdy w tablicy `channels` znajduje się `viber`.
| Parametr | Wpisz | Wymagane | Opis |
| :--- | :--- | :--- | :--- |
| `tekst` | ciąg | **Tak** | Treść wiadomości. |
| `ttl` | liczba całkowita | **Tak** | Czas życia w sekundach. |
| `img` | ciąg | Nie | Publiczny adres URL HTTPS obrazu do wyświetlenia. |
| `podpis` | ciąg | Nie | Etykieta tekstowa przycisku. |
| `akcja` | ciąg | Nie | Docelowy adres URL po kliknięciu przycisku. |
| `opcje_ankiety` | tablica | Nie | Tablica ciągów (od 2 do 5 elementów) wyświetlana jako opcje ankiety. |
| `elementy_karuzeli` | tablica | Nie | Tablica obiektów slajdów do wyświetlenia jako karuzela Viber (patrz struktura w zakładce). |
**Przykład żądania Viber:**
__KOD_BLOKU_0__
=== „Viber z zastępczym SMS-em”
Umożliwia przesyłanie wiadomości Viber z automatycznym zastępczym SMS-em, jeśli dostarczenie Viber nie powiedzie się w ciągu TTL.
**Przykład żądania zastępczego:**
__KOD_BLOKU_1__
=== „Wiadomość SMS”
Używane, gdy w tablicy `channels` znajduje się `sms`.
| Parametr | Wpisz | Wymagane | Opis |
| :--- | :--- | :--- | :--- |
| `tekst` | ciąg | **Tak** | Treść wiadomości. |
| `nazwa_alfa` | ciąg | **Tak** | Nazwa alfa nadawcy. |
| `ttl` | liczba całkowita | **Tak** | Czas życia w sekundach. |
| `ctr` | wartość logiczna | Nie | Włącz śledzenie kliknięć CTR linków w tekście („prawda”/„fałsz”). |
**Przykład żądania SMS:**
__KOD_BLOKU_2__
=== „Ankieta Vibera”
Służy do tworzenia ankiet i ankiet Viber.
!!! ostrzeżenie
Konfiguracja ankiety Viber musi zawierać od **2 do 5 opcji** wewnątrz `opcji_survey_opcji`.
**Przykład żądania ankiety:**
__KOD_BLOKU_3__
=== „Karuzela Vibera”
Służy do wysyłania przesuwanych kart ze slajdami. Każdy slajd obsługuje obraz, tytuł i przyciski.
**Przykład żądania karuzeli:**
__KOD_BLOKU_4__
=== „Wyślij wiadomość”
Używane, gdy w tablicy „channels” znajduje się słowo „push”.
| Parametr | Wpisz | Wymagane | Opis |
| :--- | :--- | :--- | :--- |
| `tytuł` | ciąg | **Tak** | Tekst tytułu powiadomienia push. |
| `tekst` | ciąg | **Tak** | Treść wiadomości. |
| `ttl` | liczba całkowita | **Tak** | Czas życia w sekundach. |
| `img` | ciąg | Nie | Publiczny adres URL HTTPS obrazu do wyświetlenia. |
| `podpis` | ciąg | Nie | Etykieta tekstowa przycisku. |
| `akcja` | ciąg | Nie | Docelowy adres URL po kliknięciu przycisku. |
| `ctr` | wartość logiczna | Nie | Włącz śledzenie kliknięć. |
**Przykład żądania push:**
__KOD_BLOKU_5__
Format odpowiedzi
Punkt końcowy zwraca odpowiedzi w formacie JSON z kodem stanu „HTTP 200 OK”.
Pomyślna odpowiedź
KOD_BLOKU_6
Odpowiedzi na błędy
Jeśli sprawdzanie poprawności lub przetwarzanie nie powiedzie się, zostanie zwrócona odpowiedź na błąd z niepustym kodem „ErrorCode” i szczegółowym tekstem „ErrorText”.
=== „Nieobsługiwany kanał/opcja” KOD_BLOKU_7
=== „Nieprawidłowa liczba opcji ankiety” KOD_BLOKU_8
=== „Niezarejestrowana nazwa alfa” KOD_BLOKU_9
=== „Wewnętrzny błąd przetwarzania” KOD_BLOKU_10
Format dostarczania wywołania zwrotnego
Jeśli w żądaniu podano callback_url, SMSBAT wysyła aktualizacje statusu dostarczenia jako ładunek JSON POST do Twojego punktu końcowego.
Przykład żądania oddzwonienia
KOD_BLOKU_11
Opis pól wywołania zwrotnego
| Pole | Wpisz | Opis |
|---|---|---|
numer |
ciąg | Numer telefonu odbiorcy. |
czas |
numer | Znacznik czasu zdarzenia w milisekundach systemu Unix. |
stan |
numer | Uproszczony identyfikator statusu (patrz tabela kodów statusu). |
podstan |
numer | Szczegółowy identyfikator statusu (patrz tabela kodów podstanów). |
hyber_status |
numer | Szczegółowy wewnętrzny kod statusu SMSBAT (patrz tabela Hyber Status). |
id_wiadomości |
ciąg | Identyfikator wiadomości SMSBAT (GUID) generowany podczas wysyłania. |
dodatkowy_id |
ciąg | Identyfikator po stronie klienta podany w pierwotnym żądaniu. |
wysłane_przez |
ciąg | Kanał, który przetworzył wiadomość: viber, sms lub rcs. |
pasujący_template_id |
numer | Stan dopasowania szablonu Viber (w stosownych przypadkach). |
Mapowania stanu
1. Status uproszczony („status”)
| Kod | Znaczenie |
|---|---|
1 |
Wiadomość została zaakceptowana lub jest dostarczana. |
2 |
Wiadomość dostarczona. |
3 |
Błąd przetwarzania lub dostawy. |
2. Status szczegółowy („podstatus”)
| Kod | Znaczenie |
|---|---|
12 |
Przyjęty do przetworzenia. |
23 |
Dostarczony. |
24 |
Widziałem/przeczytałem. |
35 |
Nie dostarczono w ciągu TTL (wygasł). |
36 |
Błąd dostawy. |
3. Typ kanału („wysłane_przez”)
| Kanał | Opis |
|---|---|
viber |
Status wyprodukowany przez kanał Viber. |
sms |
Status generowany przez kanał SMS. |
rcs |
Status wygenerowany przez kanał RCS. |
4. Szczegółowy status SMSBAT (hyber_status)
| Kod | Kanał | Stan | Podstan | Znaczenie |
|---|---|---|---|---|
| 23033 | viber |
2 |
23 |
Wiadomość Viber została dostarczona. |
| 24013 | viber |
2 |
24 |
Wiadomość Viber przeczytana przez odbiorcę (widziana). |
| 36013 | viber |
3 |
36 |
Wewnętrzny błąd Vibera. |
| 36023 | viber |
3 |
36 |
Nieprawidłowy lub niedostępny identyfikator usługi Viber. |
| 36033 | viber |
3 |
36 |
Nieprawidłowe dane ładunku Viber. |
| 36037 | viber |
3 |
36 |
Adres URL obrazu Viber jest za długi. |
| 36038 | viber |
3 |
36 |
Nieprawidłowy adres URL obrazu Viber. |
| 36039 | viber |
3 |
36 |
Tekst Vibera jest za długi. |
| 36044 | viber |
3 |
36 |
Pusty tekst Vibera. |
| 36053 | viber |
3 |
36 |
Nieobsługiwany typ wiadomości Viber. |
| 36063 | viber |
3 |
36 |
Nieprawidłowe parametry Vibera. |
| 36073 | viber |
3 |
36 |
Przekroczono limit czasu dostawcy Viber. |
| 36083 | viber |
3 |
36 |
Nadawca Viber zablokowany przez odbiorcę. |
| 36093 | viber |
3 |
36 |
Odbiorca nie jest zarejestrowany jako użytkownik Viber. |
| 36103 | viber |
3 |
36 |
Nie znaleziono urządzenia z systemem Android/iOS obsługującego Viber. |
| 36113 | viber |
3 |
36 |
Nieautoryzowany adres IP do wysyłania Viber. |
| 36123 | viber |
3 |
36 |
Wykryto zduplikowaną wiadomość Viber. |
| 36143 | viber |
3 |
36 |
Błąd rozliczeniowy Viber. |
| 36153 | viber |
3 |
36 |
Wiadomość zablokowana przez czarną listę platformy. |
| 36163 | viber |
3 |
36 |
Wewnętrzny błąd przetwarzania platformy Viber. |
| 36173 | viber |
3 |
36 |
Nieprawidłowa lub brakująca etykieta Viber. |
| 36183 | viber |
3 |
36 |
Nieprawidłowa wartość Viber TTL. |
| 12011 | sms / rcs |
1 |
12 |
Akceptowane wiadomości SMS/RCS. |
| 36011 | sms / rcs |
1 |
12 |
SMS/RCS w drodze. |
| 23011 | sms / rcs |
2 |
23 |
Dostarczono SMS/RCS. |
| 35015 | sms / rcs |
3 |
35 |
SMS/RCS wygasł (nie został dostarczony w ciągu TTL). |
| 36021 | sms / rcs |
3 |
36 |
Wiadomość SMS/RCS została usunięta. |
| 36031 | sms / rcs |
3 |
36 |
Nie można dostarczyć wiadomości SMS/RCS. |
| 36041 | sms / rcs |
3 |
36 |
Nieznany status dostarczenia wiadomości SMS/RCS. |
| 36051 | sms / rcs |
3 |
36 |
Wiadomość SMS/RCS odrzucona. |