Per ampliare la copertura dei tuoi agenti Business Messages, puoi aggiungere i punti di contatto nei siti web con il widget Business Messages.
Il widget Business Messages supporta solo i dispositivi mobili con Android 5 o versioni successive. Non sono supportati altri sistemi operativi per dispositivi mobili e ambienti desktop.
Aggiungere un widget Business Messages a un sito web
Per attivare le conversazioni da un sito web, carica Business Messages libreria JavaScript, configurare il posizionamento del widget nella pagina e specificare il contesto all'interno del widget.
Per un elenco di funzioni di disponibilità, proprietà ed eventi, consulta Messaggi widget. Consulta La guida di stile per il widget Business Messages per consigli su stile e per gli utilizzi odierni.
Crea un widget
Aggiorna i valori seguenti per creare un widget Business Messages da inserire del tuo sito web.
Valore | Descrizione |
---|---|
LAYOUT | Come viene visualizzato il pulsante
del tuo sito web. Può essere button , floating , inline o advanced . A
utilizzare stili personalizzati, usare advanced , copiare il foglio di stile nella pagina web,
e modificarli secondo necessità. |
AGENT_ID | Il tuo ID agente. |
BUTTON_TEXT | Il testo che vuoi come il pulsante da visualizzare. |
<script crossorigin="use-credentials" src="https://businessmessages.google.com/widget/v2/js"></script>
Widget di esempio
Questo widget viene generato dal codice seguente:
<script crossorigin="use-credentials" src="https://businessmessages.google.com/widget/v2/js"></script>
Personalizzazione dell'integrazione del widget Business Messages
Carica la libreria JavaScript
Per caricare la libreria JavaScript di Business Messages, copia il seguente codice e
incollalo immediatamente all'interno del tag <head>
in ogni pagina in cui vuoi
visualizzare un widget Business Messages. È necessaria una sola libreria JavaScript
inclusione per pagina.
<!-- Global Business Messages widget library reference - Business Messages -->
<script crossorigin="use-credentials" src="https://businessmessages.google.com/widget/v2/js?cb=callback">
</script>
Lo snippet scarica e carica la libreria JavaScript, che inizializza
elementi di pagina esistenti con un attributo data-bm-widget-agent-id
. La
La libreria JavaScript converte gli elementi della pagina identificati in elementi cliccabili
che caricano la superficie di conversazione di Business Messages quando vengono toccati.
Il parametro facoltativo cb
contiene il nome di una funzione che è
viene richiamata automaticamente una volta caricata la libreria JavaScript.
Configura il posizionamento del widget
Quando viene caricata la libreria JavaScript Business Messages, analizza il sito web per
elementi con un attributo data-bm-widget-agent-id
e li converte
in widget Business Messages toccabili. Ogni elemento da convertire
a un widget deve includere un attributo data-bm-widget-agent-id
con un valore
corrispondente all'ID agente dell'agente che hai avviato.
Esempio: definizioni dei widget
<!-- 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>
Trasmettere valori di contesto
Per configurare il contesto del widget e passarlo al webhook, includi la sezione facoltativa
Attributo data-bm-widget-context
nell'elemento HTML che contiene l'oggetto
Attributo data-bm-widget-agent-id
. Specifica un valore di stringa per
data-bm-widget-context
. I messaggi inviati al webhook includono il contesto
valore.
data-bm-widget-context
può avere qualsiasi valore, ad esempio un valore
pertinente al punto in cui il widget viene mostrato
in fase di runtime sulla pagina. Nel seguente
esempi, il valore dell'attributo
"eyJwcm9kdWN0IjoiZHJ5ZXIiLCJvZmZlci1jb2RlIjoiQVNEQURTQSJ9Cg==" è un
Stringa JSON con codifica base64 di {"product":"dryer","offer-code":"ASDADSA"}
.
data-bm-widget-context
ha un limite di 512 byte.
Esempio: definizioni dei widget con contesto
<!-- 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>
Sito web di esempio
L'esempio seguente carica la libreria JavaScript di Business Messages all'interno del file
<head>
, che a sua volta scansiona automaticamente la pagina HTML e converte
"myagentid" nei widget Business Messages.
<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>
Inizializzazione del widget programmatico
Per un controllo più dettagliato sulla configurazione, puoi scegliere di inizializzare
widget in modo programmatico. Per inizializzare un elemento in modo programmatico, richiama
bmwidget.init
dopo il caricamento della libreria JavaScript di Business Messages. Questa forma di
l'inizializzazione non richiede di contrassegnare gli elementi con
Attributo data-bm-widget-agent-id
.
<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>
Controlla il supporto dei dispositivi
Utilizza le funzionalità di
window.bmwidget.supported
per verificare il supporto di Business Messages per un dispositivo. I seguenti controlli di esempio
per il supporto del dispositivo prima di inizializzare l'elemento HTML con ID
"myCustomButton"
come widget Business Messages.
<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>
Inizializzazione del widget per applicazioni a pagina singola
Per le applicazioni a pagina singola, in cui l'data-bm-widget-agent-id
viene creato in fase di runtime, la libreria JavaScript di Business Messages
espone un oggetto globale window.bmwidget
.
Ogni volta che viene aggiunto un nuovo elemento alla pagina, richiama
window.bmwidget.scan()
per inizializzare il nuovo elemento come widget Business Messages.
window.bmwidget.scan();
Chiama window.bmwidget.scan()
al callback dell'aggiornamento del DOM per assicurarti che
L'attributo data-bm-widget-agent-id
si reinizializza quando la pagina cambia il proprio stato.
Esempio Angular
Il seguente codice inizializza window.bmwidget.scan()
durante il caricamento del componente
in Angular.
import { Component, OnInit} from '@angular/core'; export class AppComponent implements onInit { ngOnInit() { // Initialize tag on re-render window.bmwidget.scan(); } }
Esempio di reazione
Il seguente codice inizializza la funzione window.bmwidget.scan()
durante il
di un elemento in React.
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>); }
Passaggi successivi
Ora che hai integrato il widget Business Messages nel tuo sito web, puoi avviare conversazioni di Business Messages dal tuo sito web e ricevere valori di contesto specifici del widget nei messaggi inviati dagli utenti.