NG Sistemas Manual de Integração SMS Integração SMS TI 2015 w w w. n g s i s t e m a s. c o m. b r
Índice Sumário executivo... 2 Integrações... 3 Desenho da solução.... 6 NG Sistemas 1
Sumário executivo A NG Sistemas uma empresa inovadora, que surgiu para atender as necessidades do mercado de tecnologia da informação, buscando reinventar-se a cada novo desafio. Para nós não há problema sem solução, apenas aqueles que estamos a caminho de resolver. MISSÃO Atender as necessidades de nossos clientes, fornecendo soluções seguras, confiáveis e inovadoras. Usar ferramentas tecnológicas visando o ganho de produtividade e simplificação de processos. VISÃO Ser uma empresa de atuação valorizada e reconhecimento nos mercados onde atua, contribuindo para rentabilidade dos negócios próprios de empresas parceiras. VALORES Seguir os princípios da ética, da inovação e da eficiência gerencial. Interagir permanentemente com o cliente, entendendo suas necessidades, conquistando seu respeito, satisfação e confiança. NG Sistemas 2
Integrações Hoje a NG Sistemas possui dois tipos de integrações possíveis com o seu Broker SMS a integração via HTTP Post ou a integração via Web Services. Http Post A integração com HTTP Post é feita através de um POST dado a uma URL, com alguns parâmetros configuráveis. http://ngsistemas.com.br/service.aspx?u=%1&p=%2&n=%3&m=%5 Parâmetro u p n m Descrição Usuário fornecido pela NG Sistemas. Senha fornecida pela NG Sistemas. DDD e Número de telefone que será enviado o SMS. Mensagem que será enviada por SMS (máximo 155 caracteres). Possíveis retornos. Retorno OK Authentication Failed Error Descrição Mensagem enviada com sucesso. Erro na autenticação usuário e senha. Erro de paramêtros. Exemplo de uso dentro de um sistemas C#: //Propriedades da NG Sistemas private const String userngsistemas = "test"; private const String passwordngsistemas = "JKNBjkde87wbHJB7839qkjn*&&3bN8786b"; private const String urlngsistemas = "http://ngsistemas.com.br/service.aspx"; public String sendsms(string number, String sms) try //Preenchendo os parametros string parametros = "?u" + userngsistemas; parametros += "&p" + passwordngsistemas; parametros += "&n" + number; parametros += "&m" + sms; // Cria o objeto de requisição System.Net.WebRequest requisicao = System.Net.WebRequest.Create(urlNGSistemas + parametros); NG Sistemas 3
// Realiza a requisição System.Net.HttpWebResponse retorno = (System.Net.HttpWebResponse)requisicao.GetResponse(); // Lê o objeto e faz a atribuição à variável System.IO.StreamReader stream = new System.IO.StreamReader(retorno.GetResponseStream(), System.Text.Encoding.GetEncoding("ISO-8859-1")); string dados = stream.readtoend(); return dados; catch (Exception ex) //Erro de autenticação Usuário ou senha if (ex.message.indexof("authentication Failed") >= 0) return "Erro de autenticação, verifique seu usuário e senha"; //Erro de paramêtros else if (ex.message.indexof("error") >= 0) return "Erro de parametros"; else return "Erro desconhecido " + ex.message; Web Services A integração com Web Service é feita através do protocolo padrão, utilizando-se de uma autenticação SOAP Header. URL: http://ngsistemas.com.br/webservicesms.asmx WSDL: http://ngsistemas.com.br/webservicesms.asmx?wsdl Parâmetro User Pass Token number sms Descrição Usuário fornecido pela NG Sistemas. Senha fornecida pela NG Sistemas. TOKEN fornecido pela NG Sistemas. DDD e Número de telefone que será enviado o SMS. Mensagem que será enviada por SMS (máximo 155 caracteres). Exemplo de uso em C# do método SendSMS: //Propriedades da NG Sistemas private const String userngsistemas = "test"; private const String passwordngsistemas = "JKNBjkde87wbHJB7839qkjn*&&3bN8786b"; private const String tokenngsistemas = "3781237891739281313254398534981283719274938fn9845830"; private const String urlngsistemas = "http://ngsistemas.com.br/webservicesms.asmx"; public static String sendsms(string number, String sms) WS.ValidationSoapHeader soapheader = new WS.ValidationSoapHeader(); soapheader.user = userngsistemas; soapheader.pass = passwordngsistemas; NG Sistemas 4
soapheader.token = tokenngsistemas; WS.WebServiceSMS webservicesms = new WS.WebServiceSMS(); webservicesms.validationsoapheadervalue = soapheader; WS.ReturnSendSMS returnsms = webservicesms.sendsms(number,sms); //Enviado com sucesso! if (returnsms.send) return returnsms.description + " ID da mensagem " + returnsms.idmessage; else //ERROR return returnsms.description; Além disto, temos o método GetStatusSMS, exemplo em c#: //Propriedades da NG Sistemas private const String userngsistemas = "test"; private const String passwordngsistemas = "JKNBjkde87wbHJB7839qkjn*&&3bN8786b"; private const String tokenngsistemas = "3781237891739281313254398534981283719274938fn9845830"; private const String urlngsistemas = "http://ngsistemas.com.br/webservicesms.asmx"; public static String sendsms(string idmessage) WS.ValidationSoapHeader soapheader = new WS.ValidationSoapHeader(); soapheader.user = userngsistemas; soapheader.pass = passwordngsistemas; soapheader.token = tokenngsistemas; WS.WebServiceSMS webservicesms = new WS.WebServiceSMS(); webservicesms.validationsoapheadervalue = soapheader; WS.ReturnStatusSMS returnstatussms = webservicesms.getstatussms(idmessage); //Status if (returnstatussms.statussms == WS.Status.Success) return "Sucesso"; else if (returnstatussms.statussms == WS.Status.Queue) return "Na Fila"; else if (returnstatussms.statussms == WS.Status.Processing) return "Processando"; else if (returnstatussms.statussms == WS.Status.NotFound) return "Não encontrado"; else if (returnstatussms.statussms == WS.Status.Error) return "Error"; else return "Error"; NG Sistemas 5
Desenho da solução. Integração via HTTP Post Ou WebService s Seu Cliente Laptop Seu Servidor Com o seu sistema Servidores NG Sistemas Celular do Cliente Antenas das operadoras Servidores das Operadoras (VIVO, CLARO,TIM,OI e NEXTEL) NG Sistemas 6