Nelle conversazioni con gli agenti di Business Messages, il messaggio di benvenuto imposta la per l'interazione. Inoltre, permette agli utenti di sapere cosa può fare l'agente, definisce le domande e le aspettative dell'utente.
L'agente invia un messaggio di benvenuto ogni volta che l'utente apre una conversazione. La L'agente può anche visualizzare degli spunti di conversazione per guidare gli utenti verso percorsi noti o frequenti.
Se un utente prova ad avviare una conversazione al di fuori dell'orario di apertura di un agente, L'agente visualizza un messaggio offline che puoi utilizzare per condividere canali alternativi o suggerire i passaggi successivi. Sfruttando queste impostazioni, puoi aumentare l'affidabilità e l'usabilità dell'agente.
Impostazioni a livello di agente e località
Puoi specificare le impostazioni di conversazione a livello di agente o di località.
Livello di agente: Queste impostazioni conversazionali si applicano a tutte le conversazioni con su tutti i punti di ingresso.
Potrebbe iniziare un messaggio di benvenuto a livello di agente "Grazie per aver contattato Bridgepoint Runners..." Gli spunti di conversazione possono concentrarsi su azioni o informazioni a livello aziendale.
A livello di località: queste impostazioni sostituiscono quelle a livello di agente e si applica solo alle conversazioni con quella posizione su
PLACESHEET
eMAPS
punti di ingresso.Potrebbe iniziare un messaggio di benvenuto a livello di località "Grazie per averci contattato" Bridgepoint Runners su Amphitheatre Pkwy..." Gli spunti di conversazione possono concentrarsi su attività o informazioni basate sulla posizione. Un messaggio offline potrebbe menzionare quando la sede verrà aperta di nuovo.
Impostazioni internazionali
Gli agenti e le località possono specificare impostazioni separate per le impostazioni internazionali assistenza in tempo reale. Ad esempio, un agente potrebbe specificare un messaggio di benvenuto in inglese per "en" lingua e hanno lo stesso messaggio di benvenuto in spagnolo per la lingua "es" impostazioni internazionali. Business Messages risolve una corrispondenza tra le impostazioni internazionali segnalate del dispositivo dell'utente e Le impostazioni internazionali per cui un agente o una località hanno impostazioni di conversazione.
Questa corrispondenza delle impostazioni internazionali è riportata in ogni messaggio campo resolvedLocale
. Tu
puoi specificare un valore defaultLocale
dell'agente o della località, che i pesi risolti
corrispondenza delle impostazioni internazionali. Consulta la sezione Localizzazione e
impostazioni internazionali.
Business Messages utilizza le impostazioni internazionali risolte per determinare quale impostazioni da applicare.
Messaggio di benvenuto
Il primo messaggio di una conversazione tra un agente e un utente è messaggio di benvenuto. Il messaggio di benvenuto viene visualizzato automaticamente dopo che un utente avvia un nuova conversazione. Un messaggio di benvenuto efficace definisce le aspettative dell'utente in termini di interazione con l'agente. Per modificare un messaggio di benvenuto vedi Aggiornare le impostazioni di conversazione.
Spunti di conversazione
Anche se un buon messaggio di benvenuto copre la funzionalità di un agente a livello generale e sono buoni spunti di conversazione indirizzare gli utenti verso domande frequenti o funzionalità note.
Gli spunti di conversazione vengono visualizzati come suggeriti in pila verticale risposte e seguire direttamente il messaggio di benvenuto. Quando un utente tocca una conversazione. il comando iniziale, l'agente riceve contenuti predefiniti e dati postback impostati quando specifichi il comando iniziale.
Se un agente supporta la funzionalità automatizzata per determinate richieste, gli spunti di conversazione potrebbero mappare queste richieste, consentendoti di fare affidamento su input per l'automazione e invia domande libere degli utenti agli operatori pronti a risposta.
Un agente può avere un massimo di 5 spunti di conversazione e ogni comando iniziale può può contenere un massimo di 35 caratteri.
Per aggiungere o modificare gli spunti di conversazione, consulta Aggiornare il livello di conversazione impostazioni.
Messaggi offline
Quando un utente avvia una conversazione con un agente al di fuori del suo operativo
di ore (come definito
MessagingAvailability
),
l'utente riceve il messaggio offline dell'agente. Rappresentante solo umano
la disponibilità è considerata quando si attiva un messaggio offline. Agenti che hanno solo
fare in modo che i rappresentanti dei bot inviino sempre un messaggio di benvenuto. Un messaggio offline efficace
- Indica il motivo per cui l'agente non è disponibile
- Indica all'utente i passaggi successivi appropriati o i canali di contatto alternativi
- Corrisponde al tono del messaggio di benvenuto e degli spunti di conversazione
Messaggio offline non valido
"Spiacenti, siamo chiusi."
Messaggio offline valido
"Al momento siamo chiusi, ma saremo di nuovo disponibili domani alle 8:00. Se hai bisogno di aiuto urgente, contatta l'assistenza al numero +12223334444 o support@gtb.com."
Per modificare un messaggio offline, vedi Aggiornare le impostazioni di conversazione.
Aggiorna le impostazioni di conversazione
Per gestire un messaggio di benvenuto o degli spunti di conversazione, effettua una richiesta PATCH
con Business Communications
dell'API
per aggiornare il campo conversationalSettings
di un agente o della località.
Quando aggiorni il campo conversationalSettings
, devi includere i valori per
tutti i campi
ConversationalSetting
. Le richieste di aggiornamento sovrascrivono i contenuti di tutti i campi che modifichi, inclusi
qualsiasi campo secondario. Ad esempio, se richiedi di modificare un messaggio di benvenuto
ma non includono spunti di conversazione, la richiesta rimuove tutti gli eventuali
spunti di conversazione.
Prerequisiti
Prima di aggiornare le impostazioni di conversazione, sono necessari i seguenti elementi:
- Percorso della chiave dell'account di servizio del progetto Google Cloud sulla macchina di sviluppo
- Le impostazioni internazionali di cui vuoi aggiornare le impostazioni
Per le impostazioni a livello di agente, l'agente
name
(ad es. "brands/12345/agents/67890")Se non conosci il
name
dell'agente, consulta Elenca tutti gli agenti per un brand.Per le impostazioni a livello di località, la località
name
(ad es. "brands/12345/locations/67890")Se non conosci il
name
di un luogo, consulta Elenca tutte le sedi per un brand.Le impostazioni internazionali da aggiornare, espresse come lingua ISO 639-1 a due caratteri. codice
Nuovo messaggio di benvenuto
URL Norme sulla privacy
(Facoltativo) Testo per gli spunti di conversazione
(Facoltativo) Dati di postback per gli spunti di conversazione
(Facoltativo) Nuovo messaggio offline
Se non conosci gli attuali valori di conversationalSettings
, consulta Recupera agente
informazioni
e Ottieni posizione
di assistenza.
Invia la richiesta di aggiornamento
Per aggiornare l'agente o la località, esegui questo comando. Sostituisci variabili con i valori identificati nella sezione Prerequisiti.
Se non vuoi spunti di conversazione, ometti conversationStarters
e tutti i relativi
campi secondari.
Impostazioni a livello di agente
cURL
# This code updates the conversational settings of a Business Messages agent. # Read more: https://developers.google.com/business-communications/business-messages/reference/business-communications/rest/v1/brands.agents/patch # Replace the __BRAND_ID__, __AGENT_ID__ and __LOCALE__ # Make sure a service account key file exists at ./service_account_key.json curl -X PATCH \ "https://businesscommunications.googleapis.com/v1/brands/__BRAND_ID__/agents/__AGENT_ID__?updateMask=businessMessagesAgent.conversationalSettings.__LOCALE__" \ -H "Content-Type: application/json" \ -H "User-Agent: curl/business-communications" \ -H "$(oauth2l header --json ./service_account_key.json businesscommunications)" \ -d '{ "businessMessagesAgent": { "conversationalSettings": { "__LOCALE__": { "welcomeMessage": { "text": "My first welcome message" }, "offlineMessage": { "text": "My first offline message" }, "privacyPolicy": { "url": "https://www.your-company-website.com/privacy" }, "conversationStarters": [ { "suggestion": { "reply": { "text": "Suggestion 1", "postbackData": "post_back_suggestion_1" } } } ] } } } }'
Node.js
/** * This code snippet updates the conversationalSettings of a Business Messages agent. * Read more: https://developers.google.com/business-communications/business-messages/reference/business-communications/rest/v1/brands.agents/patch * * This code is based on the https://github.com/google-business-communications/nodejs-businesscommunications Node.js * Business Communications client library. */ /** * Edit the values below: */ const BRAND_ID = 'EDIT_HERE'; const AGENT_ID = 'EDIT_HERE'; const LOCALE = 'en'; const PATH_TO_SERVICE_ACCOUNT_KEY = './service_account_key.json'; const businesscommunications = require('businesscommunications'); const {google} = require('googleapis'); // Initialize the Business Communications API const bcApi = new businesscommunications.businesscommunications_v1.Businesscommunications({}); // Set the scope that we need for the Business Communications API const scopes = [ 'https://www.googleapis.com/auth/businesscommunications', ]; // Set the private key to the service account file const privatekey = require(PATH_TO_SERVICE_ACCOUNT_KEY); async function main() { const authClient = await initCredentials(); const agentName = 'brands/' + BRAND_ID + '/agents/' + AGENT_ID; if (authClient) { // Setup the parameters for the API call const apiParams = { auth: authClient, name: agentName, updateMask: 'businessMessagesAgent.conversationalSettings.' + LOCALE, resource: { businessMessagesAgent: { conversationalSettings: { [LOCALE]: { privacyPolicy: { url: 'https://www.your-company-website.com/privacy' }, welcomeMessage: { text: 'My updated welcome message' }, offlineMessage: { text: 'My updated offline message' }, conversationStarters: [ { suggestion: { reply: { 'text': 'Suggestion 2', 'postbackData': 'post_back_suggestion_2', }, }, } ], }, } } } }; bcApi.brands.agents.patch(apiParams, {}, (err, response) => { if (err !== undefined && err !== null) { console.dir(err); } else { // Agent found console.log(response.data); } }); } else { console.log('Authentication failure.'); } } /** * Initializes the Google credentials for calling the * Business Messages API. */ async function initCredentials() { // Configure a JWT auth client const authClient = new google.auth.JWT( privatekey.client_email, null, privatekey.private_key, scopes, ); return new Promise(function(resolve, reject) { // Authenticate request authClient.authorize(function(err, tokens) { if (err) { reject(false); } else { resolve(authClient); } }); }); } main();
Java
import com.google.api.client.googleapis.auth.oauth2.GoogleCredential; import com.google.api.client.googleapis.javanet.GoogleNetHttpTransport; import com.google.api.client.http.HttpTransport; import com.google.api.client.json.jackson2.JacksonFactory; import com.google.api.services.businesscommunications.v1.BusinessCommunications; import com.google.api.services.businesscommunications.v1.model.*; import com.google.common.collect.ImmutableMap; import java.io.FileInputStream; import java.util.Arrays; class Main { /** * Initializes credentials used by the Business Communications API. */ private static BusinessCommunications.Builder getBusinessCommunicationsBuilder() { BusinessCommunications.Builder builder = null; try { GoogleCredential credential = GoogleCredential .fromStream(new FileInputStream("PATH_TO_SERVICE_ACCOUNT_KEY")); credential = credential.createScoped(Arrays.asList( "https://www.googleapis.com/auth/businesscommunications")); credential.refreshToken(); HttpTransport httpTransport = GoogleNetHttpTransport.newTrustedTransport(); JacksonFactory jsonFactory = JacksonFactory.getDefaultInstance(); // Create instance of the Business Communications API builder = new BusinessCommunications .Builder(httpTransport, jsonFactory, null) .setApplicationName(credential.getServiceAccountProjectId()); // Set the API credentials and endpoint builder.setHttpRequestInitializer(credential); } catch (Exception e) { e.printStackTrace(); } return builder; } public static void main(String args[]) { try { // Create client library reference BusinessCommunications.Builder builder = getBusinessCommunicationsBuilder(); String agentName = "brands/BRAND_ID/agents/AGENT_ID"; Agent agent = new Agent().setBusinessMessagesAgent( new BusinessMessagesAgent().setConversationalSettings(ImmutableMap.of("LOCALE", new ConversationalSetting() .setPrivacyPolicy(new PrivacyPolicy().setUrl("PRIVACY_POLICY_URL")) .setWelcomeMessage(new WelcomeMessage().setText("WELCOME_MESSAGE")) .setOfflineMessage(new OfflineMessage().setText("OFFLINE_MESSAGE")) .setConversationStarters(Arrays.asList( new ConversationStarters().setSuggestion(new Suggestion() .setReply(new SuggestedReply() .setText("REPLY_TEXT") .setPostbackData("POSTBACK_DATA"))), ))))); BusinessCommunications.Brands.Agents.Patch request = builder .build().brands().agents().patch(agentName, agent); request.setUpdateMask("businessMessagesAgent.conversationalSettings.LOCALE"); Agent updatedAgent = request.execute(); System.out.println(updatedAgent.toPrettyString()); } catch (Exception e) { e.printStackTrace(); } } }
Python
"""This code updates the conversational settings of a Business Messages agent. Read more: https://developers.google.com/business-communications/business-messages/reference/business-communications/rest/v1/brands.agents/patch This code is based on the https://github.com/google-business-communications/python-businessmessages Python Business Messages client library. """ from oauth2client.service_account import ServiceAccountCredentials from businesscommunications.businesscommunications_v1_client import BusinesscommunicationsV1 from businesscommunications.businesscommunications_v1_messages import ( Agent, BusinessMessagesAgent, ConversationStarters, ConversationalSetting, OfflineMessage, PrivacyPolicy, WelcomeMessage, NegativeBotFeedbackMessage, BusinesscommunicationsBrandsAgentsPatchRequest, ) # Edit the values below: BRAND_ID = 'EDIT_HERE' AGENT_ID = 'EDIT_HERE' SCOPES = ['https://www.googleapis.com/auth/businesscommunications'] SERVICE_ACCOUNT_FILE = './service_account_key.json' credentials = ServiceAccountCredentials.from_json_keyfile_name( SERVICE_ACCOUNT_FILE, scopes=SCOPES) client = BusinesscommunicationsV1(credentials=credentials) agents_service = BusinesscommunicationsV1.BrandsAgentsService(client) agent_name = 'brands/' + BRAND_ID + '/agents/' + AGENT_ID agent=Agent( businessMessagesAgent=BusinessMessagesAgent( conversationalSettings=BusinessMessagesAgent.ConversationalSettingsValue( additionalProperties=[BusinessMessagesAgent.ConversationalSettingsValue.AdditionalProperty( key='en', value=ConversationalSetting( privacyPolicy=PrivacyPolicy(url='https://www.your-company-website.com/privacy'), welcomeMessage=WelcomeMessage(text='Welcome to Business Messages'), offlineMessage=OfflineMessage(text='This is an offline message'), conversationStarters=[ ConversationStarters( suggestion=Suggestion( reply=SuggestedReply(text='Option 1', postbackData='option_1') ) )] ) ) ] ) ) ) updated_agent = agents_service.Patch( BusinesscommunicationsBrandsAgentsPatchRequest( agent=agent, name=agent_name, updateMask='businessMessagesAgent.conversationalSettings.en' ) ) print(updated_agent)
Impostazioni a livello di località
# This code updates the agent interaction of a bot and human representatives. # Read more: https://developers.google.com/business-communications/business-messages/reference/business-communications/rest/v1/brands.locations/patch # Replace the __BRAND_ID__, __AGENT_ID__, __LOCATION_ID__, __LOCALE__ # Make sure a service account key file exists at ./service_account_key.json curl -X PATCH \ "https://businesscommunications.googleapis.com/v1/brands/__BRAND_ID__/locations/__LOCATION_ID__?updateMask=conversationalSettings.__LOCALE__" \ -H "Content-Type: application/json" \ -H "User-Agent: curl/business-communications" \ -H "$(oauth2l header --json ./service_account_key.json businesscommunications)" \ -d '{ "conversationalSettings": { "__LOCALE__": { "welcomeMessage": { "text": "My second welcome message" }, "offlineMessage": { "text": "My second offline message" }, "privacyPolicy": { "url": "https://www.your-company-website.com/privacy" }, "conversationStarters": [ { "suggestion": { "reply": { "text": "Suggestion 2", "postbackData": "post_back_suggestion_2" } } } ] } } }'
Per informazioni sulla formattazione e sui valori, consulta
brands.agents.patch
,
brands.locations.patch
,
e
ConversationalSetting
Esempi
Impostazioni a livello di agente
curl -X PATCH \ "https://businesscommunications.googleapis.com/v1/brands/BRAND_ID/agents/AGENT_ID?updateMask=businessMessagesAgent.conversationalSettings.en" \ -H "Content-Type: application/json" \ -H "User-Agent: curl/business-communications" \ -H "$(oauth2l header --json PATH_TO_SERVICE_ACCOUNT_KEY businesscommunications)" \ -d "{ 'businessMessagesAgent': { 'conversationalSettings': { 'en': { 'welcomeMessage': { 'text': 'Thanks for contacting Growing Tree Bank. What can I help with today?', }, 'offlineMessage': { 'text': 'We\'re closed for the night. Please reach out to us again tomorrow.', }, 'privacyPolicy': { 'url': 'https://www.growingtreebank.com/privacy', }, 'conversationStarters': [ { 'suggestion': { 'reply': { 'text': 'Set up an account', 'postbackData': 'new-account', }, }, }, { 'suggestion': { 'reply': { 'text': 'Look up account information', 'postbackData': 'account-lookup', }, }, }, ], }, }, }, }"
Impostazioni a livello di località
curl -X PATCH \ "https://businesscommunications.googleapis.com/v1/brands/12345/locations/67890?updateMask=conversationalSettings.en" \ -H "Content-Type: application/json" \ -H "User-Agent: curl/business-communications" \ -H "$(oauth2l header --json /path/to/service/account/key businesscommunications)" \ -d "{ 'conversationalSettings': { 'en': { 'welcomeMessage': { 'text': 'Thanks for contacting Growing Tree Bank on Amphitheatre Pkwy. What can I help with today?', }, 'offlineMessage': { 'text': 'We\'re closed for the night. Please reach out to us again tomorrow.', }, 'privacyPolicy': { 'url': 'https://www.growingtreebank.com/privacy', }, 'conversationStarters': [ { 'suggestion': { 'reply': { 'text': 'What are your hours?', 'postbackData': 'hours', }, }, }, { 'suggestion': { 'reply': { 'text': 'Set up an account', 'postbackData': 'new-account', }, }, }, { 'suggestion': { 'reply': { 'text': 'Look up account information', 'postbackData': 'account-lookup', }, }, }, { 'suggestion': { 'action': { 'text': 'Call us', 'postbackData': 'call', 'dialAction': { 'phoneNumber': '+12223334444', }, }, }, }, ], }, }, }"