SMSC client .NET | Biblioteka Komponentów
Biblioteka Komponentów
Wprowadzenie
SMSC client .NET for SMPP, UCP, CIMD/CIMD2 and SEMA jest natywną biblioteką komponentów dla środowiska .NET (DotNET) oraz COM (OCX/ActiveX) realizującą wysokiej wydajności komunikację SMS/EMS/WAP przez SMSC za pomocą protokołu TCP/IP. Komponenty biblioteki zaprojektowane zostały w taki sposób aby zapewnić wysoką wydajność oraz maksymalny zakres realizowanej funkcjonalności zachowując równocześnie prostotę użycia.
Biblioteka składa się z czterech komponentów, dostępnych jako natywna 32/64 bitowa biblioteka dla środowiska .NET a każdy z komponentów implementuje oddzielny protokół (SMPP, UCP, CIMD2 oraz SEMA/OIS). 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. Funkcjonalność komponentów jest zunifikowana pomiędzy protokołami co upraszcza proces tworzenia aplikacji do minimum. Równocześnie 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.
Wydajność
Implementacja asynchronicznego modelu komunikacji (model przesuwanego okna) oraz konstrukcja oparta na wielowątkowości pozwala osiągnąć wydajność przekraczającą 500 wiadomości na sekundę dla pojedynczego połączenia z SMSC.
Funkcjonalność
Poniższa tabela podsumowuje funkcjonalność realizowaną przez komponenty:
| SMPP | UCP | CIMD2 | SEMA | |
|---|---|---|---|---|
| Obsługiwane operacje | ||||
| Logowanie (submit & receive) | ![]() |
![]() |
![]() |
![]() |
| Logowanie (submit only) | ![]() |
N/D | N/D | N/D |
| Logowanie (receive only) | ![]() |
N/D | N/D | N/D |
| Wylogowanie | ![]() |
![]() |
![]() |
![]() |
| Wysłanie wiadomości | ![]() |
![]() |
![]() |
![]() |
| Asynchroniczne wysłanie wiadomości | ![]() |
![]() |
![]() |
|
| 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 | ![]() |
![]() |
![]() |
![]() |
| Dodatkowa funkcjonalność | ||||
| Długie wiadomości (konkatenowane) | ![]() |
![]() |
![]() |
![]() |
| Długie wiadomości (kodowane w ramce) | ![]() |
N/D | N/D | N/D |
| Kontola pasma (throttling) | ![]() |
![]() |
![]() |
![]() |
| Podpis alfanumeryczny | ![]() |
![]() |
![]() |
![]() |
| User Data Header (UDH) | ![]() |
![]() |
![]() |
![]() |
| Type-Length-Value fields (TLV) | ![]() |
N/D | N/D | N/D |
| Kodowanie | ||||
| 7-bit GSM 03.38 (with escape encoding) | ![]() |
![]() |
![]() |
![]() |
| 16-bit UCS2 (Unicode) | ![]() |
![]() |
![]() |
![]() |
| Binary (8-bit encoded) | ![]() |
![]() |
![]() |
![]() |
| ISO 8859-1 (Western) | ![]() |
![]() |
![]() |
![]() |
| ISO 8859-5 (East European) | ![]() |
![]() |
![]() |
![]() |
| ISO 8859-5 (Cyrillic) | ![]() |
![]() |
![]() |
![]() |
| ASCII Frontend | ![]() |
N/D | N/D | N/D |
| Wspierane typy wiadomości | ||||
| SMS | ![]() |
![]() |
![]() |
![]() |
| EMS | ![]() |
![]() |
![]() |
![]() |
| MMS announcement | ![]() |
![]() |
![]() |
![]() |
| Zero SMS | ![]() |
![]() |
![]() |
![]() |
| Flash SMS | ![]() |
![]() |
![]() |
![]() |
| WAP Push | ![]() |
![]() |
![]() |
![]() |
| Operator Logo | ![]() |
![]() |
![]() |
![]() |
| Image (obrazek) | ![]() |
![]() |
![]() |
![]() |
| Ringtone (dzwonek) | ![]() |
![]() |
![]() |
![]() |
| N/D - Nie Dotyczy. W większości przypadków oznacza to, że dana cecha nie występuje w danym protokole. | ||||
Wspierane protokoły
- SMPP wersja 3.3, 3.4 and 5.0 (SMPP Developers Forum)
- UCP wersja 2 (CMG Wireless Data Solutions)
- CIMD2 wersja 1.2 (NOKIA)
- SEMA OIS wersja 8.1 (Sema Telecoms)
Przykłady z kodem źródłowym
W wersji instalacyjnej dostępne są przykłady wraz z pełnym kodem źródłowym dla następujących protokołów i języków programowania:
- Visual Basic .NET
- Visual C#
- Visual Basic version 6.0
- Delphi (Borland/Code Gear/Embarcadero) wersja 7+
Dodatkowe przykłady kodu źródłowego można znaleźć na stronie z plikami do pobrania. W razie potrzeby jesteśmy w stanie stworzyć dodatkowe programy przykładowe wraz z kodem źródłowym.
Strona zaktualizowana 12 lipca 2011.

