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.
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.rbrequire '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)
Baixar DeleteSms.rb
O código-fonte explicado neste artigo pode ser baixado, usado e modificado gratuitamente.
Download: DeleteSms.rb.zip (319B)
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.
Para excluir um SMS usando Ruby:
- Baixe o arquivo DeleteSms.rb.zip
- Extraia o arquivo .zip da pasta Downloads
- Abra o arquivo DeleteSms.rb em qualquer editor de texto como o Bloco de Notas do Windows
- Inicie o Ozeki SMS Gateway
- Crie um usuário de API HTTP no Ozeki
- Execute o código Ruby DeleteSms.rb usando o prompt de comando
- Verifique a caixa Enviados no Ozeki SMS Gateway
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 RubyPara 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
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 RubyPara 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.
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.
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.
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
- Enviar SMS com a API REST HTTP em Ruby (exemplo de código)
- Enviar múltiplos SMS com a API REST HTTP em Ruby (exemplo de código)
- Agendar SMS com a API REST HTTP em Ruby (exemplo de código)
- Receber SMS com a API REST HTTP em Ruby (exemplo de código)
- Excluir SMS com a API REST HTTP em Ruby (exemplo de código)
- Como baixar a biblioteca Ruby SMS mais recente do Github
- Enviar SMS em Ruby a partir do Linux