Wenn Sie die Reichweite Ihrer Business Messages-Agents erhöhen möchten, können Sie mit dem Business Messages-Widget Unterhaltungseinstiegspunkte auf Ihren Websites hinzufügen.
Das Widget für Business Messages unterstützt nur Mobilgeräte mit Android 5 oder höher. Andere mobile Betriebssysteme und Desktopumgebungen werden nicht unterstützt.
Business Messages-Widget zu einer Website hinzufügen
Um Unterhaltungen von einer Website zu ermöglichen, laden Sie die JavaScript-Bibliothek für Business Messages, konfigurieren die Widget-Platzierung auf der Seite und geben Kontextwerte innerhalb des Widgets an.
Eine Liste der Verfügbarkeitsfunktionen, Attribute und Ereignisse finden Sie unter Widgets „Business Messages“. Im Styleguide für Business Messages-Widgets finden Sie Empfehlungen zu Stil und Verwendung.
Widget erstellen
Aktualisieren Sie die folgenden Werte, um ein Business Messages-Widget zum Einfügen in Ihre Website zu erstellen.
Wert | Beschreibung |
---|---|
LAYOUT | wie die Schaltfläche auf Ihrer Website angezeigt wird. Kann button , floating , inline oder advanced sein. Wenn Sie Ihre eigenen Stile verwenden möchten, verwenden Sie advanced , kopieren Sie das Stylesheet auf Ihre Webseite und ändern Sie es nach Bedarf. |
AGENT_ID | Deine Agent-ID. |
BUTTON_TEXT | Der Text, den die Schaltfläche anzeigen soll. |
<script crossorigin="use-credentials" src="https://businessmessages.google.com/widget/v2/js"></script>
Beispiel-Widget
Dieses Widget wird durch den folgenden Code generiert:
<script crossorigin="use-credentials" src="https://businessmessages.google.com/widget/v2/js"></script>
Einbindung des Business Messages-Widgets anpassen
JavaScript-Bibliothek laden
Wenn Sie die Business Messages JavaScript-Bibliothek laden möchten, kopieren Sie den folgenden Code und fügen Sie ihn sofort in das <head>
-Tag auf jeder Seite ein, auf der ein Business Messages-Widget angezeigt werden soll. Pro Seite ist nur eine JavaScript-Bibliothek erforderlich.
<!-- Global Business Messages widget library reference - Business Messages -->
<script crossorigin="use-credentials" src="https://businessmessages.google.com/widget/v2/js?cb=callback">
</script>
Das Snippet lädt die JavaScript-Bibliothek herunter und lädt sie. Sie initialisiert vorhandene Seitenelemente mit dem Attribut data-bm-widget-agent-id
. Die JavaScript-Bibliothek konvertiert die ermittelten Seitenelemente in anklickbare Elemente, die die Business Messages-Unterhaltungsoberfläche laden, wenn sie darauf tippen.
Der optionale Parameter cb
enthält den Namen einer Funktion, die nach dem Laden der JavaScript-Bibliothek automatisch aufgerufen wird.
Widget-Platzierung konfigurieren
Wenn die JavaScript-Bibliothek für Business Messages geladen wird, durchsucht sie die Website nach Elementen mit dem Attribut data-bm-widget-agent-id
und wandelt diese Elemente in antippbare Business Messages-Widgets um. Jedes Element, das Sie in ein Widget konvertieren möchten, muss ein data-bm-widget-agent-id
-Attribut mit einem Wert enthalten, der der Agent-ID für den gestarteten Agent entspricht.
Beispiel: Widget-Definitionen
<!-- Example div element that converts into a Business Messages widget -->
<div data-bm-widget-agent-id="myagentid">
Click for Business Messages
</div>
<!-- Example button element that converts into a Business Messages widget -->
<button data-bm-widget-agent-id="myagentid">
Click for Business Messages
</button>
Kontextwerte übergeben
Fügen Sie das optionale Attribut data-bm-widget-context
in das HTML-Element mit dem Attribut data-bm-widget-agent-id
ein, um den Widget-Kontext zu konfigurieren und an den Webhook zu übergeben. Geben Sie einen Stringwert für data-bm-widget-context
an. An Ihren Webhook gesendete Nachrichten enthalten den Kontextwert.
data-bm-widget-context
kann einen beliebigen Wert haben, z. B. einen Wert, der für die Anzeige des Widgets zur Laufzeit auf der Seite relevant ist. In den folgenden Beispielen ist der Attributwert "eyJwcm9kdWN0IjoiZHJ5ZXIiLCJvZmZlci1jb2RlIjoiQVNEQURTQSJ9Cg==" ein base64-codierter JSON-String von {"product":"dryer","offer-code":"ASDADSA"}
.
data-bm-widget-context
ist auf 512 Byte begrenzt.
Beispiel: Widget-Definitionen mit Kontext
<!-- Example div element that converts into a Business Messages widget -->
<div
data-bm-widget-agent-id="myagentid"
data-bm-widget-context="eyJwcm9kdWN0IjoiZHJ5ZXIiLCJvZmZlci1jb2RlIjoiQVNEQURTQSJ9Cg==">
Click for Business Messages
</div>
<!-- Example button element that converts into a Business Messages widget -->
<button
data-bm-widget-agent-id="myagentid"
data-bm-widget-context="eyJwcm9kdWN0IjoiZHJ5ZXIiLCJvZmZlci1jb2RlIjoiQVNEQURTQSJ9Cg==">
Click for Business Messages
</button>
Beispielwebsite
Im folgenden Beispiel wird die JavaScript-Bibliothek für Business Messages in das Tag <head>
geladen, das dann automatisch die HTML-Seite scannt und „myagentid“ in Business Messages-Widgets konvertiert.
<html>
<head>
<script
crossorigin="use-credentials" src="https://businessmessages.google.com/widget/v2/js">
</script>
</head>
<body>
This is a test widget:
<div
data-bm-widget-agent-id="myagentid"
data-bm-widget-context="eyJwcm9kdWN0IjoiZHJ5ZXIiLCJvZmZlci1jb2RlIjoiQVNEQURTQSJ9Cg==">
Click for Business Messages
</div>
Click it.
And this is a widget:
<button
data-bm-widget-agent-id="myagentid"
data-bm-widget-context="VGhpcyBpcyBhIGJ1dHRvbiB0ZXN0Lgo=">
Click for Business Messages
</button>
</body>
</html>
Programmatische Widget-Initialisierung
Für eine präzisere Kontrolle der Einrichtung können Sie Ihr Widget programmatisch initialisieren. Wenn Sie ein Element programmatisch initialisieren möchten, rufen Sie nach dem Laden der Business Messages JavaScript-Bibliothek bmwidget.init
auf. Bei dieser Art der Initialisierung müssen Sie Elemente nicht mit dem Attribut data-bm-widget-agent-id
markieren.
<head> <!-- Global Business Messages widget library reference - Business Messages --> <script crossorigin="use-credentials" src="https://businessmessages.google.com/widget/v2/js?cb=initWidget"> </script> <script type="text/javascript"> // Convert HTML element with ID = myCustomButton into a Business Messages widget function initWidget() { window.bmwidget.init(document.getElementById('myCustomButton'), { 'agentId': 'myagentid', 'context': 'eyJwcm9kdWN0IjoiZHJ5ZXIiLCJvZmZlci1jb2RlIjoiQVNEQURTQSJ9Cg==' }); }; </script> </head>
Gerätesupport prüfen
Verwenden Sie window.bmwidget.supported
, um die Unterstützung von Business Messages für ein Gerät zu prüfen. Im folgenden Beispiel wird vor der Initialisierung des HTML-Elements mit der ID "myCustomButton" als Business Messages-Widget geprüft, ob ein Gerät unterstützt wird.
<head> <!-- Global Business Messages widget library reference - Business Messages --> <script crossorigin="use-credentials" src="https://businessmessages.google.com/widget/v2/js?cb=initWidget"> </script> <script type="text/javascript"> // Convert HTML element with ID = myCustomButton into a Business Messages widget function initWidget() { // Check that the user has a supported device if (window.bmwidget.supported) { window.bmwidget.init(document.getElementById('myCustomButton'), { 'agentId': 'myagentid', 'context': 'eyJwcm9kdWN0IjoiZHJ5ZXIiLCJvZmZlci1jb2RlIjoiQVNEQURTQSJ9Cg==' }); } }; </script> </head>
Widget-Initialisierung für Single-Page-Anwendungen
Bei Single-Page-Anwendungen, bei denen das Attribut data-bm-widget-agent-id
zur Laufzeit erstellt wird, macht die JavaScript-Bibliothek von Business Messages ein globales Objekt window.bmwidget
verfügbar.
Immer, wenn der Seite ein neues Element hinzugefügt wird, kannst du window.bmwidget.scan()
aufrufen, um das neue Element als Business Messages-Widget zu initialisieren.
window.bmwidget.scan();
Rufen Sie window.bmwidget.scan()
im Callback für die DOM-Aktualisierung auf, damit das Attribut data-bm-widget-agent-id
initialisiert wird, wenn sich der Status der Seite ändert.
Beispiel für Angular
Mit dem folgenden Code wird window.bmwidget.scan()
beim Laden des Komponenten-Callbacks in Angular initialisiert.
import { Component, OnInit} from '@angular/core'; export class AppComponent implements onInit { ngOnInit() { // Initialize tag on re-render window.bmwidget.scan(); } }
Reaktionsbeispiel
Mit dem folgenden Code wird die Funktion window.bmwidget.scan()
beim Rendern eines Elements in React initialisiert.
import React, { useState, useEffect } from 'react'; function WrapperComponent() { ... useEffect(() => { // Initialize on re-render window.bmwidget.scan(); }); return (<div><button data-bm-widget-agent-id="myagentid">Chat with us</button></div>); }
Nächste Schritte
Nachdem Sie ein Business Messages-Widget in Ihre Website eingebunden haben, können Sie Business Messages-Unterhaltungen von Ihrer Website starten und Widget-spezifische Kontextwerte in Nachrichten von Nutzern empfangen.