O bibliotece
Informacje ogólne
SMSC Client Library jest natywną biblioteką dla środowiska x86/x64 oraz managed .NET do wysokiej wydajności komunikacji za pomocą krótkich wiadomości tekstowych (SMS) z telefonami komórkowymi przez SMSC za pomocą protokołów SMPP, UCP, CIMD2 i SEMA.
Biblioteka składa się z czterech klas z których każda implementuje oddzielny protokół. Komponenty mogą być używane w dowolnej kombinacji, w tym w wielu instancjach, w sytuacji gdy wymagane jest utrzymywanie kilku połączeń z różnymi operatorami. Komponenty biblioteki zapewniają wysoką wydajność oraz maksymalny zakres realizowanej funkcjonalności zachowując równocześnie prostotę użycia. Zestaw opcjonalnych parametrów umożliwia dostęp do operacji niskiego poziomu, specyficznych dla poszczególnych protokołów. Umożliwia to obsługę zaawansowanej funkcjonalności przy zachowaniu prostego interfejsu.
Interfejs
Biblioteki posiadają pliki nagłówkowe umożliwiające łatwe użycie w C++ i C (wersja natywna x86/x64) oraz ze wszystkimi językami/wersjami środowiska .NET oraz MONO (wersja managed).
Inne języki
Jeżeli potrzebne jest użycie bibliotek w innym środowisku/języku jak Python, Java, Objective-C, Object Pascal (Delphi, FPC) czy potrzeba biblioteki pracującej natywnie w systemie Linux prosimy o kontakt. Dostarczymy potrzebny interfejs/wersję.
Wydajność
Implementacja asynchronicznego modelu komunikacji (model przesuwanego okna) oraz konstrukcja oparta na wielowątkowości pozwala osiągnąć wydajność w realnych warunkach produkcyjnych na poziomie setek wiadomości na sekundę dla pojedynczego połączenia ze zdalnym serwerem SMSC.
Funkcjonalność
SMPP | UCP | CIMD2 | SEMA | |
---|---|---|---|---|
Operacje podstawowe | ||||
Logowanie (wysyłka i odbiór) | ||||
Logowanie (tylko wysyłka) | N/D | N/D | N/D | |
Logowanie (tylko odbiór) | N/D | N/D | N/D | |
Wylogowanie | ||||
Wysłanie wiadomości | ||||
Asynchroniczne wysłanie wiadomości | ||||
Wielu odbiorców (submit_multi) | N/D | N/D | N/D | |
Wysłanie wiadomości binarnej (operacja) | N/D | N/D | N/D | |
Odbiór raportu stanu | ||||
Odbiór wiadomości | ||||
Odczyt stanu wiadomości | ||||
Kasowanie wiadomości | ||||
Podmiana wiadomości | ||||
Podtrzymanie połączenia | ||||
Obsługa protokołu w formacie RAW | ||||
Funkcjonalność rozszerzona | ||||
Protokoły bezpieczeństwa SSL/TLS | ||||
Emotikony (EMOJI, kodowanie UCS2) | ||||
HTTP proxy | ||||
Długie wiadomości (UDH) | ||||
Długie wiadomości (message_payload) | N/D | N/D | N/D | |
Długie wiadomości (SAR) | N/D | N/D | N/D | |
Kontola pasma (throttling) | ||||
Podpis alfanumeryczny | ||||
User Data Header (UDH) | ||||
Pola Type-Length-Value (TLV) | N/D | N/D | N/D | |
Wsparcie dla sesji USSD | N/A | N/A | N/A | |
Kodowanie | ||||
7-bit GSM 03.38 (kodowanie znaków escape) | ||||
16-bit UCS2 (Unicode) | ||||
Binarny (Dane 8-bitowe) | ||||
ISO 8859-1 (Western) | ||||
ISO 8859-2 (East European) | ||||
ISO 8859-5 (Cyrillic) | ||||
HP Roman 8 (O2 UK specific) | N/A | N/A | N/A |
Wspierane protokoły
- SMPP wersja 3.3, 3.4 oraz 5.0 (SMPP Developers Forum)
- EMI-UCP (EUCP) revision 2, wersja 4.0-4.6 do 5.0 (CMG Wireless Data Solutions)
- CIMD2 wersja 8.1 (NOKIA)
- SEMA OIS wersja 8.1 (5.8) (Sema Telecoms)