Ir para o conteúdo

Mensagens RCS

RCS (Rich Communication Services) é a próxima geração de mensagens para dispositivos Android, oferecendo rich media, interatividade e recursos avançados além do SMS tradicional.

Visão geral

O RCS fornece recursos aprimorados de mensagens:

  • Rich media (imagens, vídeos, GIFs)
  • Botões e carrosséis interativos
  • Leia recibos e indicadores de digitação
  • Limites de caracteres mais altos (até 3.072 caracteres)
  • Melhor rastreamento de entrega
  • Identificação do remetente com marca

Disponibilidade

  • Plataforma: somente dispositivos Android
  • Rede: requer suporte RCS da operadora
  • Fallback: volta automaticamente para SMS se o RCS não estiver disponível

Mensagem RCS básica

Exemplo RCS

Solicitação

{
  "from": "YourBrand",
  "to": "+380XXXXXXXXX",
  "type": "rcs",
  "text": "Your RCS message text with rich formatting"
}

Parâmetros

Parâmetro Tipo Obrigatório Descrição
de corda Sim ID alfanumérico do remetente
para corda Sim Número de telefone do destinatário (E.164)
tipo corda Sim Defina como "rcs"
texto corda Sim Conteúdo da mensagem (até 3.072 caracteres)
messageData objeto Não Rich media e botões

Tipos de mensagens

Somente texto

Mensagem de texto simples com limite estendido de caracteres:

{
  "from": "YourBrand",
  "to": "+380XXXXXXXXX",
  "type": "rcs",
  "text": "Welcome to our service! RCS allows us to send much longer messages with rich formatting and interactive elements."
}

Texto + Imagem

{
  "from": "YourBrand",
  "to": "+380XXXXXXXXX",
  "type": "rcs",
  "text": "Check out our new product!",
  "messageData": {
    "media": {
      "url": "https://example.com/product.jpg",
      "type": "image/jpeg",
      "height": 600,
      "width": 800
    }
  }
}

Texto + Imagem + Botão

CODE_BLOCO_3

Texto + Vídeo

{
  "from": "YourBrand",
  "to": "+380XXXXXXXXX",
  "type": "rcs",
  "text": "Watch our product demo",
  "messageData": {
    "media": {
      "url": "https://example.com/demo.mp4",
      "type": "video/mp4",
      "thumbnail": "https://example.com/thumbnail.jpg"
    }
  }
}

Texto + Vários botões

CODE_BLOCO_5

Carrossel RCS

Exibir vários itens em um carrossel rolável:

{
  "from": "YourStore",
  "to": "+380XXXXXXXXX",
  "type": "rcs",
  "text": "Featured Products",
  "messageData": {
    "carousel": {
      "cards": [
        {
          "title": "Product A",
          "description": "Premium quality product",
          "media": {
            "url": "https://example.com/product-a.jpg",
            "type": "image/jpeg"
          },
          "buttons": [
            {
              "text": "Buy Now",
              "action": {
                "type": "openUrl",
                "url": "https://example.com/product-a"
              }
            },
            {
              "text": "Details",
              "action": {
                "type": "openUrl",
                "url": "https://example.com/product-a/details"
              }
            }
          ]
        },
        {
          "title": "Product B",
          "description": "Best seller",
          "media": {
            "url": "https://example.com/product-b.jpg",
            "type": "image/jpeg"
          },
          "buttons": [
            {
              "text": "Buy Now",
              "action": {
                "type": "openUrl",
                "url": "https://example.com/product-b"
              }
            }
          ]
        }
      ]
    }
  }
}

Ações do botão

Abrir URL

{
  "text": "Visit Website",
  "action": {
    "type": "openUrl",
    "url": "https://example.com"
  }
}

Discar número de telefone

{
  "text": "Call Us",
  "action": {
    "type": "dial",
    "phoneNumber": "+380XXXXXXXXX"
  }
}

Enviar localização

CODE_BLOCO_9

Evento do Calendário

{
  "text": "Add to Calendar",
  "action": {
    "type": "createCalendarEvent",
    "title": "Appointment",
    "startTime": "2025-01-25T14:00:00Z",
    "endTime": "2025-01-25T15:00:00Z"
  }
}

Especificações de mídia

Imagens

  • Formatos: JPEG, PNG, GIF
  • Tamanho máximo: 2 MB
  • Resolução recomendada: 800x600 ou 1200x800
  • Proporção: 16:9 ou 4:3

Vídeos

  • Formatos: MP4, 3GP
  • Tamanho máximo: 10 MB
  • Duração máxima: 2 minutos
  • Resolução recomendada: 1280x720

Áudio

  • Formatos: MP3, AAC
  • Tamanho máximo: 5 MB
  • Duração máxima: 5 minutos

Alternativa para SMS

O RCS volta automaticamente para SMS quando:

  • O destinatário não possui RCS
  • RCS está desabilitado no dispositivo destinatário
  • A rede não suporta RCS
{
  "from": "YourBrand",
  "to": "+380XXXXXXXXX",
  "type": "rcs",
  "text": "Check out our new product!",
  "messageData": {
    "media": {
      "url": "https://example.com/product.jpg",
      "type": "image/jpeg"
    },
    "buttons": [
      {
        "text": "Shop Now",
        "action": {
          "type": "openUrl",
          "url": "https://example.com/shop"
        }
      }
    ]
  },
  "fallback": {
    "type": "sms",
    "text": "Check out our new product! Visit: https://example.com/shop"
  }
}

Casos de uso

Comércio eletrônico

{
  "from": "YourStore",
  "to": "+380XXXXXXXXX",
  "type": "rcs",
  "text": "Your order has been shipped!",
  "messageData": {
    "media": {
      "url": "https://example.com/package.jpg",
      "type": "image/jpeg"
    },
    "buttons": [
      {
        "text": "Track Package",
        "action": {
          "type": "openUrl",
          "url": "https://example.com/track/ABC123"
        }
      },
      {
        "text": "Contact Support",
        "action": {
          "type": "dial",
          "phoneNumber": "+380XXXXXXXXX"
        }
      }
    ]
  }
}

Bancário

{
  "from": "YourBank",
  "to": "+380XXXXXXXXX",
  "type": "rcs",
  "text": "Low balance alert: Your account balance is $50",
  "messageData": {
    "buttons": [
      {
        "text": "View Balance",
        "action": {
          "type": "openUrl",
          "url": "https://bank.example.com/balance"
        }
      },
      {
        "text": "Transfer Money",
        "action": {
          "type": "openUrl",
          "url": "https://bank.example.com/transfer"
        }
      }
    ]
  }
}

Viagem

{
  "from": "YourAirline",
  "to": "+380XXXXXXXXX",
  "type": "rcs",
  "text": "Your flight is departing in 3 hours",
  "messageData": {
    "media": {
      "url": "https://example.com/boarding-pass.jpg",
      "type": "image/jpeg"
    },
    "buttons": [
      {
        "text": "Check-in",
        "action": {
          "type": "openUrl",
          "url": "https://airline.example.com/checkin"
        }
      },
      {
        "text": "Add to Calendar",
        "action": {
          "type": "createCalendarEvent",
          "title": "Flight Departure",
          "startTime": "2025-01-25T10:00:00Z"
        }
      }
    ]
  }
}

Melhores práticas

Conteúdo

  • ✅ Use imagens de alta qualidade (mínimo 800x600)
  • ✅ Mantenha o texto do botão curto (2-3 palavras)
  • ✅ Fornece substituto de SMS para conteúdo rico
  • ✅ Teste em diferentes dispositivos Android
  • ❌ Não exceda 4-5 botões por mensagem
  • ❌ Evite arquivos de vídeo grandes (>5MB)

Mídia

  • Use URLs HTTPS para todas as mídias
  • Otimize imagens para celular
  • Incluir texto alternativo para acessibilidade
  • Teste URLs de mídia antes de enviar

Botões

  • Máximo de 4 botões por mensagem
  • Texto de call to action claro
  • Teste todas as ações dos botões
  • Considere alternativa para ações indisponíveis

Marca

  • Use ID de remetente consistente
  • Incluir o logotipo da marca quando apropriado
  • Manter a voz e o tom da marca
  • Garanta consistência visual

Status de entrega

RCS fornece rastreamento de entrega aprimorado:

  • Enviado: Mensagem enviada à operadora
  • Entregue: mensagem entregue ao dispositivo
  • Ler: Mensagem aberta pelo destinatário
  • Falha: falha na entrega, fallback acionado

Verifique o status usando o endpoint de status.

Próximas etapas