https://a.storyblok.com/f/270183/1368x665/12b8e7bca7/25jun_dev-blog_python_rcs.jpg

Como enviar mensagens com imagens RCS usando Python

Publicado em July 10, 2025

Tempo de leitura: 3 minutos

Serviços de Comunicação Avançada (RCS) aprimora as mensagens SMS e MMS tradicionais, oferecendo recursos como imagens em alta resolução, vídeos e elementos interativos. Uma mensagem de imagem RCS permite que as empresas enviem imagens diretamente para os aplicativos de mensagens padrão dos usuários, proporcionando uma experiência de comunicação mais rica.

Neste tutorial, você aprenderá a enviar imagens rapidamente usando mensagens RCS com a Messages API da Vonage em Python.

Resumo: Encontre o código funcional no GitHub.

Mobile screen showing an RCS message from 'Vonage' that includes a photo of four Vonage Developer Relations team members standing in front of a branded booth at a tech conference.RCS message showcasing an image sent via the Vonage Messages API, featuring the Vonage Developer Relations team at a conference booth.

Por que usar o RCS para a entrega de imagens?

Para garantir a melhor experiência com arquivos de mídia maiores (como imagens em alta resolução ou Videos), o RCS é a opção preferida, caso sua base de usuários seja compatível com ele. O RCS permite o envio de imagens muito maiores e com resolução mais alta em comparação com o MMS tradicional.

O tamanho máximo de arquivo para MMS é de 600 KB. Para RCS, o limite é de 100 MB. Isso representa um aumento de 17.000%!

> Observação: Os limites de MMS variam de acordo com a operadora, o país e outros fatores.

Pré-requisitos

Antes de começar, certifique-se de ter o seguinte:

  • Python 3.6 ou superior esteja instalado no seu computador.

  • Um account da API da Vonage.

  • Um agente registrado do RCS Business Messaging (RBM).

  • Um celular com recursos de recepção de RCS para testes.

Como entrar em contato com o seu gerente de account da Vonage

Para enviar e receber mensagens com recursos RCS no seu aplicativo da Vonage, você precisará ter um agente Rich Business Messaging (RBM) registrado e um telefone com recursos RCS.

Atualmente, o serviço de mensagens RCS via Vonage está disponível apenas para contas gerenciadas. Você precisará entrar em contato com seu gerente de conta para solicitar a ativação do Modo Desenvolvedor para o seu agente RBM. O Modo Desenvolvedor permite que você teste o envio de mensagens RCS para números incluídos na lista de permissões antes de concluir o processo de verificação do agente e iniciar a operação em produção.

Por favor, entre em contato com nossa equipe de vendas caso você não tenha um account gerenciado. 

>> Entenda a diferença entre RCS e RBM.

Passo 1: Crie seu projeto e instale as dependências

  • Crie a pasta e os arquivos do seu projeto.

mkdir python_send_rcs_image
cd python_send_rcs_image
touch .env send_rcs_image.py

  • Configure um ambiente virtual.

Isso garante que suas dependências permaneçam isoladas do Python do seu sistema.

python3 -m venv venv
source venv/bin/activate

  • Instale os pacotes necessários.

Além do SDK da Vonage, usaremos o dotenv para armazenar e acessar com segurança nossas credenciais da Vonage.

pip install vonage python-dotenv

Etapa 2: Configure seu aplicativo da Vonage

Seu script em Python utilizará a Messages API do Vonage. Para isso, crie um aplicativo do Vonage no Painel da Vonage com o recurso da Messages API habilitado. 

Nas configurações do seu aplicativo Vonage:

  1. Defina a URL de entrada como https://example.com/inbound_rcs.

  2. Defina a URL de status como https://example.com/rcs_status.** As mensagens recebidas e os status das mensagens serão abordados em um artigo futuro. Por enquanto, podemos usar apenas espaços reservados.

  3. Gere uma chave pública e uma chave privada clicando no botão. Certifique-se de mover sua private.key para o diretório raiz do projeto (/python_send_rcs_image).

  4. Salve as alterações.

Screenshot of the Vonage application creation form with fields for app name, API key binding, JWT authentication, AI privacy toggle, and Messages capability configuration with inbound and status webhook URLs.Vonage Developer Dashboard interface for creating a new application with RCS messaging capabilities, including webhook configuration and key authentication setup.

Em seguida, vincule seu RCS Agent clicando no guia “Vincular contas externas” :

Vonage dashboard interface displaying the Vonage-Python-RCS application with options to view API key, public key, and linked external accounts, including a VonageRCS entry with status 'Linked to this application'Dashboard view of the Vonage Python RCS application showing linked external account details, application metadata, and configuration for Voice and Messages APIs.

E agora você pode adicionar suas credenciais ao seu .env arquivo.

VONAGE_APPLICATION_ID=your_application_id
VONAGE_PRIVATE_KEY_PATH=./private.key
RCS_SENDER_ID=your_rbm_agent_id

Etapa 3: Escreva o script em Python para enviar uma mensagem de imagem RCS

Crie um arquivo Python (send_rcs_image.py) com o seguinte conteúdo:

import os
from dotenv import load_dotenv
from vonage import Auth, Vonage
from vonage_messages import RcsImage, RcsResource

# Load environment variables
load_dotenv()

# Initialize Vonage Auth and client
auth = Auth(
    application_id=os.getenv("VONAGE_APPLICATION_ID"),
    private_key=os.getenv("VONAGE_PRIVATE_KEY_PATH"),
)
vonage_client = Vonage(auth)

# Define the recipient's phone number and image URL
to_number = "###########"  # Your recipient's phone number
image_url = "https://www.vonage.com/content/dam/vonage/us-en/api/imagery/RCS_iPhoneScreen_V2-scaled.png" # Replace with your image_url

# Construct the RCS Image message
message = RcsImage(
    from_=os.getenv("RCS_SENDER_ID"),
    to=to_number,
    image=RcsResource(url=image_url),
)

# Send the message
response = vonage_client.messages.send(message)
print(response)

Certifique-se de que o to_number seja um número de telefone com recursos RCS e que o image_url seja uma URL acessível ao público que aponte para sua imagem. Observe que o campo é o seu RBM SenderID (o nome da marca). O SenderID exige uma formatação especial, como, por exemplo, não conter espaços. Verifique com seu gerente de Account caso tenha dúvidas.

Etapa 4: Executar o script

Execute o script usando o seguinte comando:

python send_rcs_image.py

Se for bem-sucedida, a resposta conterá um message_uuid, indicando que a mensagem foi aceita para entrega.

Conclusão

Agora você já aprendeu a enviar mensagens com imagens via RCS usando Python e a Messages API do Vonage. Qual recurso do RCS você vai explorar a seguir? Você pode conferir a lista completa de recursos de mensagens do RCS recursos de mensagens RCS na documentação para desenvolvedores.

Não deixe de nos contar no que você está trabalhando ou entre em contato para pedir ajuda em nosso Slack da Comunidadeou X, antigo Twitter.

Compartilhar:

https://a.storyblok.com/f/270183/384x384/e4e7d1452e/benjamin-aronov.png
Benjamin AronovDeveloper Advocate

Benjamin Aronov is a developer advocate at Vonage. He is a proven community builder with a background in Ruby on Rails. Benjamin enjoys the beaches of Tel Aviv which he calls home. His Tel Aviv base allows him to meet and learn from some of the world's best startup founders. Outside of tech, Benjamin loves traveling the world in search of the perfect pain au chocolat.