Jak skonfigurować pole Service Type w SMPP

Pole service_type w protokole SMPP (Short Message Peer-to-Peer) definuje rodzaj usługi messagingowej, która jest żądana podczas przesyłania wiadomości. To pole pojawia się w kilku PDU SMPP, takich jak submit_sm, data_sm i submit_multi.

Szczegóły pola

  • Nazwa pola: service_type
  • Typ danych: C-Octet String (ASCII zakończony znakiem null)
  • Maksymalna długość: 6 znaków (włączając znak null)
  • Cel: Kategoryzacja wysyłanej wiadomości (np. poczta głosowa, WAP push itp.)

Typowe wartości

Chociaż service_type jest opcjonalne i często pozostaje puste (null string), może być używane do żądania specjalnego przetwarzania wiadomości. Oto typowe wartości:

WartośćOpis
null lub ""Domyślny SMS (brak specjalnego traktowania)
"CMT"Wiadomości komórkowe
"CPT"Paging komórkowy
"VMN"Powiadomienie o poczcie głosowej
"VMA"Alert o poczcie głosowej
"WAP"Wiadomość Wireless Application Protocol
"USSD"Wiadomość USSD

Wartości niestandardowe

Niektórzy operatorzy lub SMSC mogą obsługiwać niestandardowe wartości, takie jak "OTP" lub "PROMO", aby wywołać specjalne reguły routingu, filtrowania lub rozliczeń.

Przykładowe użycie w PDU

Poniżej znajduje się PDU SMPP submit_sm z service_type = "CMT":

0000003F  // Długość polecenia (63 bajty)
00000004  // ID polecenia (submit_sm)
00000000  // Status polecenia
00000001  // Numer sekwencyjny
434D54    // service_type: "CMT" w ASCII
00        // Znak null
01        // source_addr_ton: Międzynarodowy
01        // source_addr_npi: ISDN
31323334  // source_addr: "1234"
00
01        // dest_addr_ton
01        // dest_addr_npi
35363738  // destination_addr: "5678"
00
00        // esm_class
00        // protocol_id
00        // priority_flag
00        // schedule_delivery_time
00        // validity_period
00        // registered_delivery
00        // replace_if_present_flag
00        // data_coding
00        // sm_default_msg_id
05        // sm_length: 5
48656C6C6F // short_message: "Hello"

Kiedy używać service_type

  • Gdy jest to wymagane przez dostawcę SMS do celów routingu.
  • Aby kategoryzować wiadomości (np. alerty, promocje, 2FA).
  • Aby aktywować usługi, takie jak powiadomienia o poczcie głosowej lub WAP Push.
  • Aby wywołać specjalną logikę rozliczeń lub dostarczania.

Ważne uwagi

  • Pozostawienie pola service_type pustego jest standardem, chyba że wymagane jest inaczej.
  • Niektóre SMSC mogą ignorować lub nadpisywać to pole.
  • Nieprawidłowe wartości mogą prowadzić do odrzucenia wiadomości lub niepowodzenia dostarczenia.

Podsumowanie

Pole service_type w SMPP jest elastycznym, ale często opcjonalnym sposobem klasyfikacji wiadomości SMS. Chociaż wiele systemów używa domyślnej pustej wartości, niektóre aplikacje — szczególnie te wymagające specjalnego traktowania przez SMSC — mogą skorzystać z jawnego ustawienia tego pola.

Referencje

  • Specyfikacja SMPP 3.4 (Sekcja 4.7)
  • Dokumentacja specyficzna dla dostawców (np. Twilio, Infobip, Syniverse)

More information