Exemplo de SMS HTTP em VB.NET

Veja como adicionar funcionalidade de SMS ao seu aplicativo VB.NET. Para a solução, você só precisará de um Ozeki 10 e um Microsoft Visual Studio. A comunicação funcionará através do protocolo HTTP. O código-fonte é fornecido. Você pode baixá-lo e editá-lo.

Como adicionar funcionalidade de SMS ao VB.NET (Diretrizes fáceis de seguir)

Para adicionar funcionalidade de SMS ao VB.NET:

  1. Instale o Microsoft Visual Studio
  2. Baixe o projeto de exemplo
  3. Inicie o Ozeki SMS Gateway
  4. Adicione uma Conexão de Servidor HTTP
  5. Abra o projeto de exemplo em VB.NET
  6. Reescreva os parâmetros, se necessário
  7. Crie a URL de requisição HTTP
  8. Envie a requisição HTTP para o Ozeki

Download: send-sms-vb.net-http-sms-example.zip (106 Kb)

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

Introdução

Aplicativos VB.NET podem ser desenvolvidos de forma flexível para criar páginas da web dinâmicas e aplicativos padrão. Geralmente, os desenvolvedores precisam adicionar mensagens móveis aos seus aplicativos, para que os usuários possam enviar mensagens SMS para qualquer destinatário. Normalmente, a maneira mais simples e conveniente de adicionar mensagens SMS ao seu sistema é usando um gateway SMS HTTP, como o aplicativo Ozeki 10's SMS Gateway, e enviar mensagens para este gateway usando requisições HTTP (Figura 1).

enviar e receber mensagens sms com requisições http
Figura 1 - Enviar e receber mensagens SMS com requisições HTTP

Além de enviar mensagens SMS, você também pode recebê-las com VB.NET. Você pode fazer isso de duas maneiras. A maneira mais fácil é criar um Usuário HTTP Client no Ozeki SMS Gateway, que pode encaminhar mensagens recebidas para os seus códigos de programa em VB.NET. Isso funciona se você for capaz de processar requisições HTTP. A outra maneira é baixar periodicamente as mensagens recebidas. Você pode baixar mensagens de texto com relatórios de entrega do Ozeki SMS Gateway.

Pré-requisitos

Há apenas dois pré-requisitos que você deve baixar. O aplicativo Ozeki 10's SMS Gateway e o Microsoft Visual Studio para codificar em VB.NET. Ambos são os dois extremos da comunicação HTTP. Além do Microsoft Visual Studio, você pode usar qualquer outra IDE que permita desenvolver em VB.NET. Se você rolar para baixo, poderá ver os códigos de exemplo em VB.NET para o aplicativo HTTP. Aqui você encontra a lista de software e o programa de exemplo:

Configurar o Ozeki 10 e executar o código de exemplo

Você pode facilmente baixar e instalar o Ozeki 10. Verifique o guia de início rápido de SMS para conectá-lo facilmente à rede móvel. Você também precisará criar uma Conexão de Servidor HTTP no Ozeki 10. Clique em 'Adicionar novo usuário ou aplicativo...' e procure pela Conexão de Servidor HTTP na lista. Clique no botão azul 'Instalar' ao lado dela (Figura 2).

Figura 2 - Instalando uma Conexão de Servidor HTTP

Você precisará fornecer o nome de usuário e a senha. Não esqueça essas credenciais de login. Você precisará fornecê-las no VB.NET substituindo as strings de exemplo no código-fonte.

Passo 1 - Configurar os parâmetros de conexão no código de exemplo em VB.NET

Abra o projeto de exemplo em VB.NET e reescreva os parâmetros necessários (Código 1).

Dim request As HttpWebRequest

Dim response As HttpWebResponse = Nothing
Dim url As String
Dim username As String = "admin"
Dim password As String = "abc123"
Dim host As String = "http://127.0.0.1:9501"
Dim originator As String = "06201234567"
Código 1 - Parâmetros HTTP

As strings 'username' e 'password' são as credenciais de login pertencentes à Conexão de Servidor HTTP. Se o Ozeki 10 e o seu aplicativo VB.NET estiverem rodando em máquinas diferentes, então é necessário reescrever o parâmetro 'host' para o endereço IP e número da porta da máquina com Ozeki 10. O 'originator' é o número de telefone usado como remetente.

Passo 2 - Compor URL a partir dos parâmetros

Código 2 compõe uma requisição HTTP a partir dos parâmetros fornecidos no Código 1. Esta URL será usada para postar sua mensagem SMS no aplicativo SMS Gateway do Ozeki 10. Todos os parâmetros especificados na documentação da API HTTP SMS do Ozeki podem ser incluídos na URL. Os valores devem ser codificados em URL, para que caracteres especiais não quebrem a especificação HTTP.


url = host + "/api?action=sendmessage&" _
& "username=" & HttpUtility.UrlEncode(username) _
& "&password=" + HttpUtility.UrlEncode(password) _
& "&recipient=" + HttpUtility.UrlEncode(tbReceiver.Text) _
& "&messagetype=SMS:TEXT" _
& "&messagedata=" + HttpUtility.UrlEncode(tbMessage.Text) _
& "&originator=" + HttpUtility.UrlEncode(originator) _
& "&serviceprovider=" _
& "&responseformat=html"

Código 2 - URL de requisição HTTP criada a partir dos parâmetros Passo 3 - Enviar URL para o Ozeki 10

Código 3 contém as últimas três linhas deste exemplo em VB.NET. Ele envia a requisição HTTP e mostra a resposta em uma janela pop-up. O método embutido WebRequest.Create("...") do VB.NET envia a URL para o Ozeki 10, enquanto o método GetResponse() coleta a resposta. Ela aparecerá em uma janela pop-up gerada com o método MessageBox.Show("...").

request = DirectCast(WebRequest.Create(url), HttpWebRequest)
    
response = DirectCast(request.GetResponse(), HttpWebResponse)
    
MessageBox.Show("Resposta: " & response.StatusDescription)
Código 3 - Enviar requisição HTTP e mostrar resposta em janela pop-up

É recomendado percorrer as ações da API HTTP e os parâmetros correspondentes para controlar o Ozeki 10 através da API HTTP. Dessa forma, você pode criar URLs de requisição para suas necessidades.

Código de exemplo completo em VB.NET

O código completo que você pode ver abaixo (Código 4) é construído a partir dos segmentos descritos acima (Código 1 - 3). Você pode usar e modificar o código de exemplo livremente como desejar. Uma exceção pode ser lançada se houver um problema com a comunicação HTTP.

Imports System
Imports System.IO
Imports System.Net
Imports System.Text
Imports System.Web

Public Class fMain

Private Sub bSend_Click(ByVal sender As System.Object, 
ByVal e As System.EventArgs) Handles bSend.Click
	Dim request As HttpWebRequest
	Dim response As HttpWebResponse = Nothing
	Dim url As String
	Dim username As String
	Dim password As String
	Dim host As String
	Dim originator As String
	
	Try

		host = "http://127.0.0.1:9501"
		originator = "06201234567"
		username = "admin"
		password = "abc123"
		
		url = host + "/api?action=sendmessage&" _
		         & "username=" & HttpUtility.UrlEncode(username) _
		         & "&password=" + HttpUtility.UrlEncode(password) _
		         & "&recipient=" + HttpUtility.UrlEncode(tbReceiver.Text) _
		         & "&messagetype=SMS:TEXT" _
		         & "&messagedata=" + HttpUtility.UrlEncode(tbMessage.Text) _
		         & "&originator=" + HttpUtility.UrlEncode(originator) _
		         & "&serviceprovider=GSMModem1" _
		         & "&responseformat=html"
		
		request = DirectCast(WebRequest.Create(url), HttpWebRequest)
		
		response = DirectCast(request.GetResponse(), HttpWebResponse)
		
		MessageBox.Show("Resposta: " & response.StatusDescription)

	Catch ex As Exception
		MessageBox.Show(ex.Message)
		
	End Try
End Sub
End Class
Código 4 - O código de exemplo completo Conclusão

Este artigo foi escrito para que você veja como adicionar funcionalidade SMS ao seu aplicativo VB.NET usando o Ozeki SMS Gateway. Um aplicativo VB.NET é realmente benéfico de se usar, pois pode ser desenvolvido de forma flexível para criar páginas web dinâmicas e aplicativos padrão igualmente. Se você seguiu o tutorial cuidadosamente, aprendeu como criar um usuário cliente HTTP no Ozeki SMS Gateway e como usá-lo para o desenvolvimento de sistema de mensagens em seu aplicativo VB.NET.

Você pode encontrar mais artigos no site da Ozeki para ler sobre tópicos interessantes e soluções impressionantes. Confira o próximo guia sobre como enviar SMS do VB.NET usando a API HTTP.

Faça o download do Ozeki SMS Gateway agora, para um sistema SMS com melhor desempenho!

More information