Pushbullet
13/06/2019
0
Alguém saberia me dizer como poderia usar a API do Pushbullet em delphi???
https://docs.pushbullet.com/
Gostaria de informar o número do celular em um maskedit e digitar a mensagem em um memo, e ao clicar no botão enviar a mensagem e disparada através da api do pushbullet.Mais não tenho ideia de como usar.
Alguém ajuda?
Grato
Bruno Henrique
Posts
13/06/2019
Bruno Henrique
using System; using System.Data.SqlTypes; using System.IO; using System.Net; using System.Text; using Bibliotecas.Model; public partial class StoredProcedures { [Microsoft.SqlServer.Server.SqlProcedure] public static void stpEnvia_Torpedo(SqlString Nr_Numero, SqlString Ds_Mensagem) { if (Nr_Numero.IsNull) Retorno.Erro("Favor informar o número de telefone que irá receber a mensagem"); if (Nr_Numero.Value.Length <= 9) Retorno.Erro("Favor informar o número de telefone com DDD"); if (Ds_Mensagem.IsNull) Retorno.Erro("Favor informar a mensagem que será enviada"); if (Ds_Mensagem.Value.Length > 160) Retorno.Erro("O tamanho máximo da mensagem a ser enviada por SMS é de 160 caracteres"); try { const string AccessToken = "seu_access_token"; //https://www.pushbullet.com/#settings const string UserIdentity = "token_usuario"; //curl --header "Access-Token: access_token" https://api.pushbullet.com/v2/users/me const string DeviceIdentity = "token_do_dispositivo"; //curl--header "Access-Token: access_token" https://api.pushbullet.com/v2/devices var dsScript = @"{ ""push"": { ""type"": ""messaging_extension_reply"", ""package_name"": ""com.pushbullet.android"", ""source_user_iden"": """ + UserIdentity + @""", ""target_device_iden"": """ + DeviceIdentity + @""", ""conversation_iden"": """ + ((Nr_Numero.Value.Length <= 11) ? "+55" + Nr_Numero.Value : Nr_Numero.Value) + @""", ""message"": """ + Ds_Mensagem.Value.Replace('\\\\', '/') + @""" },""type"": ""push"" }"; var request = (HttpWebRequest) WebRequest.Create("https://api.pushbullet.com/v2/ephemerals"); request.Method = "POST"; request.Headers.Add("Access-Token", AccessToken); request.UserAgent = "curl/7.37.0"; request.ContentType = "application/json"; var buffer = Encoding.GetEncoding("UTF-8").GetBytes(dsScript); using (var reqstr = request.GetRequestStream()) { reqstr.Write(buffer, 0, buffer.Length); using (var response = request.GetResponse()) { var dataStream = response.GetResponseStream(); var reader = new StreamReader(dataStream); var responseFromServer = reader.ReadToEnd(); if (responseFromServer == "{}") Retorno.Mensagem(responseFromServer); else Retorno.Erro(responseFromServer); } } } catch (Exception e) { Retorno.Erro("Erro : " + e.Message); } } }
E tem esse em Php
<?php // Variáveis $Nr_Numero = "+5527912345678"; $Ds_Mensagem = "Teste da API com o PHP"; $Nr_Numero = (strlen( $Nr_Numero ) <= 11) ? "+55" . $Nr_Numero : $Nr_Numero; $Ds_Mensagem = str_replace( "\\\\", "/", $Ds_Mensagem ); // Parâmetros $strUrl = "https://api.pushbullet.com/v2/ephemerals"; $AccessToken = "seu_access_token"; $UserIdentity = "seu_token_usuario"; $DeviceIdentity = "seu_token_dispositivo"; $requisicao = [ 'type' => 'push', 'push' => [ 'type' => 'messaging_extension_reply', 'package_name' => 'com.pushbullet.android', 'source_user_iden' => $UserIdentity, 'target_device_iden' => $DeviceIdentity, 'conversation_iden' => $Nr_Numero, 'message' => $Ds_Mensagem ] ]; $headers = array( "Content-type: application/json", "Access-Token: " . $AccessToken, ); $ch = curl_init(); curl_setopt( $ch, CURLOPT_URL, $strUrl ); // Cabeçalhos e configurações curl_setopt( $ch, CURLOPT_HEADER, 1 ); curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers ); curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 ); curl_setopt( $ch, CURLOPT_USERAGENT, "curl/7.37.0" ); curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, TRUE ); curl_setopt( $ch, CURLOPT_MAXREDIRS, 2 ); // Desativa a verificaçõo de certificado SSL curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, 0 ); curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, 0 ); // Envia os dados curl_setopt( $ch, CURLOPT_POST, 1 ); curl_setopt( $ch, CURLOPT_POSTFIELDS, json_encode( $requisicao ) ); $retorno = curl_exec( $ch ); curl_close( $ch ); if ( substr( $retorno, -2 ) == "{}" ) { echo "Torpedo enviado com sucesso para o número " . $Nr_Numero; } else { echo "Erro: " . $retorno; } ?>
17/09/2019
Battiston
Olá, temos uma solução bem bacana para envio de SMS, integrando via API ou acessando direto na web. Temos um valor bem agressivo para envio de SMS. Fique a vontade para conhecer a DisparoPro, acesse:
https://pro.disparopro.com.br/integracao-via-api/
Clique aqui para fazer login e interagir na Comunidade :)