Przykład bazy danych SMS w VB.NET

Zobacz, jak dodać funkcjonalność SMS do swojej aplikacji VB.NET. Do rozwiązania będziesz potrzebować serwera bazy danych, który przechowuje wysłane i odebrane wiadomości. Akceptowane są MS SQL, MS SQL Express, MySQL, Access, Oracle. Dostępny jest kod źródłowy. Możesz go pobrać i edytować.

Jak dodać funkcjonalność SMS do VB.NET (Szybkie kroki)

Aby dodać funkcjonalność SMS do VB.NET:

  1. Skonfiguruj Ozeki SMS Gateway
  2. Przetestuj wysyłanie SMS
  3. Pobierz Microsoft SQL Express
  4. Zainstaluj Microsoft Visual Studio
  5. Utwórz użytkownika i tabele w bazie danych
  6. Skonfiguruj użytkownika bazy danych w Ozeki
  7. Zmodyfikuj kod VB.NET
  8. Wstaw SMS do bazy danych

Pobierz: vb.net-sms-example-sql.zip (70 Kb)

Wideo 1 - Jak dodać funkcjonalność SMS do VB.NET (Samouczek wideo)

Wprowadzenie

Rozwiązanie składa się z 3 różnych części (Rysunek 1). Ozeki SMS Gateway, baza danych SQL i Twoja aplikacja VB.NET. Sprawdź, czy Ozeki SMS Gateway jest połączony z bazą danych SQL. Możesz znaleźć wiele samouczków dotyczących połączenia na stronie SMS z bazy danych SQL. Jeśli to zrobisz, sprawdź, czy VB.NET może odczytywać i zapisywać rekordy w bazie danych.

wysyłanie i odbieranie wiadomości sms za pomocą vb net
Rysunek 1 - Wysyłanie i odbieranie wiadomości SMS za pomocą VB.NET

Rysunek dokładnie pokazuje to, co zostało opisane w ostatnim akapicie. Możesz wysyłać wiadomości SMS, wstawiając nowy rekord za pomocą aplikacji VB.NET. Sprawdź tabelę SQL, czy nowe rekordy zostały w niej umieszczone. Te wiadomości powinny zostać automatycznie wysłane. Sprawdź, czy aplikacja VB.NET współpracuje z bazą danych zarówno w zakresie odczytu, jak i wstawiania rekordów. Odczyt rekordów jest ważny, ponieważ w ten sposób można odczytywać przychodzące wiadomości.

Wymagania wstępne

Głównym oprogramowaniem operacji jest Ozeki SMS Gateway, które możesz pobrać do swojej aplikacji Ozeki 10. To oprogramowanie może połączyć Twój komputer z siecią komórkową, a także może połączyć Twój komputer z dowolnym z następujących serwerów baz danych:

Będziesz także potrzebować środowiska programistycznego C# lub Visual Basic, takiego jak Microsoft Visual Studio. Jeśli jeszcze tego nie zrobiłeś, pobierz przykład projektu SMS w VB. Podsumowując, oto pełna lista wymaganego oprogramowania:

Jak zainstalować i skonfigurować VB.NET

Wykonaj poniższe kroki, aby utworzyć działające rozwiązanie. W tym przykładzie zobaczysz rozwiązanie z wykorzystaniem Microsoft SQL Express z gotowymi przykładami bazy danych do skopiowania. Proszę pobrać i zainstalować Ozeki 10 przed kontynuowaniem tych kroków. Ręcznie przetestuj wysyłanie SMS czy możesz wysyłać i odbierać wiadomości SMS za pomocą Ozeki 10. Jeśli test zakończył się sukcesem, będziesz mógł wysyłać i odbierać wiadomości SMS z interfejsu graficznego aplikacji VB.net. Sprawdź, czy wiadomość została wysłana, korzystając z dzienników zdarzeń Ozeki 10.

Jeśli nie używasz SQL Express, skopiuj kod tworzenia tabeli z jednej z tych opcji serwera SQL.

Krok 1 - Utwórz użytkownika bazy danych i tabele

Zainstaluj Microsoft SQL Express i Microsoft Visual Studio, aby móc wykonać te kroki. Utwórz tabele bazy danych na serwerze Microsoft SQL Express, kopiując i wklejając kod 1.

create database ozeki
GO

use ozeki
GO

CREATE TABLE ozekimessagein (
 id int IDENTITY (1,1),
 sender varchar(30),
 receiver varchar(30),
 msg varchar(160),
 senttime varchar(100),
 receivedtime varchar(100),
 operator varchar(30),
 msgtype varchar(30),
 reference varchar(30),
);

CREATE TABLE ozekimessageout (
 id int IDENTITY (1,1),
 sender varchar(30),
 receiver varchar(30),
 msg varchar(160),
 senttime varchar(100),
 receivedtime varchar(100),
 operator varchar(100),
 msgtype varchar(30),
 reference varchar(30),
 status varchar(30),
 errormsg varchar(250)
);
GO
    
sp_addLogin 'ozekiuser', 'ozekipass'
GO
  
sp_addsrvrolemember 'ozekiuser', 'sysadmin'
GO

Kod 1 - Kod tworzący strukturę tabel

Krok 2 - Połącz Ozeki SMS Gateway z bazą danych

Teraz czas na utworzenie użytkownika bazy danych w Ozeki 10. Po utworzeniu użytkownika wybierz 'SQL server' i skopiuj-wklej następujący ciąg połączenia (Kod 2). Nie zapomnij użyć własnej nazwy bazy danych, identyfikatora użytkownika i hasła.

Server=.\SQLEXPRESS; Database=ozeki; UID=ozekiuser; PWD=ozekipass;

Kod 2 - Ciąg połączenia. Zmień parametry jeśli to konieczne

Krok 3 - Zmodyfikuj kod VB.NET, aby połączyć się z Ozeki 10

Otwórz przykładowy projekt w Visual Studio i edytuj kod źródłowy, jeśli to konieczne. W kodzie 3 należy podać te same parametry połączenia, które zostały użyte powyżej w kodzie 2. Parametry VB.NET są dodawane do ciągu połączenia 'myConnection' (Kod 3).


Dim dbUsername As String = "ozekiuser"
Dim dbPassword As String = "ozekipass"
Dim database As String = "ozeki"

Dim myConnection As _
New SqlConnection( _
"Server=.\SQLEXPRESS;User ID=" _
& dbUsername _
& ";password=" _
& dbPassword _
& ";Database=" _
& database _
& ";Persist Security Info=True")

Kod 3 - Sprawdź, czy parametry połączenia są poprawne

Krok 4 - Wstaw rekord SMS do bazy danych

Poniższy kod wstawia zawartość pól tekstowych z interfejsu graficznego przykładu VB.NET do bazy danych (Kod 4).


Dim mySqlQuery As String = _ 
"INSERT INTO ozekimessageout " _
& "(receiver,msg,status) " _
& "VALUES ('" & tbReceiver.Text _
& "', '" & tbMessage.Text & "', 'send');"

Dim mySqlCommand As New _ 
SqlCommand(mySqlQuery, myConnection)

Kod 4 - Wstawia nowy rekord wiadomości SMS do bazy danych

Ten kod może zostać wykonany tylko wtedy, gdy aplikacja VB.NET może połączyć się z bazą danych. Wartości do wstawienia można podać w interfejsie graficznym aplikacji (Rysunek 2). Po wpisaniu numeru odbiorcy i tekstu wiadomości kliknij 'Wstaw' a użytkownik bazy danych Ozeki 10 przekaże wstawioną wiadomość do odbiorcy po znalezieniu rekordu w bazie danych.

interfejs użytkownika tego przykładu vb net
Rysunek 2 - Interfejs użytkownika tego przykładu VB.NET

Na końcu zostanie wykonana sekwencja kodu na dole klasy (Kod 5). Te 3 metody zostaną wywołane. Połączą się z bazą danych, wstawią rekord wiadomości SMS do wysłania i zamkną połączenie.


myConnection.Open()

mySqlCommand.ExecuteNonQuery()

myConnection.Close()

Kod 5 - Wstawia rekord wiadomości Pełny przykład kodu VB.NET

Pełny kod, który możesz zobaczyć poniżej (Kod 6), jest zbudowany z segmentów opisanych powyżej (Kod 3 - 5). Możesz swobodnie używać i modyfikować przykładowy kod według własnych potrzeb. Metoda może zgłosić wyjątek, jeśli nie może INSERTować wiadomości SMS do wysłania.


Imports System
Imports System.Data
Imports System.Data.SqlClient

Public Class Form1

Private Sub bSend_Click( _ 
  ByVal sender As System.Object, _ 
  ByVal e As System.EventArgs)
    
  Handles bSend.Click
  Try
  Dim dbUsername As String = "ozekiuser"
  Dim dbPassword As String = "ozekipass"
  Dim database As String = "ozeki"
 	
  Dim myConnection As New SqlConnection( _
	    "Server=.\SQLEXPRESS;User ID=" _
		& dbUsername _
		& ";password=" _
		& dbPassword _
		& ";Database=" _
		& database _
		& ";Persist Security Info=True")

Dim mySqlQuery As String = "INSERT INTO " _
& "ozekimessageout(receiver,msg,status) " _
& "VALUES('" & tbReceiver.Text & "', '" _
& tbMessage.Text & "', 'send');"
	
  Dim mySqlCommand As New _ 
  SqlCommand(mySqlQuery, myConnection)
	
  myConnection.Open()
	
  mySqlCommand.ExecuteNonQuery()

  myConnection.Close()


  Catch ex As Exception
    MessageBox.Show(ex.Message)
  End Try
End Sub
End Class
Kod 6 - Cały przykładowy kod VB.NET

Dzięki temu rozwiązaniu nie musisz martwić się o kolejkowanie wiadomości wychodzących, ponieważ kolejka będzie obsługiwana przez aplikację Ozeki 10 SMS Gateway. Dodatkowo zostanie dodany znacznik czasu oraz zmodyfikowany atrybut rejestru statusu wiadomości, aby pokazać udaną lub nieudaną dostawę do odbiorcy.

Wiadomości przychodzące

Będą one odbierane i przechowywane na serwerze bazy danych. Chociaż aplikacja VB.NET nie musi być online podczas odbierania wiadomości, ponieważ może przeglądać tabelę 'ozekimessagein' w dowolnym momencie, gdy przejdzie online, wykonując instrukcję SELECT na tej tabeli.

Podsumowanie

W tym artykule pokazano, jak dodać funkcjonalność zarządzania SMS-ami do aplikacji VB.NET za pomocą Ozeki SMS Gateway. To rozwiązanie pomaga organizować wiadomości za pomocą serwera bazy danych, który przechowuje SMS-y, oraz aplikacji VB.NET, która klasyfikuje te wiadomości. Jeśli dokładnie wykonałeś powyższe kroki, możesz teraz skonfigurować przedstawiony system, który ułatwi Ci komunikację.

Uzyskane informacje są cenne, na stronie Ozeki znajduje się więcej przydatnych dokumentów, więc czytaj dalej. Dowiedz się więcej o przykładzie SMS HTTP w VB.NET w następnym tutorialu.

Nie marnuj cennego czasu, pobierz Ozeki SMS Gateway już teraz!

More information