Configura il tuo account partner

Una volta registrato come partner RCS for Business, avrai un account partner. Per accedere alle impostazioni dell'account partner, apri la Business Communications Developer Console e fai clic su Impostazioni dell'account partner. Da qui puoi:

Aggiornare i dati dell'account partner

Nella pagina Impostazioni puoi visualizzare il tuo ID partner e aggiornare le seguenti informazioni:

Campo Descrizione
Nome partner Nome dell'account partner
Nome visualizzato Il nome verrà visualizzato nei report di fatturazione che ricevono gli operatori (come campo owner_name). Gli operatori lo utilizzeranno per identificarti come partner affidabile e generare le informazioni di fatturazione corrette per il tuo utilizzo di RCS for Business per raggiungere i loro abbonati. Il nome che fornisci qui deve corrispondere a quello utilizzato nei contratti di messaggistica con l'operatore.
Punto di contatto tecnico

Persona che Google contatterà in caso di problemi tecnici con gli agenti. Puoi aggiornare il

  • Nome
  • Indirizzo email aziendale
  • Numero di telefono
Webhook Questo è l'URL dell'endpoint webhook. Fai clic su Configura per aggiornarlo. Quando configuri il webhook del partner, questo viene applicato a tutti i tuoi agenti. Se vuoi utilizzare un webhook diverso per un singolo agente, puoi configurare un webhook dell'agente che verrà applicato solo a quell'agente.

Gestire i brand

In qualità di partner RCS for Business, puoi creare agenti per conto dei brand.

Utilizza la pagina Brand nelle Impostazioni account per aggiungere, modificare e rimuovere i brand associati al tuo account partner.

Aggiungi un brand

Per aggiungere un brand, inserisci il nome nel campo di input e fai clic su Aggiungi.

Modificare un brand

Per modificare un brand:

  1. Fai clic sulla casella di controllo accanto al nome del brand.
  2. Fai clic sul pulsante e poi su Modifica nome.
  3. Apporta le modifiche e fai clic su Fine.

Rimuovere un brand

Un brand non può essere rimosso se è associato a un agente, anche se l'agente non è stato lanciato.

Per rimuovere un brand, seleziona la casella di controllo accanto al nome del brand e fai clic su Elimina.

Gestisci utenti

La pagina Utenti in Impostazioni account è dove gestisci gli utenti del tuo account partner. L'utente che ha creato l'account partner ha il ruolo di proprietario. I nuovi utenti possono avere il ruolo di Gestore o Lettore.

  • I gestori possono accedere a tutte le funzionalità della Developer Console per gestire tutti gli agenti appartenenti all'account partner.
  • I lettori hanno accesso di sola lettura alla console per gli sviluppatori per visualizzare tutti gli agenti appartenenti all'account partner.

Aggiungere un utente

Per aggiungere un utente, inserisci il suo indirizzo email nel campo di input e seleziona il suo Ruolo.

Quando aggiungi un nuovo utente, quest'ultimo riceve un'email che lo informa di avere accesso all'account partner.

Rimuovere un utente

Per rimuovere un utente:

  1. Individua l'utente che vuoi rimuovere e fai clic sul pulsante nella riga della tabella.
  2. Seleziona Rimuovi utente.
  3. Conferma la rimozione.

L'utente rimosso riceve un'email che lo informa che non ha più accesso all'account partner.

Non puoi rimuovere un utente con il ruolo di proprietario. Per modificare o rimuovere il proprietario, devi contattare l'assistenza.

Modificare il ruolo di un utente

Per aggiornare il ruolo di un utente:

  1. Trova l'utente che vuoi aggiornare e fai clic sul pulsante nella riga della tabella.
  2. Seleziona Modifica ruolo.
  3. Scegli un nuovo ruolo dal menu a discesa.
  4. Fai clic su Salva.

Configurare il service account per autenticare le chiamate API

Quando effettui chiamate all'API RBM, autentichi le chiamate con una chiave del service account. Questa chiave ti consente di creare e gestire brand e agenti, nonché di inviare messaggi e richieste come agente. Un service account può avere fino a 10 chiavi.

Per autenticare in modo sicuro le chiamate API, devi anche disporre dello strumento a riga di comando oauth2l.

Segui questi passaggi per generare una chiave del service account:

  1. In Impostazioni account, vai alla pagina Service account.
  2. Fai clic su Crea chiave, quindi su Crea. Il browser scarica la chiave dell'account di servizio.

Archivia la chiave dell'account di servizio in una posizione sicura e privata. Non condividere la tua chiave pubblicamente. Avrai bisogno di questa chiave in un secondo momento per accedere alle API RBM.

Configura il webhook del partner

Un webhook è un callback HTTPS creato dal partner che specifica in che modo l'agente deve rispondere a messaggi ed eventi. Una volta configurato il webhook, puoi iniziare a ricevere messaggi ed eventi.

Se vuoi utilizzare un webhook diverso per uno qualsiasi dei tuoi agenti, puoi configurare un webhook a livello di agente che eseguirà l'override del webhook del partner. Per maggiori informazioni, vedi Configurare un webhook dell'agente.

Per configurare il webhook del partner:

  1. Apri la Console per gli sviluppatori di comunicazione aziendale e accedi con il tuo Account Google partner di RCS for Business.

  2. Apri le impostazioni account.

  3. Per l'URL webhook di RCS Business Messaging, fai clic su Configura.

  4. In URL endpoint webhook, inserisci l'URL webhook che inizia con "https://".

  5. Prendi nota del valore di clientToken. Ti serve per verificare che i messaggi che ricevi provengano da Google.

  6. Configura il webhook in modo che accetti una richiesta POST con il parametro clientToken specificato e invii una risposta 200 OK con il valore di testo normale del parametro secret come corpo della risposta.

    Ad esempio, se il webhook riceve una richiesta POST con i seguenti contenuti del corpo

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

    il webhook deve confermare il valore clientToken e, se clientToken è corretto, restituire una risposta 200 OK con 1234567890 come corpo della risposta:

    // 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. In Developer Console, fai clic su Verifica. Quando RCS for Business verifica il webhook, la finestra di dialogo si chiude.

Per indicazioni sull'elaborazione asincrona dei webhook per evitare errori di consegna, consulta Gestione dei messaggi.

Verificare i messaggi in arrivo

Poiché i webhook possono ricevere messaggi da qualsiasi mittente, devi verificare che Google abbia inviato i messaggi in arrivo prima di elaborarne i contenuti.

Per verificare che Google abbia inviato un messaggio che hai ricevuto, segui questi passaggi:

  1. Estrai l'intestazione X-Goog-Signature del messaggio. Si tratta di una copia con hash e codifica base64 del payload del corpo del messaggio.
  2. Decodifica in base64 il payload RBM nell'elemento message.body della richiesta.
  3. Utilizzando il token client del webhook (che hai specificato durante la configurazione del webhook) come chiave, crea un HMAC SHA512 dei byte del payload del messaggio con codifica base64 e codifica base64 il risultato.
  4. Confronta l'hash X-Goog-Signature con l'hash che hai creato.
    • Se gli hash corrispondono, hai la conferma che il messaggio è stato inviato da Google.
    • Se gli hash non corrispondono, controlla la procedura di hashing su un messaggio di cui è noto il valore corretto.

      Se la procedura di hashing funziona correttamente e ricevi un messaggio che ritieni ti sia stato inviato in modo fraudolento, contattaci.

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);
  

Passaggi successivi

Ora che il tuo account partner è configurato, è il momento di creare il tuo primo agente.