You are viewing the Portuguese (Brazil) site, but your language preference is set to English. Switch to English site →

Menu

Expand
Classifique esta página:

Enviar mensagens SMS e MMS em C++

Hoje, usaremos C++, algumas bibliotecas padrão, libcurl e algumas APIs POSIX para enviar mensagens SMS e MMS usando a API REST da Twilio. Você precisará de um ambiente de compilação compatível (principalmente) com POSIX, bem como uma libcurl para acompanhar este guia.

Vamos começar!

Inscreva‐se (ou faça login) na conta da Twilio

Você precisará fazer login em sua conta existente da Twilio ou criar uma nova conta.

Ainda não tem uma conta? Inscreva‐se para um teste gratuito da Twilio, rapidamente.

Comprar ou encontrar um número compatível com SMS

Você precisará de um número compatível com SMS (ou, opcionalmente, MMS) para concluir esta demonstração. Use um número de telefone que você já possui ou compre um novo com SMS ativado.

No console da Twilio, aqui você pode determinar os recursos do número adquirido:

Active Numbers List

Se precisar comprar um número, depois de navegar até o link "Buy a Number" (Comprar um número), clique na caixa de seleção SMS (e na caixa de seleção MMS, se desejar enviar mensagens de mídia).

Buy A Number

Pré‐requisitos para este guia de MMS e SMS em C++

Estamos nos concentrando em ambientes compatíveis com POSIX com este guia e testamos nosso código com clang-800.0.42.1 no Mac OSX 10.11, gcc versão 4.9.2 no Raspbian 8.0 (kernel 4.4.38-v7 ou superior) e gcc 5.4.0 no Cygwin 2.877 no Windows 7 64 bits.

Para criar, você precisará garantir que tenha:

libcurl já estava no Mac. No Raspberry Pi, você pode instalar uma versão adequada com:

sudo apt-get install libcurl4-openssl-dev

No Windows 7 e Cygwin, você pode instalar o libcurl com o Cygwin Setup:

Installing libcurl-devel and curl in Cygwin

Criar cpp_demo

Todos os três ambientes funcionaram com este exemplo de Makefile. Talvez seja necessário fazer pequenas edições, geralmente nos caminhos de pesquisa da biblioteca, para criar em seu ambiente.

Em quase todos os sistemas do tipo *NIX (incluindo Windows/Cygwin), a criação deve ser muito semelhante às seguintes linhas (você pode até mesmo copiar, colar e executar):

git clone https://github.com/TwilioDevEd/twilio_cpp_demo.git
cd twilio_cpp_demo
make

Enviar uma mensagem SMS ou MMS com C#

Acabamos de criar cpp_demo, que tenta enviar um SMS ou MMS com base nas suas entradas a partir da linha de comando. src/twilio.cc e include/twilio.hh demonstram uma classe, Twilio, que deve ser fácil de integrar em sua própria base de código. (Observe que antes de colocá‐lo em produção, você precisa adicionar validação de entrada e segurança. A primeira preocupação: o código em sua forma atual pode passar parâmetros HTTP adicionais pelas entradas da linha de comando.)

Para desenvolvedores C++, nosso guia de SMS e MMS em C pode fornecer algumas percepções importantes sobre o código a seguir, mas vamos analisar mais detalhadamente o que está acontecendo nos bastidores.

  • Primeiro, instanciamos um objeto Twilio com nossas credenciais de conta (encontre‐as no console da Twilio).
  • Segundo, chamamos o método send_message com os números to/from, a mensagem e, opcionalmente, um URL para uma imagem e um booleano informando se queremos uma saída detalhada.
Loading Code Sample...
        
        
        Instantiating a Twilio class and sending a SMS or MMS message with C++ and libcurl.

        Using the Twilio REST API from C++

        Instantiating a Twilio class and sending a SMS or MMS message with C++ and libcurl.
        • Em terceiro lugar, uma vez dentro do código, primeiro fazemos uma verificação de exceções (certificando-se de que a mensagem seja do tamanho adequado), seguida pela configuração de libcurl com nosso eventual HTTP POST
        • Em quarto lugar, o curl faz o HTTP POST e limpamos com curl_easy_cleanup.
        • Por fim, verificamos se a resposta foi bem‐sucedida ou não e retornamos o resultado à função de chamada.
        Loading Code Sample...
              
              
              The send_message method from the Twilio class from the CPP Messaging demo in C++.

              The C++ Twilio Class

              The send_message method from the Twilio class from the CPP Messaging demo in C++.

              Executar cpp_demo

              Executar cpp_demo a partir da linha de comando é fácil depois que você o tiver criado. Basta definir suas credenciais de conta e chamar o código da seguinte forma:

              account_sid=ACXXXXXXXXXXXXXXXXXXXXXX
              auth_token=your_auth_token
              bin/cpp_demo -a $account_sid -s $auth_token -t "+18005551212" -f "+18005551213" -m "Hello, World!"
              # Opcionalmente, use "-p http://some/path/to/img.jpg" para enviar um MMS.

              Obter C-Rious com Twilio e C++

              Após esta demonstração, agora você tem os meios de adicionar comunicações aos seus aplicativos C++ novos ou existentes. Adicione monitoramento ou ajuda ao seu aplicativo C++, ou traga seu próprio caso de uso.

              Se você é um mestre da linguagem ou mais próximo de um praticante de "C com classes" avise‐nos no Twitter quando tiver algo construído!

              Paul Kamp Kevin Segovia Daniel Erazo
              Classifique esta página:

              Precisa de ajuda?

              Às vezes, todos nós precisamos; a programação é difícil. Receba ajuda agora da nossa equipe de suporte, ou confie na sabedoria da multidão navegando pelo Stack Overflow Collective da Twilio ou buscando a tag Twilio no Stack Overflow.

              Loading Code Sample...
                    
                    
                    

                    Obrigado pelo seu feedback!

                    Selecione o(s) motivo(s) para seu feedback. As informações adicionais que você fornece nos ajudam a melhorar nossa documentação:

                    Enviando seu feedback...
                    🎉 Obrigado pelo seu feedback!
                    Algo deu errado. Tente novamente.

                    Obrigado pelo seu feedback!

                    thanks-feedback-gif