Jak zaplanować SMS w Visual Basic

Najprostszym sposobem wysyłania SMS z Visual Basic jest użycie wbudowanego interfejsu HTTP/Rest SMS API Ozeki SMS Gateway. Kiedy używasz tego API, będziesz wysyłać wiadomości SMS poprzez wysłanie żądania HTTP Post do bramki SMS. Żądanie HTTP Post będzie zawierać wiadomość sformatowaną w formacie json. Bramka SMS wyśle tę wiadomość SMS na telefon odbiorcy i zwróci odpowiedź HTTP 200 OK na twoje żądanie.

zaplanuj sms na późniejszą wysyłkę w visual basic
Rysunek 1 - Visual Basic zaplanuj SMS na późniejszą wysyłkę

Kod Visual Basic do wysyłania zaplanowanych SMS na telefon

Poniższy przykładowy kod Visual Basic do wysyłania SMS demonstruje, jak możesz wysyłać SMS używając http rest sms api Ozeki SMS Gateway z biblioteką Visual Basic Ozeki.Libs.Rest. Ta biblioteka jest dostarczana bezpłatnie i możesz jej używać oraz modyfikować w dowolnym z twoich projektów.

Program.vb
Imports Ozeki.Libs.Rest

Module Program
    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 msg As New Message
        msg.ToAddress = "+36201111111"
        msg.Text = "Hello, World!"
        msg.TimeToSend = DateTime.Parse("2021-06-11 14:46:00")

        Dim api = New MessageApi(configuration)

        Dim result = api.Send(msg)

        Console.WriteLine(result)
        Console.ReadKey()

    End Sub
End Module
	

Jak używać przykładu Visual Basic do wysyłania SMS:

Ten przykład Visual Basic do wysyłania SMS może być używany w dowolnej aplikacji .NET lub .NET core. Aby go użyć, musisz dodać bibliotekę Ozeki.Libs.Rest jako referencję do swojego projektu. Po dodaniu referencji do projektu, musisz umieścić dyrektywę using Ozeki.Libs.Rest; w sekcji nagłówka twojego kodu źródłowego Visual Basic. To pozwoli ci używać klas dostarczonych przez bibliotekę Ozeki.Libs.Rest. Możesz użyć klasy Message do tworzenia SMS. Możesz użyć klasy MessageApi do wysłania SMS do bramki SMS. Bramka SMS przekaże twoją wiadomość do sieci komórkowej albo przez połączenie bezprzewodowe albo przez Internet.

Pobierz SendScheduledSms.vb

Kod źródłowy omówiony w tym artykule może być pobrany, używany i modyfikowany bezpłatnie.
Pobierz: SendScheduledSms.vb.zip (47.6Kb)

Co znajduje się w pliku SendScheduledSms.vs?

Plik SendScheduledSms.cs zawiera bibliotekę Ozeki.Libs.Rest, która daje ci wszystkie narzędzia niezbędne do wysyłania i odbierania wiadomości SMS. Znajdziesz tam również projekt SendScheduleSms w zipie, który zawiera przykładowy kod pokazujący jak wysłać SMS. Ten przykładowy kod jest wymieniony poniżej.

Rysunek 2 - Co znajduje się w SendScheduledSms.vb.zip

Jak wysłać SMS z Visual Basic (Szybkie kroki)

Aby wysłać SMS z Visual Basic:

  1. Zainstaluj Ozeki SMS Gateway
  2. Podłącz Ozeki SMS Gateway do sieci komórkowej
  3. Wyślij testowego SMS z interfejsu Ozeki
  4. Utwórz użytkownika HTTP sms api
  5. Uruchom Visual Studio
  6. Utwórz rozwiązanie o nazwie SendScheduledSms.sln
  7. Dodaj projekt konsolowy Visual Basic: SendScheduledSms.vbproj
  8. Wstaw kod do Program.vb lub SendScheduledSms.vb
  9. Utwórz funkcję Visual Basic o nazwie Send_SMS
  10. Utwórz dane SMS w formacie Json
  11. Utwórz żądanie http do wysłania SMS
  12. Odczytaj odpowiedź HTTP
  13. Wyświetl odpowiedź na konsoli
  14. Sprawdź logi w bramce SMS

Zainstaluj Ozeki SMS Gateway i utwórz użytkownika HTTP API

Aby móc wysyłać SMS z Visual Basic, najpierw musisz zainstalować Ozeki SMS Gateway. Bramka SMS może być zainstalowana na tym samym komputerze, na którym tworzysz swój kod Visual Basic w Visual Studio. Po instalacji, kolejnym krokiem jest podłączenie Ozeki SMS Gateway do sieci komórkowej. Możesz wysłać testowego SMS z interfejsu Ozeki, aby sprawdzić, czy twoje połączenie z siecią komórkową działa. Ostatnim krokiem przygotowania środowiska jest utworzenie użytkownika HTTP sms api. Utwórz użytkownika z nazwą "http_user" i hasłem "qwe123", aby przykład działał bez modyfikacji.

Po skonfigurowaniu środowiska, możesz uruchomić swój kod Visual Basic.

URL API HTTP do wysyłania SMS z Visual Basic

Aby wysłać SMS z Visual Basic, twój kod Visual Basic będzie musiał wysłać żądanie HTTP do bramki SMS. URL API jest pokazany poniżej. Zauważ, że adres IP (127.0.0.1) powinien zostać zastąpiony adresem IP twojej bramki SMS. Jeśli Ozeki SMS Gateway jest zainstalowany na tym samym komputerze, na którym działa aplikacja Visual Basic do wysyłania SMS, może to być 127.0.0.1. Jeśli jest zainstalowany na innym komputerze, powinien to być adres IP tego komputera.

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

Uwierzytelnianie HTTP do wysyłania SMS z Visual Basic

Aby uwierzytelnić klienta SMS w Visual Basic, należy wysłać nazwę użytkownika i hasło w zakodowanym ciągu base64 do serwera w żądaniu HTTP. Używany format to: base64(nazwa_użytkownika+":"+hasło). W C# możesz użyć następującego kodu do wykonania tego kodowania:

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

Na przykład, jeśli zakodujesz nazwę użytkownika 'http_user' i hasło 'qwe123', otrzymasz następujący zakodowany ciąg base64: aHR0cF91c2VyOnF3ZTEyMw==. Aby wysłać

Nagłówek żądania HTTP do wysyłania SMS z F#

Aby wysłać wiadomości SMS, należy dołączyć następujące linie jako nagłówki w żądaniu HTTP. Zauważ, że zawieramy typ zawartości i nagłówek Authorization.

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

Żądanie HTTP do wysyłania zaplanowanych SMS z Visual Basic

Aby przesłać SMS, Twoja aplikacja Visual Basic wyśle żądanie HTTP podobne do poniższego. Zauważ, że to żądanie zawiera część nagłówka HTTP i część ciała HTTP. Ciało HTTP to ciąg danych zakodowany w JSON. Zawiera numer odbiorcy i tekst wiadomości.

POST /api?action=sendmsg HTTP/1.1
Connection: Keep-Alive
Content-Length: 336
Content-Type: application/json
Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
Host: 127.0.0.1:9509

{
  "messages": [
    {
      "message_id": "9f79a6bd-5264-4ebe-a04c-4f1353c54657",
      "to_address": "+36201111111",
      "text": "Hello, World!",
      "create_date": "2021-06-11 14:34:41",
      "valid_until": "2021-06-18 14:34:41",
      "time_to_send": "2021-06-11 14:46:00",
      "submit_report_requested": true,
      "delivery_report_requested": true,
      "view_report_requested": true,
      "tags": []
    }
  ]
}
	

Odpowiedź HTTP otrzymana przez przykład SMS w Visual Basic

Gdy brama SMS otrzyma to żądanie, wygeneruje odpowiedź HTTP. Odpowiedź HTTP będzie zawierać kod statusu, aby wskazać, czy żądanie wysłania SMS zakończyło się sukcesem czy nie. Zwróci również strukturę zakodowaną w JSON, aby dostarczyć przydatne informacje o przesłaniu wiadomości.

HTTP/1.1 200 OK
User-Agent: OZEKI 10.3.118 (www.myozeki.com)
Content-Type: application/json; charset=utf8
Last-Modified: Fri, 11 Jun 2021 08:44:45 GMT
Server: 10/10.3.118
Transfer-Encoding: chunked

{
  "http_code": 200,
  "response_code": "SUCCESS",
  "response_msg": "Messages queued for delivery.",
  "data": {
    "total_count": 1,
    "success_count": 1,
    "failed_count": 0,
    "messages": [
      {
        "message_id": "ca824cbe-784c-44f9-b657-1c04f711f529",
        "from_station": "%",
        "to_address": "+36201111111",
        "to_station": "%",
        "text": "Hello, World!",
        "create_date": "2021-06-11 14:34:41",
        "valid_until": "2021-06-18 14:34:41",
        "time_to_send": "2021-06-11 14:46:00",
        "submit_report_requested": true,
        "delivery_report_requested": true,
        "view_report_requested": false,
        "tags": [
          {
            "name": "Type",
            "value": "SMS:TEXT"
          }
        ],
        "status": "SUCCESS"
      }
    ]
  }
}
	

Przykład SMS w Visual Basic: SendScheduledSms.sln


Jak pobrać przykładowy projekt (Samouczek wideo)

W tym filmie dowiesz się, jak pobrać i uruchomić przykładowy projekt SendScheduledSms.sln. Film rozpocznie się od strony pobierania i zakończy się otwartym edytorem kodu. Dowiesz się, jak pobrać i jak otworzyć przykładowy kod w Visual Basic. Ten bardzo szczegółowy film trwa tylko 1 minutę i jest łatwy do zrozumienia. Nie martw się, nie będziesz miał problemu z jego śledzeniem.

Wideo 1 - Jak pobrać i uruchomić przykładowy projekt powyżej (Samouczek wideo)

Poniższy przykładowy kod jest częścią rozwiązania Visual Studio SendScheduledSms.sln. Rozwiązanie Visual Studio może zawierać wiele projektów i wiele plików. W tym rozwiązaniu jest tylko jeden projekt: SendScheduledSms.vbproj i jeden plik: Program.vb.

jak wysłać zaplanowane sms z visual basic
Rysunek 3 - SendScheduledSms.sln

Jak używać przykładowego projektu

W kolejnym filmie dowiesz się, jak uruchomić przykładowy kod i jak sprawdzić log procesu. Rozpocznie się od uruchomienia bramki SMS Ozeki i przeprowadzi Cię aż do listy odroczonych wiadomości. Dowiesz się, jak sprawdzić log i jak uruchomić projekt do wysyłania zaplanowanych wiadomości. Film trwa tylko 1:22 minutę, więc nie będziesz miał problemu z jego zrozumieniem. Używamy oprogramowania bramki SMS Ozeki do logowania i wysyłania SMS. Jest to potężne, ale łatwe do opanowania oprogramowanie bramkowe.

Wideo 2 - Jak używać rozwiązania SendScheduledSms.vb (Samouczek wideo)

Uruchamianie przykładu SMS w Visual Basic na Windows

Kiedy używasz systemu Windows do uruchomienia tego przykładu SMS napisanego w Visual Basic, zauważysz, że uzyskujesz nieco lepszą wydajność niż podczas uruchamiania go na Linuxie. Aby zrozumieć, dlaczego tak się dzieje, należy wziąć pod uwagę, że Visual Basic wykorzystuje framework .NET do wykonywania kodu. Dzieje się tak, ponieważ implementacja .NET na Windows jest zoptymalizowana pod kątem wydajności, podczas gdy mono, czyli implementacja .NET na Linuxie, ma jeszcze pewne zaległości w tej dziedzinie.

Podsumowanie

Celem tego artykułu było pokazanie kroków planowania SMS w VB z pomocą Ozeki SMS Gateway. Narzędzia i wyjaśnienia są dostarczone przez Ozeki. Jeśli przeczytałeś wszystko uważnie i wykonałeś wszystkie kroki, powinieneś być w stanie zaplanować wiadomości w Visual Basic.

Ozeki SMS Gateway można pobrać ze strony Ozeki i używać w okresie próbnym, który jest całkowicie darmowy. Planowanie wiadomości pozwala wysyłać SMS-y do użytkowników mobilnych, gdy nie są zajęci, co oznacza, że możesz pracować z większą efektywnością.

Upewnij się, że nie kończysz czytania tutaj, sprawdź stronę z tutorialami Ozeki, gdzie znajdziesz więcej informacji na podobne tematy, takie jak odbieranie w VB.

Twoją kolejną rzeczą do zrobienia jest pobranie Ozeki SMS Gateway i rozpoczęcie pracy!

More information