Skonfiguruj konto partnera

Po zarejestrowaniu się jako partner RCS dla firm otrzymasz konto partnera. Aby otworzyć ustawienia konta partnera, otwórz Konsolę dewelopera Business Communications i kliknij Ustawienia konta partnera. Możesz tutaj wykonać te czynności:

Aktualizowanie informacji o koncie partnera

Na stronie Ustawienia możesz wyświetlić identyfikator partnera i zaktualizować te informacje:

Pole Opis
Nazwa partnera Nazwa konta partnera
Wyświetlana nazwa Nazwa będzie widoczna w  raportach rozliczeniowych otrzymywanych przez operatorów (w polu owner_name). Operatorzy będą używać tego identyfikatora, aby rozpoznać Cię jako zaufanego partnera i wygenerować prawidłowe informacje rozliczeniowe dotyczące korzystania przez Ciebie z RCS dla firm w celu docierania do ich subskrybentów. Podana tu nazwa powinna być zgodna z nazwą używaną w umowach dotyczących wiadomości od operatora.
Osoba kontaktowa do spraw technicznych

Osoba, z którą ma kontaktować się Google w przypadku problemów technicznych z agentami. Możesz zaktualizować

  • Nazwa
  • Firmowy adres e-mail
  • Numer telefonu
Webhook To adres URL punktu końcowego webhooka. Aby je zaktualizować, kliknij Skonfiguruj. Gdy skonfigurujesz webhooka partnera, będzie on dotyczyć wszystkich Twoich agentów. Jeśli chcesz użyć innego webhooka dla poszczególnych agentów, możesz skonfigurować webhooka agenta, który będzie stosowany tylko w przypadku tego agenta.

Zarządzanie markami

Jako partner RCS Business Messaging możesz tworzyć agentów w imieniu marek.

Na stronie MarkiUstawieniach konta możesz dodawać, edytować i usuwać marki powiązane z Twoim kontem partnera.

Dodaj markę

Aby dodać markę, wpisz jej nazwę w polu i kliknij Dodaj.

Edytowanie marki

Aby edytować markę:

  1. Kliknij pole wyboru obok nazwy marki.
  2. Kliknij przycisk  i wybierz Edytuj nazwę.
  3. Wprowadź zmiany i kliknij Gotowe.

Usuwanie marki

Marki nie można usunąć, jeśli jest powiązana z agentem, nawet jeśli agent nie został uruchomiony.

Aby usunąć markę, zaznacz pole wyboru obok jej nazwy i kliknij Usuń.

Zarządzanie użytkownikami

Na stronie Użytkownicyustawieniach konta możesz zarządzać użytkownikami konta partnera. Użytkownik, który utworzył konto partnera, ma rolę właściciela. Nowi użytkownicy mogą mieć rolę Menedżer lub Czytelnik.

  • Menedżerowie mają dostęp do wszystkich funkcji Konsoli dewelopera, dzięki czemu mogą zarządzać wszystkimi agentami należącymi do konta partnera.
  • Użytkownicy z uprawnieniami do odczytu mają dostęp tylko do odczytu w Konsoli Play, aby wyświetlać wszystkich agentów należących do konta partnera.

Dodawanie użytkownika

Aby dodać użytkownika, wpisz jego adres e-mail w polu wejściowym i wybierz jego rolę.

Gdy dodasz nowego użytkownika, otrzyma on e-maila z powiadomieniem o uzyskaniu dostępu do konta partnera.

usuwać użytkowników,

Aby usunąć użytkownika:

  1. Znajdź użytkownika, którego chcesz usunąć, i kliknij przycisk w wierszu tabeli tego użytkownika.
  2. Kliknij Usuń użytkownika.
  3. Potwierdź usunięcie.

Usunięty użytkownik otrzyma e-maila z powiadomieniem, że nie ma już dostępu do konta partnera.

Nie możesz usunąć użytkownika z rolą właściciela. Aby zmienić lub usunąć właściciela, musisz skontaktować się z zespołem pomocy.

Zmiana roli użytkownika

Aby zaktualizować rolę użytkownika:

  1. Znajdź użytkownika, którego chcesz zaktualizować, i kliknij przyciskw wierszu tabeli.
  2. Kliknij Edytuj rolę.
  3. Wybierz nową rolę z menu.
  4. Kliknij Zapisz.

Konfigurowanie konta usługi do uwierzytelniania wywołań interfejsu API

Gdy wywołujesz RBM API, uwierzytelniasz wywołania za pomocą klucza konta usługi. Ten klucz umożliwia tworzenie marek i agentów oraz zarządzanie nimi, a także wysyłanie wiadomości i żądań jako agent. Konto usługi może mieć maksymalnie 10 kluczy.

Aby bezpiecznie uwierzytelniać wywołania interfejsu API, potrzebujesz też narzędzia wiersza poleceń oauth2l.

Aby wygenerować klucz konta usługi:

  1. W Ustawieniach konta otwórz stronę Konto usługi.
  2. Kliknij Utwórz klucz, a następnie Utwórz. Przeglądarka pobierze klucz konta usługi.

Przechowuj klucz konta usługi w bezpiecznym, prywatnym miejscu. Nie udostępniaj klucza publicznie. Ten klucz będzie Ci później potrzebny do uzyskania dostępu do interfejsów RBM API.

Konfigurowanie webhooka partnera

Webhook to utworzone przez partnera wywołanie zwrotne HTTPS, które określa, jak agent powinien odpowiadać na wiadomości i zdarzenia. Po skonfigurowaniu webhooka możesz zacząć otrzymywać wiadomości i zdarzenia.

Jeśli chcesz używać innego webhooka w przypadku dowolnego z agentów, możesz skonfigurować webhooka na poziomie agenta, który zastąpi webhooka partnera. Więcej informacji znajdziesz w artykule Konfigurowanie webhooka agenta.

Aby skonfigurować webhooka partnera, wykonaj te czynności:

  1. Otwórz konsolę programisty Business Communications i zaloguj się na konto Google partnera RCS dla firm.

  2. Otwórz Ustawienia konta.

  3. W sekcji Adres URL webhooka RCS Business Messaging kliknij Skonfiguruj.

  4. W polu URL punktu końcowego webhooka wpisz adres URL webhooka rozpoczynający się od „https://”.

  5. Zanotuj wartość clientToken. Jest on potrzebny do potwierdzenia, że otrzymywane wiadomości pochodzą od Google.

  6. Skonfiguruj webhooka tak, aby akceptował żądanie POST z określonym parametrem clientToken i wysyłał odpowiedź 200 OK z wartością parametru secret w formie zwykłego tekstu jako treść odpowiedzi.

    Jeśli np. Twój webhook otrzyma żądanie POST z tą treścią

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

    webhook powinien potwierdzić wartość clientToken i jeśli jest ona prawidłowa, zwrócić odpowiedź 200 OK1234567890 w treści odpowiedzi:clientToken

    // 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. W Konsoli dla deweloperów kliknij Zweryfikuj. Gdy RCS dla firm zweryfikuje Twój webhook, okno dialogowe zostanie zamknięte.

Wskazówki dotyczące asynchronicznego przetwarzania webhooków, aby zapobiec niepowodzeniom dostarczania, znajdziesz w sekcji Obsługa wiadomości.

Sprawdzanie wiadomości przychodzących

Webhooki mogą otrzymywać wiadomości od dowolnych nadawców, dlatego przed przetworzeniem treści wiadomości musisz sprawdzić, czy zostały one wysłane przez Google.

Aby sprawdzić, czy wiadomość została wysłana przez Google, wykonaj te czynności:

  1. Wyodrębnij X-Goog-Signaturenagłówek wiadomości. Jest to zaszyfrowana i zakodowana w base64 kopia treści wiadomości.
  2. Zdekoduj ładunek RBM w elemencie message.body żądania za pomocą Base64.
  3. Używając tokena klienta webhooka (który został określony podczas konfigurowania webhooka) jako klucza, utwórz SHA512 HMAC bajtów ładunku wiadomości zdekodowanego w base64 i zakoduj wynik w base64.
  4. Porównaj hash X-Goog-Signature z utworzonym przez siebie hashem.
    • Jeśli hasze są zgodne, oznacza to, że wiadomość została wysłana przez Google.
    • Jeśli zahaszowane adresy nie pasują do Twoich wyników, sprawdź proces haszowania na znanym, prawidłowym komunikacie.

      Jeśli proces haszowania działa prawidłowo, a otrzymasz wiadomość, która Twoim zdaniem została wysłana do Ciebie w sposób nieuczciwy, skontaktuj się z nami.

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

Dalsze kroki

Po skonfigurowaniu konta partnera możesz utworzyć pierwszego agenta.