Configure sua conta de parceiro

Depois de se registrar como parceiro do RCS para empresas, você terá uma conta de parceiro. Para acessar as configurações da conta de parceiro, abra o Business Communications Developer Console e clique em Configurações da conta de parceiro. Nessa seção, você pode fazer o seguinte:

Atualizar informações da conta de parceiro

Na página Configurações, é possível conferir seu ID de parceiro e atualizar as seguintes informações:

Campo Descrição
Nome do parceiro Nome da sua conta de parceiro
Nome de exibição O nome vai aparecer nos relatórios de faturamento que as operadoras recebem (como o campo owner_name). As operadoras usam isso para identificar você como um parceiro de confiança e gerar as informações de faturamento corretas para seu uso do RCS for Business e alcançar os assinantes delas. O nome informado aqui precisa ser igual ao usado nos contratos de mensagens da operadora.
Ponto de contato técnico

A pessoa com quem o Google vai entrar em contato se houver problemas técnicos com seus agentes. Você pode atualizar o

  • Nome
  • Endereço de e-mail corporativo
  • Número de telefone
Webhook Esse é o URL do endpoint do webhook. Clique em Configurar para atualizar. Quando você configura o webhook do parceiro, ele é aplicado a todos os seus agentes. Se quiser usar um webhook diferente para um agente individual, configure um webhook de agente que será aplicado apenas a ele.

Gerenciar marcas

Como parceiro do RCS for Business, você pode criar agentes em nome das marcas.

Use a página Marcas nas Configurações da conta para adicionar, editar e remover as marcas associadas à sua conta de parceiro.

Adicionar uma marca

Para adicionar uma marca, digite o nome dela no campo de entrada e clique em Adicionar.

Editar uma marca

Para editar uma marca:

  1. Clique na caixa de seleção ao lado do nome da marca.
  2. Clique no botão e em Editar nome.
  3. Faça as edições e clique em Concluído.

Remover uma marca

Não é possível remover uma marca associada a um agente, mesmo que ele não tenha sido lançado.

Para remover uma marca, clique na caixa de seleção ao lado do nome dela e clique em Excluir.

Gerenciar usuários

Na página Usuários, em Configurações da conta, você gerencia os usuários da sua conta de parceiro. O usuário que criou a conta de parceiro tem a função de proprietário. Os novos usuários podem ter a função de gerente ou leitor.

  • Os gerentes podem acessar todos os recursos do Developer Console para gerenciar todos os agentes pertencentes à conta de parceiro.
  • Os leitores têm acesso somente leitura ao Developer Console para ver todos os agentes pertencentes à conta de parceiro.

Adicionar um usuário

Para adicionar um usuário, insira o endereço de e-mail dele no campo de entrada e selecione a Função.

Quando você adiciona um novo usuário, ele recebe um e-mail informando que tem acesso à conta de parceiro.

Remover um usuário

Para remover um usuário, faça o seguinte:

  1. Encontre o usuário que você quer remover e clique no botão na linha da tabela dele.
  2. Selecione Remover usuário.
  3. Confirme a remoção.

O usuário removido recebe um e-mail informando que ele não tem mais acesso à conta de parceiro.

Não é possível remover um usuário com a função de proprietário. Para mudar ou remover o proprietário, entre em contato com o suporte.

Mudar a função de um usuário

Para atualizar a função de um usuário:

  1. Encontre o usuário que você quer atualizar e clique no botão na linha da tabela dele.
  2. Selecione Editar função.
  3. Escolha uma nova função no menu suspenso.
  4. Clique em Salvar.

Configurar uma conta de serviço para autenticar chamadas de API

Ao fazer chamadas para a API RBM, você autentica as chamadas com uma chave de conta de serviço. Com ela, é possível criar e gerenciar marcas e agentes, além de enviar mensagens e solicitações como um agente. Uma conta de serviço pode ter até 10 chaves.

Para autenticar chamadas de API com segurança, você também precisa da ferramenta de linha de comando oauth2l.

Siga estas etapas para gerar uma chave da conta de serviço:

  1. Em Configurações da conta, acesse a página Conta de serviço.
  2. Clique em Criar chave e em Criar. O navegador faz o download da chave da conta de serviço.

Armazene a chave da conta de serviço em um local seguro e particular. Não compartilhe sua chave publicamente. Você vai precisar dessa chave mais tarde para acessar as APIs do RBM.

Configurar o webhook do parceiro

Um webhook é um callback HTTPS criado por um parceiro que especifica como seu agente deve responder a mensagens e eventos. Depois de configurar o webhook, você pode começar a receber mensagens e eventos.

Se quiser usar um webhook diferente para qualquer um dos seus agentes, configure um webhook no nível do agente que vai substituir o webhook do parceiro. Para mais informações, consulte Configurar um webhook do agente.

Para configurar o webhook do parceiro, siga estas etapas:

  1. Abra o Business Communications Developer Console e faça login com sua Conta do Google de parceiro do RCS para empresas.

  2. Abra as Configurações da conta.

  3. Em URL do webhook do RCS Business Messaging, clique em Configurar.

  4. Em URL de endpoint do webhook, insira o URL do webhook começando com "https://".

  5. Anote o valor de clientToken. Você precisa dele para verificar se as mensagens recebidas são do Google.

  6. Configure seu webhook para aceitar uma solicitação POST com o parâmetro clientToken especificado e envie uma resposta 200 OK com o valor de texto simples do parâmetro secret como o corpo da resposta.

    Por exemplo, se o webhook receber uma solicitação POST com o seguinte conteúdo do corpo:

    {
      "clientToken":"SJENCPGJESMGUFPY",
      "secret":"1234567890"
    }
    

    então seu webhook precisa confirmar o valor clientToken e, se clientToken estiver correto, retornar uma resposta 200 OK com 1234567890 como o corpo da resposta:

    // clientToken from Configure
    const myClientToken = "SJENCPGJESMGUFPY";
    
    // Example endpoint
    app.post("/rbm-webhook", (req, res) => {
      const msg = req.body;
      if (msg.clientToken === myClientToken) {
          res.status(200).send(msg.secret);
          return;
      }
      res.send(400);
    });
    
  7. No Developer Console, clique em Verificar. Quando o RCS para empresas verifica seu webhook, a caixa de diálogo é fechada.

Para orientações sobre o processamento assíncrono de webhooks e evitar falhas na entrega, consulte Processamento de mensagens.

Verificar mensagens recebidas

Como os webhooks podem receber mensagens de qualquer remetente, verifique se o Google enviou as mensagens recebidas antes de processar o conteúdo delas.

Para verificar se o Google enviou uma mensagem que você recebeu, siga estas etapas:

  1. Extraia o cabeçalho X-Goog-Signature da mensagem. É uma cópia com hash e codificada em base64 do payload do corpo da mensagem.
  2. Decodifique em base64 o payload do RBM no elemento message.body da solicitação.
  3. Usando o token do cliente do webhook (que você especificou ao configurar o webhook) como uma chave, crie um HMAC SHA512 dos bytes do payload da mensagem decodificada em base-64 e codifique o resultado em base64.
  4. Compare o hash X-Goog-Signature com o hash que você criou.
    • Se os hashes forem iguais, você confirmou que o Google enviou a mensagem.
    • Se os hashes não corresponderem, verifique o processo de hash em uma mensagem conhecida.

      Se o processo de hash estiver funcionando corretamente e você receber uma mensagem que acredita ter sido enviada de forma fraudulenta, entre em contato com nossa equipe.

Node.js

  if ((requestBody.hasOwnProperty('message')) && (requestBody.message.hasOwnProperty('data'))) {
    // Validate the received hash to ensure the message came from Google RBM
    let userEventString = Buffer.from(requestBody.message.data, 'base64');
    let hmac = crypto.createHmac('sha512', CLIENT_TOKEN);
    let data = hmac.update(userEventString);
    let genHash = data.digest('base64');
    let headerHash = req.header('X-Goog-Signature');

    if (headerHash === genHash) {
      let userEvent = JSON.parse(userEventString);

      console.log('userEventString: ' + userEventString);
      handleMessage(userEvent);
    } else {
      console.log('hash mismatch - ignoring message');
    }
  }

  res.sendStatus(200);
  

Próximas etapas

Agora que sua conta de parceiro está configurada, é hora de criar seu primeiro agente.