Jak přijímat SMS ve Visual Basic

Nejjednodušší způsob, jak přijímat SMS z Visual Basic, je použít vestavěnou HTTP/Rest SMS API Ozeki SMS Gateway. Když použijete toto API, budete odesílat SMS zprávy odesláním HTTP Post požadavku na SMS bránu. HTTP Post požadavek bude obsahovat zprávu formátovanou ve formátu json. SMS brána odešle tuto SMS příjemci a vrátí HTTP 200 OK odpověď na váš požadavek.

jak přijímat sms zprávy pomocí visual basic
Obrázek 1 - Příjem SMS zpráv pomocí Visual Basic

Visual Basic kód pro příjem SMS

Ukázka kódu Visual Basic pro SMS níže ukazuje, jak můžete přijímat SMS pomocí HTTP REST SMS API Ozeki SMS Gateway s využitím knihovny Visual Basic Ozeki.Libs.Rest. Tato knihovna je poskytována zdarma a můžete ji používat a upravovat v jakémkoli z vašich projektů.

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 doručené poště je {result.Length} zpráv:")
        For Each message As Message In result
            Console.WriteLine($"{message}")
        Next

        Console.ReadKey()

    End Sub
End Module

Jak použít příklad Visual Basic pro SMS:

Tento příklad Visual Basic pro SMS lze použít v jakékoli aplikaci .NET nebo .NET core. Pro použití musíte přidat Ozeki.Libs.Rest dll jako referenci do vašeho projektu. Po přidání reference do projektu musíte vložit direktivu using Ozeki.Libs.Rest; do hlavičkové části vašeho zdrojového kódu Visual Basic. To vám umožní používat třídy poskytované knihovnou Ozeki.Libs.Rest. Můžete použít třídu MessageApi k přijetí SMS z SMS brány.

Stáhnout ReceiveSms.vb

Zdrojový kód vysvětlený v tomto článku lze stáhnout, použít a upravit zdarma.
Stáhnout: ReceiveSms.vb.zip (39.8Kb)

Co obsahuje soubor ReceiveSms.vb?

Soubor ReceiveSms.vb obsahuje knihovnu Ozeki.Libs.Rest, která vám poskytuje všechny nástroje potřebné pro odesílání a přijímání SMS zpráv. Najdete zde také projekt ReceiveSms v zipu, který obsahuje ukázkový kód, který vám ukáže, jak odeslat SMS. Tento ukázkový kód je uveden níže.

co obsahuje ozeki receive sms zip
Obrázek 2 - Co je uvnitř ReceiveSms.vb.zip

Jak přijímat SMS z Visual Basic (Rychlé kroky)

Pro přijímání SMS z Visual Basic:

  1. Nainstalujte Ozeki SMS Gateway
  2. Připojte Ozeki SMS Gateway k mobilní síti
  3. Odešlete testovací SMS z Ozeki GUI
  4. Vytvořte HTTP SMS API uživatele
  5. Spusťte Visual Studio
  6. Vytvořte řešení s názvem ReceiveSms.sln
  7. Přidejte Visual Basic konzolový projekt: ReceiveSms.vbproj
  8. Vložte kód do Program.vb nebo ReceiveSms.vb
  9. Vytvořte HTTP požadavek pro přijetí SMS
  10. Přečtěte si HTTP odpověď
  11. Vypište odpověď na konzoli
  12. Zkontrolujte logy v SMS bráně

Instalace Ozeki SMS Gateway a vytvoření HTTP API uživatele

Abyste mohli odesílat SMS z Visual Basic, musíte nejprve nainstalovat Ozeki SMS Gateway. SMS bránu lze nainstalovat na stejný počítač, kde vyvíjíte svůj Visual Basic kód ve Visual Studiu. Po instalaci je dalším krokem připojení Ozeki SMS Gateway k mobilní síti. Můžete odeslat testovací SMS z Ozeki GUI a ověřit, že vaše připojení k mobilní síti funguje. Posledním krokem k přípravě vašeho prostředí je vytvoření HTTP SMS API uživatele. Vytvořte uživatele s uživatelským jménem "http_user" a heslem "qwe123", aby příklad fungoval bez úprav.

Po nastavení prostředí můžete spustit svůj Visual Basic kód.

HTTP API URL pro příjem SMS z Visual Basic

Pro odesílání SMS z Visual Basic bude vaše Visual Basic aplikace muset odeslat HTTP požadavek na SMS bránu. API URL je uvedeno níže. Všimněte si, že IP adresa (127.0.0.1) by měla být nahrazena IP adresou vaší SMS brány. Pokud je Ozeki SMS Gateway nainstalována na stejném počítači, kde běží Visual Basic SMS aplikace, může to být 127.0.0.1. Pokud je nainstalována na jiném počítači, měla by být použita IP adresa tohoto počítače.

http://127.0.0.1:9509/api?action=rest

HTTP autentizace pro příjem SMS z Visual Basic

Pro ověření Visual Basic SMS klienta musíte odeslat uživatelské jméno a heslo v base64 kódovaném řetězci na server v HTTP požadavku. Použitý formát je: base64(username+":"+password). V C# můžete použít následující kód pro toto kódování:

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

Například pokud zakódujete uživatelské jméno 'http_user' a heslo 'qwe123', získáte následující base64 kódovaný řetězec: aHR0cF91c2VyOnF3ZTEyMw==. Pro odeslání

HTTP hlavička požadavku pro příjem SMS z Visual Basicu

Pro odeslání SMS zpráv je třeba do HTTP požadavku zahrnout následující řádky jako hlavičky. Všimněte si, že zahrnujeme typ obsahu a autorizační hlavičku.

Content-Type: application/json
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==

HTTP požadavek pro příjem SMS pomocí Visual Basicu

Pro odeslání SMS bude vaše aplikace v Visual Basicu odesílat HTTP požadavek podobný tomu níže. Všimněte si, že tento požadavek obsahuje část HTTP hlavičky a část HTTP těla. HTTP tělo je řetězec dat zakódovaný v JSON. Obsahuje číslo příjemce a text zprávy.

GET /api?action=receivemsg&folder=inbox HTTP/1.1
Connection: Keep-Alive
Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
Host: 127.0.0.1:9509
	

HTTP odpověď přijatá příkladem SMS v Visual Basicu

Jakmile SMS brána obdrží tento požadavek, vygeneruje HTTP odpověď. HTTP odpověď bude obsahovat stavový kód, který indikuje, zda byl požadavek na odeslání SMS úspěšný nebo ne. Bude také vracet strukturu zakódovanou v JSON, která vám poskytne užitečné detaily o odeslání zprá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"
	        }
	      ]
	    }
	  ]
	}
}
	

Příklad SMS v Visual Basicu: ReceiveSMS.sln


V tomto videu se naučíte, jak stáhnout a spustit ukázkový projekt ReceiveSMS.sln. Video začíná na stránce ke stažení a končí otevřeným editorem kódu. Ukážeme vám, jak stáhnout a otevřít soubor projektu. Video je dlouhé pouze 58 sekund, ale obsahuje všechny informace, které k úkolu potřebujete. Proces stahování můžete spustit ze stránky s návodem.

Video 1 - Jak stáhnout a spustit ukázkový projekt výše (Video návod)

Ukázkový kód níže je součástí řešení Visual Studio ReceiveSms.sln. Řešení Visual Studio může obsahovat více projektů a více souborů. V tomto řešení jsou pouze dva projekty: ReceiveSms.vbproj, Ozeki.Libs.Rest.csproj, a jeden soubor: Program.vb.

jak přijímat SMS pomocí Visual Basicu
Obrázek 3 - ReceiveSms.sln

Jak používat ukázkový projekt (Video návod)

V dalším videu se naučíte, jak spustit ukázkový kód a jak zkontrolovat log procesu. Začíná spuštěním Ozeki SMS brány a provede vás až k seznamu přijatých zpráv. Úkol je snadno proveditelný a toto video je velmi podrobné, ale krátké. Trvá pouze 46 sekund. Naučíte se, jak stáhnout všechny přijaté zprávy s pomocí Visual Basicu.

Video 2 - Jak používat řešení ReceiveSms.vb (Video návod)

Spuštění ukázky SMS v Visual Basicu na Windows

Když použijete Windows pro spuštění této ukázky SMS napsané v Visual Basicu, zjistíte, že získáte o něco lepší výkon než při spuštění na Linuxu. Abychom pochopili, proč k tomu dochází, musíme si uvědomit, že Visual Basic používá pro provádění kódu framework .NET. Důvodem je, že implementace .NET na Windows je optimalizována pro výkon, zatímco mono, implementace .NET na Linuxu, má v této oblasti ještě co dohánět.

Závěr

Článek představil kroky pro příjem SMS ve VB s pomocí Ozeki SMS Gateway. Pokud byly kroky pečlivě dodrženy, měli byste být schopni přijímat zprávy ve Visual Basic. Ozeki SMS Gateway je spojení mezi mobilními uživateli a vámi, takže stažení tohoto programu je nezbytné. Jak jste mohli vidět v tomto průvodci, Ozeki SMS Gateway se dá velmi snadno ovládat a je spolehlivý.

Nezapomeňte, že čtení zde nekončí, projděte si stránku s návody od Ozeki a najděte více informací o podobných tématech, jako je plánování ve Visual Basic.

Nyní už stačí jen stáhnout Ozeki SMS Gateway a můžete začít!

More information