Exemplo de banco de dados SMS em VB.NET

Veja como adicionar funcionalidade de SMS ao seu aplicativo VB.NET. Para a solução, você precisará de um servidor de banco de dados que armazene mensagens enviadas e recebidas. MS SQL, MS SQL Express, MySQL, Access, Oracle são aceitos. O código-fonte é fornecido. Você pode baixar e editá-lo.

Como adicionar funcionalidade de SMS ao VB.NET (Passos rápidos)

Para adicionar funcionalidade de SMS ao VB.NET:

  1. Configure o Ozeki SMS Gateway
  2. Teste o envio de SMS
  3. Baixe o Microsoft SQL Express
  4. Instale o Microsoft Visual Studio
  5. Crie um usuário e tabelas no banco de dados
  6. Configure o usuário do banco de dados no Ozeki
  7. Modifique o código VB.NET
  8. Insira SMS no banco de dados

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

Vídeo 1 - Como adicionar funcionalidade de SMS ao VB.NET (Tutorial em vídeo)

Introdução

A solução consiste em 3 partes diferentes (Figura 1). Ozeki SMS Gateway, o banco de dados SQL e seu aplicativo VB.NET. Verifique se o Ozeki SMS Gateway está conectado ao banco de dados SQL. Você pode encontrar vários tutoriais de conexão na página SMS do banco de dados SQL. Se estiver pronto, por favor verifique se o VB.NET pode ler e gravar registros do banco de dados.

enviar e receber mensagens sms com vb net
Figura 1 - Enviar e receber mensagens SMS com VB.NET

A figura mostra exatamente o que foi descrito no último parágrafo. Você pode enviar mensagens SMS inserindo um novo registro usando o aplicativo VB.NET. Verifique a tabela SQL para ver se novos registros foram inseridos. Essas mensagens devem ser enviadas automaticamente. Verifique se o aplicativo VB.NET funciona com o banco de dados, tanto lendo quanto inserindo registros. A leitura de registros é importante, pois é a maneira de ler mensagens recebidas.

Pré-requisitos

O principal software da operação é o Ozeki SMS Gateway, que você pode obter em seu aplicativo Ozeki 10. Este software pode conectar seu computador à rede móvel, assim como pode conectar seu PC a qualquer um dos seguintes servidores de banco de dados:

Você também precisará de um IDE de desenvolvimento em C# ou Visual Basic, como o Microsoft Visual Studio. Se ainda não fez, por favor baixe o projeto de exemplo de SMS em VB. Para resumir, aqui está uma lista completa do software necessário:

Como Instalar e Configurar VB.NET

Use os seguintes passos para criar uma solução funcional. Neste exemplo, você verá uma solução Microsoft SQL Express com exemplos de banco de dados prontos para copiar e colar. Por favor, baixe e instale o Ozeki 10 antes de prosseguir com estes passos. Faça um teste de envio de SMS manual para verificar se você consegue enviar e receber mensagens SMS com o Ozeki 10. Se o teste for bem-sucedido, você poderá enviar e receber mensagens SMS a partir da interface gráfica do aplicativo VB.net. Verifique se a mensagem foi enviada utilizando os logs de eventos do Ozeki 10.

Se você não estiver utilizando o SQL Express, por favor copie o código de criação de tabela de uma dessas opções de servidor SQL.

Passo 1 - Criar usuário e tabelas do banco de dados

Por favor, instale Microsoft SQL Express e Microsoft Visual Studio para que você possa seguir estes passos. Crie as tabelas do banco de dados no seu servidor Microsoft SQL Express copiando e colando o código 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

Código 1 - O código que cria a estrutura da tabela

Passo 2 - Conectar o Ozeki SMS Gateway ao seu banco de dados

Agora é hora de criar um usuário de Banco de Dados no Ozeki 10. Após o usuário ter sido criado, selecione 'SQL server' e copie e cole a seguinte string de conexão (Código 2). Não se esqueça de usar seu próprio nome de banco de dados, ID de usuário e senha.

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

Código 2 - String de conexão. Altere os parâmetros se necessário

Passo 3 - Modificar o código VB.NET para conectar com o Ozeki 10

Abra o projeto de exemplo no Visual Studio e edite o código-fonte, se necessário. No código 3, você deve fornecer os mesmos parâmetros de conexão usados acima no código 2. Os parâmetros VB.NET são adicionados à string de conexão 'myConnection' (Código 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")

Código 3 - Verifique se os parâmetros de conexão estão corretos

Passo 4 - Inserir registro de SMS no banco de dados

O seguinte código insere o conteúdo da caixa de texto da GUI de exemplo do VB.NET no banco de dados (Código 4).


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

Dim mySqlCommand As New _ 
SqlCommand(mySqlQuery, myConnection)

Código 4 - Insere um novo registro de mensagem SMS no banco de dados

Este código só pode ser executado se o aplicativo VB.NET conseguir se conectar ao banco de dados. Os valores inseríveis podem ser fornecidos na GUI do aplicativo (Figura 2). Após digitar o número do destinatário e o texto da mensagem, clique em 'Inserir' e o Usuário de Banco de Dados do Ozeki 10 encaminhará a mensagem inserida para o destinatário após encontrar o registro no banco de dados.

a interface do usuário deste exemplo vb net
Figura 2 - A interface do usuário deste exemplo VB.NET

Finalmente, a sequência de código no final da classe será executada (Código 5). Estes 3 métodos serão chamados. Eles irão conectar ao banco de dados, inserir o registro da mensagem SMS a ser enviada e fechar a conexão.


myConnection.Open()

mySqlCommand.ExecuteNonQuery()

myConnection.Close()

Código 5 - Insere o registro da mensagem

Exemplo completo de código VB.NET

O código completo que você pode ver abaixo (Código 6) é construído a partir dos segmentos descritos acima (Código 3 - 5). Você pode usar e modificar o código de exemplo livremente, como desejar. O método pode lançar uma exceção se não conseguir INSERIR a mensagem SMS a ser enviada.


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
Código 6 - O exemplo completo de código VB.NET

Com esta solução, você não precisará se preocupar com o enfileiramento de mensagens de saída, já que a fila será gerenciada pelo aplicativo Ozeki 10's SMS Gateway. Ele também adicionará um carimbo de data/hora e modificará o atributo de registro de status da mensagem para mostrar entrega bem-sucedida ou mal-sucedida para o destinatário.

Mensagens recebidas

Elas serão recebidas e armazenadas no servidor de banco de dados também. Embora o aplicativo VB.NET não precise estar online ao receber uma mensagem, pois ele pode visualizar a tabela 'ozekimessagein' a qualquer momento que estiver online, executando uma instrução SELECT na tabela.

Resumo

Este artigo mostrou como adicionar funcionalidade de gerenciamento de SMS ao seu aplicativo VB.NET com a ajuda do Ozeki SMS Gateway. Esta solução ajuda você a organizar suas mensagens com um servidor de banco de dados que armazena as mensagens SMS e o aplicativo VB.NET que classifica essas mensagens. Se você seguiu os passos acima cuidadosamente, agora é capaz de configurar o sistema apresentado, o que tornará a comunicação mais conveniente para você.

As informações obtidas são valiosas, há mais documentos úteis no site da Ozeki, então continue lendo. Aprenda sobre o exemplo de SMS HTTP em VB.NET no próximo tutorial.

Não perca seu precioso tempo, baixe o Ozeki SMS Gateway agora!

More information