Como Excluir um SMS em Ruby

A maneira mais simples de excluir mensagens SMS do Ruby é usar a API HTTP/Rest de SMS integrada do Ozeki SMS Gateway. Ao usar essa API, você enviará mensagens SMS enviando uma solicitação HTTP Post para o gateway de SMS. A solicitação HTTP Post conterá uma mensagem formatada em formato json. O gateway de SMS enviará esse SMS para o telefone do destinatário e retornará uma resposta HTTP 200 OK para sua solicitação.

como excluir um sms em ruby
Figura 1 - Como Excluir um SMS em Ruby

Código Ruby para excluir mensagens SMS

O exemplo de código Ruby para SMS abaixo demonstra como você pode enviar um SMS agendado usando a API HTTP Rest de SMS do Ozeki SMS Gateway com a gem ozeki_libs_rest do Ruby. Esta biblioteca é fornecida gratuitamente, e você pode usá-la e modificá-la em qualquer um de seus projetos.

DeleteSms.rb
require 'ozeki_libs_rest'

configuration = Configuration.new(
    "http_user",
    "qwe123",
    "http://127.0.0.1:9509/api"
);

msg = Message.new
msg.id = "f53efb1a-8ff6-4e62-97c3-2c1e81964b9d"

api = MessageApi.new(configuration)

result = api.delete(Folder.new.inbox, msg)

print(result)
	
Como usar o exemplo de SMS em Ruby:

Este exemplo de SMS em Ruby pode ser usado em qualquer aplicação Ruby. Para usá-lo, você deve baixar a gem ozeki_libs_rest. Após o download da gem, você precisa adicionar uma referência a ela em seu código-fonte Ruby. Isso permitirá que você use as classes fornecidas pela gem ozeki_libs_rest. Você pode usar a classe Message para criar o SMS. Você pode usar a classe MessageApi para enviar o SMS para o gateway de SMS. O gateway de SMS encaminhará sua mensagem para a rede móvel por meio de uma conexão sem fio ou pela Internet.

Baixar DeleteSms.rb

O código-fonte explicado neste artigo pode ser baixado, usado e modificado gratuitamente.
Download: DeleteSms.rb.zip (319B)

O que há no arquivo DeleteSms.rb.zip?

O DeleteSms.rb.zip contém o arquivo DeleteSms.rb, que contém o código de exemplo para mostrar como enviar um SMS. Este código de exemplo está listado abaixo.

Figura 2 - O que há dentro do DeleteSms.rb.zip

Como excluir um SMS usando Ruby (Passos rápidos)

Para excluir um SMS usando Ruby:

  1. Baixe o arquivo DeleteSms.rb.zip
  2. Extraia o arquivo .zip da pasta Downloads
  3. Abra o arquivo DeleteSms.rb em qualquer editor de texto como o Bloco de Notas do Windows
  4. Inicie o Ozeki SMS Gateway
  5. Crie um usuário de API HTTP no Ozeki
  6. Execute o código Ruby DeleteSms.rb usando o prompt de comando
  7. Verifique a caixa Enviados no Ozeki SMS Gateway
Instale o Ozeki SMS Gateway e crie um usuário de API HTTP

Para poder enviar SMS do Ruby, primeiro você precisa instalar o Ozeki SMS Gateway. O gateway de SMS pode ser instalado no mesmo computador onde você desenvolve seu código Ruby no Visual Studio. Após a instalação, o próximo passo é conectar o Ozeki SMS Gateway à rede móvel. Você pode enviar um SMS de teste da interface gráfica do Ozeki para verificar se sua conexão com a rede móvel está funcionando. O passo final para preparar seu ambiente é criar um usuário de API HTTP para SMS. Crie um usuário com o nome de usuário "http_user" e senha "qwe123" para fazer o exemplo funcionar sem modificações.

Após a configuração do ambiente, você pode executar seu código Ruby.

URL da API HTTP para enviar SMS do Ruby

Para enviar SMS do Ruby, seu Ruby terá que enviar uma solicitação HTTP para o gateway de SMS. A URL da API é mostrada abaixo. Observe que o endereço IP (127.0.0.1) deve ser substituído pelo endereço IP do seu gateway de SMS. Se o Ozeki SMS Gateway estiver instalado no mesmo computador onde o aplicativo Ruby de SMS está sendo executado, pode ser 127.0.0.1. Se estiver instalado em um computador diferente, deve ser o endereço IP desse computador.

http://127.0.0.1:9509/api?action=rest
	
Autenticação HTTP para enviar SMS do Ruby

Para autenticar o cliente de SMS Ruby, você precisa enviar o nome de usuário e senha em uma string codificada em base64 para o servidor em uma solicitação HTTP. O formato usado é: base64(nome de usuário+":"+senha). Em Ruby, você pode usar o seguinte código para fazer essa codificação:

username_password = username + ':' + password
username_password_encoded = Base64.encode64(username_password)
'Basic ' + username_password_encoded
	

Por exemplo, se você codificar o nome de usuário 'http_user' e a senha 'qwe123', você obterá a seguinte string codificada em base64: aHR0cF91c2VyOnF3ZTEyMw==. Para enviar

Cabeçalho da solicitação HTTP para enviar SMS do Ruby

Para enviar as mensagens SMS, você precisa incluir as seguintes linhas como cabeçalhos na solicitação HTTP. Observe que incluímos um cabeçalho de tipo de conteúdo e um cabeçalho de Autorização.

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

Solicitação HTTP para enviar SMS a partir do Ruby

Para excluir uma mensagem, sua aplicação Ruby enviará uma solicitação HTTP semelhante à mostrada abaixo. Observe que esta solicitação contém uma parte de cabeçalho HTTP e uma parte de corpo. A parte do corpo contém os IDs de SMS codificados em JSON.

POST /api?action=deletemsg HTTP/1.1
Content-Length: 73
Content-Type: application/json
Accept: application/json
Accept-Encoding: gzip;q=1.0,deflate;q=0.6,identity;q=0.3
Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
Host: 127.0.0.1:9509
User-Agent: Faraday v1.5.0

{	
	"folder":	"inbox",
	"message_ids":	[
		"8ddff323-a0e1-474f-b4b1-58d7fed30009"
	]
}
	

Resposta HTTP recebida pelo exemplo de SMS em Ruby

Assim que o gateway SMS receber esta solicitação, ele gerará uma resposta HTTP. A resposta HTTP conterá um código de status para indicar se a solicitação de envio de SMS foi bem-sucedida ou não. Também retornará uma estrutura codificada em JSON para fornecer detalhes úteis sobre as mensagens.

User-Agent: OZEKI 10.3.123 (www.myozeki.com)
Content-Type: application/json; charset=utf8
Last-Modified: Tue, 06 Jul 2021 15:58:36 GMT
Server: 10/10.3.123
Transfer-Encoding: chunked

{
	"http_code": 200,
	"response_code": "SUCCESS",
	"response_msg": "",
	"data": {
	  "folder": "inbox",
	  "message_ids": [
	    "8ddff323-a0e1-474f-b4b1-58d7fed30009"
	  ]
	}
}
	

Exemplo de SMS em Ruby: DeleteSms.rb

No próximo vídeo, você verá como baixar o arquivo de exemplo. Este vídeo de 36 segundos é muito detalhado e mostrará cada etapa importante que você precisa seguir para ter o arquivo do projeto em seu computador. Você não terá problemas para acompanhar as etapas.

Vídeo 1 - Como baixar e abrir o arquivo acima (Tutorial em vídeo)

O código de exemplo

O código de exemplo abaixo faz parte do arquivo DeleteSms.rb. Este código Ruby excluirá a mensagem com o ID armazenado na variável msg.id (Figura 3). Você pode modificar a variável para que o código exclua outra mensagem. Se você estiver familiarizado com a linguagem de programação Ruby, sinta-se à vontade para modificar o código conforme desejar.

Figura 3 - Arquivo DeleteSms.rb

Como usar o projeto de exemplo (Tutorial em vídeo)

Neste vídeo, vamos mostrar como você pode executar um projeto que exclui uma mensagem escolhida. Ele começará com a inicialização do Ozeki SMS Gateway e terminará com a pasta de entrada vazia, de onde a mensagem foi excluída. Este vídeo de 1:12 explica tudo o que você precisa fazer para iniciar o projeto. Estamos usando o Ozeki SMS Gateway, que oferece uma interface de usuário muito intuitiva, para que você não tenha problemas para seguir as etapas.

Vídeo 2 - Como usar o arquivo DeleteSms.rb (Tutorial em vídeo)

Resumo

O artigo acima mostrou as etapas de exclusão de SMS em Ruby com a ajuda do Ozeki SMS Gateway. Manter um armazenamento equilibrado e uma caixa de entrada frequentemente limpa é importante se você trabalha com SMS regularmente. Esta solução é um ótimo exemplo de como é fácil gerenciar o Ozeki SMS Gateway com códigos Ruby. Também deve ser mencionado que o Ozeki SMS Gateway permite que você registre mensagens SMS em um banco de dados e oferece inúmeras capacidades de relatório para fornecer mais informações sobre a conexão SMS.

Não termine seus estudos aqui, visite a página de tutoriais da Ozeki e leia mais sobre coisas como envio de múltiplos SMS em Ruby.

A única coisa a fazer agora é baixar o Ozeki SMS Gateway e começar a trabalhar!

More information