Zenvia



Tutorial de Integra??oPYTHONSumário TOC \h \z \t "Titulo;1" Tutorial de Integra??o - Python PAGEREF _Toc336870059 \h 3Configurando Envio PAGEREF _Toc336870060 \h 4Enviando Múltiplos SMS PAGEREF _Toc336870061 \h 5Enviando Múltiplos SMS a partir de um arquivo CSV PAGEREF _Toc336870062 \h 7Enviando SMS Individuais PAGEREF _Toc336870063 \h 8Cancelamento de envio de SMS PAGEREF _Toc336870064 \h 10Consulta de SMS recebidos PAGEREF _Toc336870065 \h 11Consulta de status de SMS PAGEREF _Toc336870066 \h 12Obtendo respostas das requisi??es PAGEREF _Toc336870067 \h 13Glossário PAGEREF _Toc336870068 \h 14Tutorial de Integra??o - PythonObjetivoO objetivo do tutorial de integra??o é guiar os desenvolvedores que desejam integrar suas aplica??es ao gateway de SMS da Zenvia, automatizando assim seus envios de SMS conforme sua necessidade.Mostraremos em simples passos como fazer suas aplica??es Python enviarem SMS por meio da biblioteca de integra??o que disponibilizamos para facilitar os envios.Pré-requisitosPara executar a biblioteca de integra??o Python, basta ter instalada a vers?o 2.0 ou superior do Python. Visite a biblioteca PythonA biblioteca Python é um conjunto de classes que tem como principal fun??o fazer requisi??es HTTP da forma mais organizada e simplificada possível, fazendo com que poucas informa??es sejam passadas por sua aplica??o.Configurando Envio1? PassoFa?a o download da biblioteca de integra??o por meio do link descompacte o conteúdo do arquivo dentro da pasta onde se encontr?o os códigos-fontes de sua aplica??o (p. ex., dentro da pasta src).2? PassoPara manipula??o de mensagens (envios e consultas), importe em seu código Python a biblioteca HumanClientMain do package HUMANSMS.Exemplo:from humansms.HumanClientMain import *3? PassoPara qualquer opera??o do gateway de SMS, é preciso identificar-se com sua conta e código de acesso.Trabalharemos com a inst?ncia da classe MultipleMessageService para envio múltiplo de SMS; com a inst?ncia da classe SimpleMessageService para envio de mensagens simples; e com a inst?ncia da classe QueryService para consultas de status de SMS, sempre passando por par?metros de seus construtores a sua conta e o código de acesso. Tais dados s?o cedidos pela Zenvia juntamente com a negocia??o do contrato firmado com a empresa.Exemplo:send = SimpleMessageService('human.fake.hc', 'ABC132')send = MultipleMessageService('human.fake.hc', 'ABC132')send = QueryService('human.fake.hc', 'ABC132')Enviando Múltiplos SMS1? PassoCrie uma inst?ncia de objeto da classe MultipleMessageService.Exemplo:send = MultipleMessageService('human.fake.hc', 'ABC132')2?PassoEscolheremos um layout de mensagem que será passado ao gateway, pois essa configura??o influencia no formato da string que passaremos por par?metro para o envio. Esse será passado como o segundo par?metro, podendo ser uma constante da classe MultipleMessage. Esse par?metro é opcional, pois por padr?o será estabelecido o tipo C.Exemplo:tipo = MultipleMessage.TYPE_C3?PassoEm nosso exemplo, escolheremos o layout C, que é padr?o da API e que consiste em “ HYPERLINK \l "Message" to;message;id”. Para adicionar mais de um SMS, inclua o caractere \n entre as strings.Exemplo:msg_list = "550099999999;teste0;004\n"msg_list = "550099999998;teste1;005\n"msg_list = "550099999997;teste2;006"4?PassoConfiguraremos o Retorno de Status por Callback, que, por padr?o, será inativo, ou seja, igual a zero (esse par?metro n?o é obrigatório). Ele pode ser passado como uma constante da classe Message.Exemplo:callBack = Message. CALLBACK_INACTIVE oucallBack = Message. CALLBACK_FINAL_STATUS oucallBack = Message. CALLBACK_INTERMEDIARY_STATUS 5? Passo:Para enviar o SMS, basta chamar o método sendMultipleList da classe MultipleMessageService e passar os par?metros que acabamos de definir.Exemplo:responses = send.sendMultipleListMsg(msg_list, tipo, callBack)6?Passo:Para obter as respostas das requisi??es, veja o item “Obtendo respostas das requisi??es”.Enviando Múltiplos SMS a partir de um arquivo CSV1? PassoCrie uma inst?ncia de objeto da classe MultipleMessageService.2?PassoO envio de múltiplos SMS a partir de um arquivo CSV é muito semelhante ao envio de SMS múltiplos a partir de uma string.Passaremos por par?metro o caminho do arquivo, respeitando os layouts de mensagens. Utilizaremos o layout C como exemplo.Exemplo:550092167288;teste0;004550095650122;teste1;005550097745821;teste2;005Exemplo:path = “C:\arquivo.csv”;tipo = MultipleMessage.TYPE_C3? PassoConfiguraremos o Retorno de Status por Callback, que, por padr?o, será inativo, ou seja, igual a zero (esse par?metro n?o é obrigatório). Ele pode ser passado como uma constante da classe Message.Exemplo:callBack = Message. CALLBACK_INACTIVEoucallBack = Message. CALLBACK_FINAL_STATUS oucallBack = Message. CALLBACK_INTERMEDIARY_STATUS 4? PassoBasta chamar o método sendMultipleFileCSV da classe MultipleMessageService e passar os par?metros que acabamos de definir.Exemplo:responses = send.sendMultipleFileCSV(path, tipo, callBack);5?PassoPara obter as respostas das requisi??es, veja o item “Obtendo respostas das requisi??es”.Enviando SMS Individuais1? PassoCrie uma inst?ncia de objeto da classe SimpleMessageService.Exemplo:send = SimpleMessageService('human.fake.hc', 'ABC132')2? PassoVamos informar qual SMS será enviado. O número de caracteres n?o deve ultrapassar 150 por mensagem.Exemplo:msg= “Olá mundo da Mensagem de Texto!!”3? PassoDefiniremos o número de celular do destinatário, sempre iniciando com o DDI 55, por se tratar de uma mensagem nacional, e seguido do DDD da localidade de destino.Exemplo:to= “551199554455”4?PassoPodemos também informar o número do remetente do SMS, seguindo as mesmas regras de numera??o do destinatário. Esse par?metro é opcional.Exemplo:from = “555181183663”5? PassoInformaremos o id do SMS a ser enviado. Esse id deve ser gerado e informado por sua aplica??o. Essa informa??o é opcional, mas de muita import?ncia caso você deseje cancelar ou consultar status dos SMS.Exemplo:id = “002”6? PassoPara agendarmos o envio de um SMS passaremos por par?metro a data em que queremos que o SMS seja enviado. Esse par?metro é opcional; se n?o for informado, o SMS será enviado imediatamente.Exemplo:schedule= “dd/mm/aaaa hh:mm:ss”7? PassoConfiguraremos o Retorno de Status por Callback, que, por padr?o, será inativo, ou seja, igual a zero (esse par?metro n?o é obrigatório). Ele pode ser passado como uma constante da classe Message.Exemplo:callBack = Message. CALLBACK_INACTIVE oucallBack = Message. CALLBACK_FINAL_STATUS oucallBack = Message. CALLBACK_INTERMEDIARY_STATUS 8? PassoAgora basta chamar o método sendSimpleMsg.responses = send.sendSimpleMsg(msg, to, from, id, schedule, callBack );9? PassoPara obter as respostas das requisi??es, veja o item “Obtendo respostas das requisi??es”.Cancelamento de envio de SMS1? PassoPara cancelarmos um SMS agendado que ainda n?o foi enviado, precisamos ter em m?os o id do SMS (isso ressalta a import?ncia de termos um controle de ids de SMS enviados em nossa aplica??o).Crie uma inst?ncia de objeto da classe SimpleMessageService.Exemplo:send = SimpleMessageService('human.fake.hc', 'ABC132')2?PassoAgora basta invocarmos o método cancelSMS, passando por par?metro o id do SMS que queremos cancelar.Exemplo:responses = send.cancelSMS(“002”)Consulta de SMS recebidos1? PassoPara consultar textos SMS enviados para a sua aplica??o (por exemplo, quando um SMS é enviado por sua aplica??o e você espera que seu cliente a responda), sua aplica??o deve estar habilitada a receber SMS (veja mais informa??es na área dos desenvolvedores da Zenvia Desenvolvedores >> Consulta de SMS Recebido)Crie uma inst?ncia de objeto da classe QueryService.Exemplo:send = QueryService('human.fake.hc', 'ABC132')2? PassoInvoque o método listReceivedSMS, para obter a lista de SMS recebidos.Exemplo:responses = send.listReceivedSMS()Consulta de status de SMS1? PassoPara consultar o status dos SMS enviados, crie uma inst?ncia de objeto da classe QueryService.Exemplo:send = QueryService('human.fake.hc', 'ABC132')2? PassoAgora basta passarmos por par?metro uma lista com os ids dos SMS enviados.Exemplo:msg_list = {};msg_list = {"001","002","003","004","005","006","007","008","009","010"}Obs.: Fica a cargo de sua aplica??o salvar os ids dos SMS ao serem enviados com o layout C (lembrando que nesse layout o id dos SMS é passado por sua aplica??o), pois assim será possível fazer a consulta de status de cada SMS.3? PassoVamos chamar o método queryMultipleStatus, passando por par?metro a nossa lista de ids de SMS enviados.Exemplo:responses = send.queryMultipleStatus(msg_list)Podemos também fazer uma consulta individual do status de um SMS. Para isso, chamaremos o método querySimpleStatus(), passando o id do SMS.Exemplo:responses = send.querySimpleStatus(“001”)Obtendo respostas das requisi??esTodas as requisi??es feitas pela API retornaram um array de objetos Responsecom seus respectivos códigos e descri??es da mensagem de resposta.Exemplo:for msgResponse in response: print msgResponse.getCode() print msgResponse.getDescription()GlossárioItemPropriedadeDescri??o1ToNúmero de telefone do SMS no formato DDI + DDD + Telefone (Exemplo: 555199990101).2MessageMensagem que será enviada ao telefone. Terá no máximo 150 caracteres (sem o campo From).3FromIdentifica??o do remetente que será atribuído à mensagem. O campo “Message” + o campo “From” devem ter tamanho máximo de 150 caracteres.4IdSua identifica??o do SMS para fins de consulta.5ScheduleData de agendamento de envio do SMS.6Tipos de callbackINACTIVE(0) (Padr?o): N?o será enviada mensagem de callback para a sua aplica??o.FINAL(1): Será enviada a mensagem de callback com somente o estado final de cada mensagem enviada.FULL(2): Será enviada a mensagem de callback com os estados intermediários e o estado final de cada mensagem enviada.Observa??o: Para os callbacks Final e Full, deverá ser cadastrado no atendimento da Zenvia um host ao qual ser?o enviadas as requisi??es.7StringConjunto de caracteres.8Tipos de layoutTipo A: to;messageTipo B: to;message;fromTipo C: to;message;idTipo D: to;message;id;fromTipo E: to;message;from;id;schedule ................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download

To fulfill the demand for quickly locating and searching documents.

It is intelligent file search solution for home and business.

Literature Lottery

Related searches