Ako prijímať SMS vo Visual Basic

Najjednoduchší spôsob, ako prijímať SMS z Visual Basic, je použiť vstavanú HTTP/Rest SMS API Ozeki SMS Gateway. Keď použijete toto API, budete odosielať SMS správy vytvorením HTTP POST požiadavky na SMS bránu. HTTP POST požiadavka bude obsahovať správu vo formáte JSON. SMS brána odošle túto SMS príjemcovi a vráti HTTP 200 OK odpoveď na vašu požiadavku.

ako prijímať sms správy pomocou visual basic
Obrázok 1 - Prijímanie SMS správ pomocou Visual Basic

Visual Basic kód na prijímanie SMS

Ukážka kódu Visual Basic pre SMS nižšie demonštruje, ako môžete prijímať SMS pomocou HTTP REST SMS API Ozeki SMS Gateway s použitím knižnice Visual Basic Ozeki.Libs.Rest. Táto knižnica je poskytovaná bezplatne a môžete ju používať a upravovať v akomkoľvek z vašich projektov.

ReceiveSms.vb
Imports Ozeki.Libs.Rest

Module ReceiveSMS
    Sub Main(args As String())

        Dim configuration As New Configuration
        configuration.Username = "http_user"
        configuration.Password = "qwe123"
        configuration.ApiUrl = "http://127.0.0.1:9509/api"

        Dim api As New MessageApi(configuration)

        Dim result = api.DownloadIncoming()

        Console.WriteLine($"V priečinku doručenej pošty je {result.Length} správ:")
        For Each message As Message In result
            Console.WriteLine($"{message}")
        Next

        Console.ReadKey()

    End Sub
End Module

Ako použiť ukážku Visual Basic pre SMS:

Táto ukážka Visual Basic pre SMS môže byť použitá v akomkoľvek .NET alebo .NET core aplikácii. Na použitie je potrebné pridať Ozeki.Libs.Rest DLL ako referenciu do vášho projektu. Po pridaní referencie projektu musíte vložiť direktívu using Ozeki.Libs.Rest; do hlavičkovej časti vášho zdrojového kódu Visual Basic. To vám umožní používať triedy poskytované knižnicou Ozeki.Libs.Rest. Môžete použiť triedu MessageApi na prijatie SMS z SMS brány.

Stiahnuť ReceiveSms.vb

Zdrojový kód vysvetlený v tomto článku môže byť stiahnutý, použitý a upravený bezplatne.
Stiahnuť: ReceiveSms.vb.zip (39.8Kb)

Čo obsahuje súbor ReceiveSms.vb?

Súbor ReceiveSms.vb obsahuje knižnicu Ozeki.Libs.Rest, ktorá vám poskytuje všetky potrebné nástroje na odosielanie a prijímanie SMS správ. Nájdete tu tiež projekt ReceiveSms v zip súbore, ktorý obsahuje ukážkový kód, ktorý vám ukáže, ako odoslať SMS. Tento ukážkový kód je uvedený nižšie.

čo obsahuje ozeki receive sms zip
Obrázok 2 - Čo je vo vnútri ReceiveSms.vb.zip

Ako prijímať SMS z Visual Basic (Rýchle kroky)

Na prijímanie SMS z Visual Basic:

  1. Nainštalujte Ozeki SMS Gateway
  2. Pripojte Ozeki SMS Gateway k mobilnej sieti
  3. Odošlite testovaciu SMS z Ozeki GUI
  4. Vytvorte používateľa HTTP SMS API
  5. Spustite Visual Studio
  6. Vytvorte riešenie s názvom ReceiveSms.sln
  7. Pridajte Visual Basic konzolový projekt: ReceiveSms.vbproj
  8. Vložte kód do Program.vb alebo ReceiveSms.vb
  9. Vytvorte HTTP požiadavku na prijatie SMS
  10. Prečítajte si HTTP odpoveď
  11. Vypíšte odpoveď na konzolu
  12. Skontrolujte záznamy v SMS bráne
Nainštalujte Ozeki SMS Gateway a vytvorte používateľa HTTP API

Aby ste mohli odosielať SMS z Visual Basic, musíte najprv nainštalovať Ozeki SMS Gateway. SMS bránu môžete nainštalovať na rovnakom počítači, kde vyvíjate svoj Visual Basic kód v Visual Studio. Po inštalácii je ďalším krokom pripojenie Ozeki SMS Gateway k mobilnej sieti. Môžete odoslať testovaciu SMS z Ozeki GUI, aby ste overili, že vaše pripojenie k mobilnej sieti funguje. Posledným krokom na prípravu vášho prostredia je vytvorenie používateľa HTTP SMS API. Vytvorte používateľa s používateľským menom "http_user" a heslom "qwe123", aby príklad fungoval bez úprav.

Po nastavení prostredia môžete spustiť svoj Visual Basic kód.

HTTP API URL na prijímanie SMS z Visual Basic

Na odosielanie SMS z Visual Basic bude vaše Visual Basic aplikácia musieť vytvoriť HTTP požiadavku na SMS bránu. API URL je uvedené nižšie. Upozorňujeme, že IP adresa (127.0.0.1) by mala byť nahradená IP adresou vašej SMS brány. Ak je Ozeki SMS Gateway nainštalovaná na rovnakom počítači, kde beží Visual Basic SMS aplikácia, môže to byť 127.0.0.1. Ak je nainštalovaná na inom počítači, mala by to byť IP adresa toho počítača.

http://127.0.0.1:9509/api?action=rest
HTTP autentifikácia na prijímanie SMS z Visual Basic

Na autentifikáciu Visual Basic SMS klienta musíte odoslať používateľské meno a heslo v base64 kódovanom reťazci na server v HTTP požiadavke. Používa sa formát: base64(používateľské meno+":"+heslo). V C# môžete použiť nasledujúci kód na toto kódovanie:

var encoding = Encoding.GetEncoding("iso-8859-1");
var usernamePassword = username + ":" + password;
var usernamePasswordEncoded = Convert.ToBase64String(encoding.GetBytes(usernamePassword));

Napríklad, ak zakódujete používateľské meno 'http_user' a heslo 'qwe123', dostanete nasledujúci base64 kódovaný reťazec: aHR0cF91c2VyOnF3ZTEyMw==. Na odoslanie

HTTP hlavička požiadavky na prijímanie SMS z Visual Basic

Na odoslanie SMS správ musíte zahrnúť nasledujúce riadky ako hlavičky do HTTP požiadavky. Upozorňujeme, že obsahujeme typ obsahu a autorizačnú hlavičku.

Content-Type: application/json
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
HTTP požiadavka na prijímanie SMS pomocou Visual Basic

Na odoslanie SMS bude vaša aplikácia Visual Basic odosielať HTTP požiadavku podobnú nižšie uvedenej. Upozorňujeme, že táto požiadavka obsahuje časť HTTP hlavičky a časť tela HTTP. Telo HTTP je reťazec dát zakódovaný v JSON. Obsahuje číslo príjemcu a text správy.

GET /api?action=receivemsg&folder=inbox HTTP/1.1
Connection: Keep-Alive
Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
Host: 127.0.0.1:9509
	
HTTP odpoveď prijatá príkladom SMS v Visual Basic

Keď SMS brána prijme túto požiadavku, vygeneruje HTTP odpoveď. HTTP odpoveď bude obsahovať stavový kód, ktorý indikuje, či bola požiadavka na odoslanie SMS úspešná alebo nie. Vráti tiež štruktúru zakódovanú v JSON, ktorá poskytne užitočné informácie o odoslaní správy.

HTTP/1.1 200 OK
User-Agent: OZEKI 10.3.116 (www.myozeki.com)
Content-Type: application/json; charset=utf8
Last-Modified: Thu, 10 Jun 2021 11:02:26 GMT
Server: 10/10.3.116
Transfer-Encoding: chunked
{
	"http_code": 200,
	"response_code": "SUCCESS",
	"response_msg": "",
	"data": {
	  "folder": "inbox",
	  "limit": "1000",
	  "data": [
	    {
	      "message_id": "94219121-e5b5-4845-9721-074f5307c9a4",
	      "from_connection": "http_user@localhost",
	      "from_address": "+36203333333",
	      "from_station": "%",
	      "to_connection": "http_user@localhost",
	      "to_address": "http_user",
	      "to_station": "%",
	      "text": "Hello world 3",
	      "create_date": "2021-06-10 11:46:16",
	      "valid_until": "2021-06-17 11:46:16",
	      "time_to_send": "2021-06-10 11:46:16",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": true,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ]
	    },
	    {
	      "message_id": "d6f832b2-dbc8-4b1b-8b47-44b3bb6658bf",
	      "from_connection": "http_user@localhost",
	      "from_address": "+36202222222",
	      "from_station": "%",
	      "to_connection": "http_user@localhost",
	      "to_address": "http_user",
	      "to_station": "%",
	      "text": "Hello world 2",
	      "create_date": "2021-06-10 11:46:16",
	      "valid_until": "2021-06-17 11:46:16",
	      "time_to_send": "2021-06-10 11:46:16",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": true,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ]
	    },
	    {
	      "message_id": "0bf86b3a-e4a9-4d8e-970c-ed486b02db7a",
	      "from_connection": "http_user@localhost",
	      "from_address": "+362011111111",
	      "from_station": "%",
	      "to_connection": "http_user@localhost",
	      "to_address": "http_user",
	      "to_station": "%",
	      "text": "Hello world 1",
	      "create_date": "2021-06-10 11:46:16",
	      "valid_until": "2021-06-17 11:46:16",
	      "time_to_send": "2021-06-10 11:46:16",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": true,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ]
	    }
	  ]
	}
}
	
Príklad SMS v Visual Basic: ReceiveSMS.sln

V tomto videu sa naučíte, ako stiahnuť a spustiť príkladový projekt ReceiveSMS.sln. Video začne stránkou na stiahnutie a skončí otvoreným editorom kódu. Ukážeme vám, ako stiahnuť a otvoriť súbor projektu. Video je dlhé len 58 sekúnd, ale obsahuje všetky informácie, ktoré potrebujete na vykonanie úlohy. Proces sťahovania môžete spustiť zo stránky s návodom.

Video 1 - Ako stiahnuť a spustiť príkladový projekt vyššie (Video návod)

Príkladový kód nižšie je súčasťou riešenia Visual Studio ReceiveSms.sln. Riešenie Visual Studio môže obsahovať viacero projektov a viacero súborov. V tomto riešení sú len dva projekty: ReceiveSms.vbproj, Ozeki.Libs.Rest.csproj, a jeden súbor: Program.vb.

ako prijímať sms pomocou visual basic
Obrázok 3 - ReceiveSms.sln

Ako používať príkladový projekt (Video návod)

V ďalšom videu sa naučíte, ako spustiť príkladový kód a ako skontrolovať záznam procesu. Začne sa spustením Ozeki SMS brány a prevedie vás až k zoznamu prijatých správ. Úloha je ľahko vykonateľná a toto video je veľmi podrobné, ale krátke. Trvá len 46 sekúnd. Naučíte sa, ako stiahnuť všetky prijaté správy pomocou Visual Basic.

Video 2 - Ako používať riešenie ReceiveSms.vb (Video návod)

Spustenie príkladu SMS v Visual Basic na Windows

Keď použijete Windows na spustenie tohto príkladu SMS napísaného v Visual Basic, zistíte, že dostanete mierne lepší výkon ako pri spustení na Linuxe. Aby ste pochopili, prečo sa to deje, musíte mať na pamäti, že Visual Basic používa na vykonávanie kódu framework .NET. Je to preto, lebo implementácia .NET na Windows je optimalizovaná pre výkon, zatiaľ čo mono, implementácia .NET na Linuxe, má v tejto oblasti nejaké nedostatky.

Záver

Článok predstavil kroky na prijímanie SMS vo VB pomocou Ozeki SMS Gateway. Ak boli kroky dodržané pozorne, mali by ste byť schopní prijímať správy v jazyku Visual Basic. Ozeki SMS Gateway je spojovacím článkom medzi mobilnými používateľmi a vami, takže stiahnutie tohto programu je nevyhnutné. Ako ste mohli vidieť v tomto sprievodcovi, Ozeki SMS Gateway sa dá veľmi ľahko spravovať a je spoľahlivý.

Uistite sa, že nekončíte s čítaním tu, prehľadajte stránku s návodmi Ozeki a nájdite viac informácií o podobných témach, ako sú plánovanie v jazyku Visual Basic.

Teraz už len stačí stiahnuť Ozeki SMS Gateway a nechať prácu začať!

More information