Operações síncronas e assíncronas no RCS para empresas

Este documento esclarece como a plataforma RCS para empresas processa o envio de mensagens e outras interações de API, distinguindo entre operações síncronas e assíncronas.

As interações da API RBM geralmente seguem um padrão de solicitação-resposta síncrono no nível HTTP. No entanto, os resultados de muitas chamadas de API, especialmente a entrega de mensagens, são processados de forma assíncrona por webhooks. Consulte as seções a seguir para mais detalhes.

Envio de mensagens: solicitação síncrona, entrega assíncrona

A solicitação da API phones.agentMessages.create é processada de forma síncrona do ponto de vista da API. Quando você faz uma solicitação HTTP para a plataforma RCS para empresas, o servidor responde quase imediatamente com um código de status HTTP padrão (como 200 OK ou um erro) para indicar se a solicitação foi recebida e é válida.

No entanto, a entrega real da mensagem ao usuário final é processada de forma assíncrona. Os seguintes fatores podem afetar esse processo:

  • Status do destinatário: o usuário pode estar off-line, com a bateria descarregada ou sem o RCS ativado.
  • Condições da rede: problemas na rede da operadora podem atrasar ou impedir a entrega de mensagens.

A plataforma RCS para empresas fornece atualizações de status de entrega de mensagens (como confirmações de leitura e de entrega) de forma assíncrona por webhooks. Portanto, embora a solicitação inicial da API seja síncrona, confie nos eventos de webhook assíncronos para rastrear a entrega de mensagens. Não espere uma confirmação imediata do status de entrega da resposta do phones.agentMessages.create.

Outras interações da API RBM

A maioria das outras APIs RBM baseadas em HTTP também opera com um modelo de solicitação-resposta síncrono. Essas APIs fornecem uma resposta HTTP imediata que indica o status da solicitação (sucesso ou erro). No entanto, embora a solicitação seja síncrona, as ações resultantes dela podem envolver processos assíncronos. Por exemplo, uma resposta bem-sucedida a uma chamada de API para atualizar informações do agente não significa que a atualização seja refletida instantaneamente em todos os lugares. Pode haver um pequeno atraso na propagação.

Endpoint de webhook: eventos assíncronos

Os seguintes eventos são entregues de forma assíncrona ao endpoint do webhook:

  • Mensagens recebidas do usuário: a plataforma RCS para empresas envia mensagens recebidas do usuário para o endpoint do webhook. Não se esqueça de verificar as mensagens recebidas.
  • Confirmações de entrega e leitura: as notificações de entrega e leitura de mensagens são enviadas por webhooks.
  • Eventos de conversa: alguns eventos relacionados à conversa, como indicadores de digitação, são enviados por webhooks.
  • Eventos de expiração e revogação de mensagens: a plataforma RCS para empresas envia eventos para confirmar se uma mensagem expirada foi revogada com sucesso.