Partnerkonto einrichten

Nach der Registrierung als RCS for Business-Partner haben Sie ein Partnerkonto. Wenn Sie auf die Einstellungen Ihres Partnerkontos zugreifen möchten, öffnen Sie die Business Communications Developer Console und klicken Sie auf Partner account settings (Einstellungen des Partnerkontos). Hier haben Sie folgende Möglichkeiten:

Informationen zum Partnerkonto aktualisieren

Auf der Seite Einstellungen können Sie Ihre Partner-ID aufrufen und die folgenden Informationen aktualisieren:

Feld Beschreibung
Name des Partners Name Ihres Partnerkontos
Anzeigename Der Name wird in den Abrechnungsberichten angezeigt, die Mobilfunkanbieter erhalten (als Feld owner_name). Mobilfunkanbieter verwenden diese Informationen, um Sie als vertrauenswürdigen Partner zu identifizieren und die korrekten Abrechnungsinformationen für Ihre Nutzung von RCS for Business zur Kontaktaufnahme mit ihren Abonnenten zu generieren. Der hier angegebene Name sollte mit dem Namen in Ihren Messaging-Verträgen mit Mobilfunkanbietern übereinstimmen.
Technischer Ansprechpartner

Die Person, an die Google sich wendet, wenn technische Probleme mit Ihren Agents auftreten. Sie können die

  • Name
  • Geschäftliche E-Mail-Adresse
  • Telefonnummer
Webhook Das ist die URL Ihres Webhook-Endpunkts. Klicken Sie auf Konfigurieren, um sie zu aktualisieren. Wenn Sie Ihren Partner-Webhook konfigurieren, gilt das für alle Ihre Agents. Wenn Sie für einen einzelnen Agent einen anderen Webhook verwenden möchten, können Sie einen Agent-Webhook konfigurieren, der nur für diesen Agent gilt.

Marken verwalten

Als RCS for Business-Partner können Sie Agents im Namen von Marken erstellen.

Auf der Seite Marken in den Kontoeinstellungen können Sie die Marken hinzufügen, bearbeiten und entfernen, die mit Ihrem Partnerkonto verknüpft sind.

Marke hinzufügen

Wenn Sie eine Marke hinzufügen möchten, geben Sie ihren Namen in das Eingabefeld ein und klicken Sie auf Hinzufügen.

Marke bearbeiten

So bearbeiten Sie eine Marke:

  1. Klicken Sie auf das Kästchen neben dem Namen der Marke.
  2. Klicken Sie auf die Schaltfläche  und dann auf Namen bearbeiten.
  3. Nehmen Sie die gewünschten Änderungen vor und klicken Sie auf Fertig.

Marke entfernen

Eine Marke kann nicht entfernt werden, wenn sie einem Agent zugeordnet ist, auch wenn der Agent nicht gestartet wurde.

Wenn Sie eine Marke entfernen möchten, klicken Sie auf das Kästchen neben dem Namen der Marke und dann auf Löschen.

Nutzer verwalten

Auf der Seite Nutzer in den Kontoeinstellungen können Sie die Nutzer Ihres Partnerkontos verwalten. Der Nutzer, der das Partnerkonto erstellt hat, hat die Rolle „Inhaber“. Neue Nutzer können die Rolle „Manager“ oder „Leser“ haben.

  • Manager können auf alle Funktionen der Entwicklerkonsole zugreifen, um alle Agents zu verwalten, die zum Partnerkonto gehören.
  • Leser haben Lesezugriff auf die Developer Console und können alle Agents ansehen, die zum Partnerkonto gehören.

Nutzer hinzufügen

Wenn Sie einen Nutzer hinzufügen möchten, geben Sie seine E‑Mail-Adresse in das Eingabefeld ein und wählen Sie seine Rolle aus.

Wenn Sie einen neuen Nutzer hinzufügen, erhält dieser eine E-Mail, in der er darüber informiert wird, dass er Zugriff auf das Partnerkonto hat.

Nutzer entfernen

So entfernen Sie Nutzer:

  1. Suchen Sie nach dem Nutzer, den Sie entfernen möchten, und klicken Sie in seiner Tabellenzeile auf das Dreipunkt-Menü .
  2. Wählen Sie Nutzer entfernen aus.
  3. Bestätigen Sie die Entfernung.

Der Nutzer, den Sie entfernt haben, erhält eine E‑Mail, in der er darüber informiert wird, dass er keinen Zugriff mehr auf das Partnerkonto hat.

Nutzer mit der Rolle „Inhaber“ können nicht entfernt werden. Wenn Sie den Inhaber ändern oder entfernen möchten, wenden Sie sich an den Support.

Rolle eines Nutzers ändern

So aktualisieren Sie die Rolle eines Nutzers:

  1. Suchen Sie den Nutzer, den Sie aktualisieren möchten, und klicken Sie in seiner Tabellenzeile auf die Schaltfläche .
  2. Wählen Sie Rolle bearbeiten aus.
  3. Wählen Sie im Drop-down-Menü eine neue Rolle aus.
  4. Klicken Sie auf Speichern.

Dienstkonto zum Authentifizieren von API-Aufrufen einrichten

Wenn Sie Aufrufe an die RBM API senden, authentifizieren Sie die Aufrufe mit einem Dienstkontoschlüssel. Mit diesem Schlüssel können Sie Marken und Agents erstellen und verwalten sowie Nachrichten und Anfragen als Agent senden. Ein Dienstkonto kann bis zu 10 Schlüssel haben.

Zur sicheren Authentifizierung von API-Aufrufen benötigen Sie außerdem das Befehlszeilentool oauth2l.

So generieren Sie einen Dienstkontoschlüssel:

  1. Rufen Sie in den Kontoeinstellungen die Seite Dienstkonto auf.
  2. Klicken Sie auf Schlüssel erstellen und dann auf Erstellen. Der Browser lädt den Dienstkontoschlüssel herunter.

Bewahren Sie den Dienstkontoschlüssel an einem sicheren, privaten Ort auf. Geben Sie Ihren Schlüssel nicht öffentlich weiter. Sie benötigen diesen Schlüssel später, um auf die RBM APIs zuzugreifen.

Partner-Webhook konfigurieren

Ein Webhook ist ein von Partnern erstellter HTTPS-Callback, der angibt, wie Ihr Agent auf Nachrichten und Ereignisse reagieren soll. Nachdem Sie Ihren Webhook konfiguriert haben, können Sie mit dem Empfangen von Nachrichten und Ereignissen beginnen.

Wenn Sie für einen Ihrer Agents einen anderen Webhook verwenden möchten, können Sie einen Webhook auf Agent-Ebene einrichten, der den Partner-Webhook überschreibt. Weitere Informationen finden Sie unter Agent-Webhook konfigurieren.

So konfigurieren Sie Ihren Partner-Webhook:

  1. Öffnen Sie die Business Communications Developer Console und melden Sie sich mit Ihrem Google-Konto für RCS for Business-Partner an.

  2. Öffnen Sie die Kontoeinstellungen.

  3. Klicken Sie für die Webhook-URL für RCS Business Messaging auf Konfigurieren.

  4. Geben Sie unter Webhook-Endpunkt-URL Ihre Webhook-URL ein, die mit „https://“ beginnt.

  5. Notieren Sie sich den Wert von clientToken. Sie benötigen sie, um zu bestätigen, dass Nachrichten, die Sie erhalten, von Google stammen.

  6. Konfigurieren Sie Ihren Webhook so, dass er eine POST-Anfrage mit dem angegebenen Parameter clientToken akzeptiert und eine 200 OK-Antwort mit dem Nur-Text-Wert des Parameters secret als Antworttext sendet.

    Wenn Ihr Webhook beispielsweise eine POST-Anfrage mit dem folgenden Textkörper empfängt:

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

    In diesem Fall sollte Ihr Webhook den Wert clientToken bestätigen und, falls clientToken korrekt ist, eine 200 OK-Antwort mit 1234567890 als Antworttext zurückgeben:

    // 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. Klicken Sie in der Entwicklerkonsole auf Bestätigen. Wenn Ihr Webhook von RCS for Business bestätigt wird, wird das Dialogfeld geschlossen.

Informationen zur asynchronen Verarbeitung von Webhooks, um Zustellungsfehler zu vermeiden, finden Sie unter Nachrichtenverarbeitung.

Eingehende Nachrichten überprüfen

Da Webhooks Nachrichten von beliebigen Absendern empfangen können, sollten Sie vor der Verarbeitung von Nachrichteninhalten überprüfen, ob eingehende Nachrichten von Google gesendet wurden.

So prüfen Sie, ob eine Nachricht, die Sie erhalten haben, von Google gesendet wurde:

  1. Extrahieren Sie die X-Goog-Signature-Kopfzeile der Nachricht. Dies ist eine gehashte, base64-codierte Kopie der Nutzlast des Nachrichtentexts.
  2. Base64-Dekodierung der RBM-Nutzlast im Element message.body der Anfrage.
  3. Erstellen Sie mit dem Client-Token Ihres Webhooks (das Sie bei der Einrichtung Ihres Webhooks angegeben haben) als Schlüssel einen SHA512-HMAC der Byte der Base64-decodierten Nachrichtennutzlast und Base64-codieren Sie das Ergebnis.
  4. Vergleichen Sie den X-Goog-Signature-Hash mit dem von Ihnen erstellten Hash.
    • Wenn die Hashes übereinstimmen, haben Sie bestätigt, dass die Nachricht von Google gesendet wurde.
    • Wenn die Hashes nicht übereinstimmen, prüfen Sie den Hashing-Prozess anhand einer bekannten Nachricht.

      Wenn Ihr Hashing-Prozess korrekt funktioniert und Sie eine Nachricht erhalten, die Ihrer Meinung nach betrügerisch an Sie gesendet wurde, kontaktieren Sie uns.

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

Nächste Schritte

Nachdem Sie Ihr Partnerkonto eingerichtet haben, können Sie Ihren ersten Agenten erstellen.