Bei Unterhaltungen mit Business Messages-Agents wird über die Begrüßungsnachricht festgelegt, für die Interaktion. Außerdem erfahren Nutzer, was der Agent tun kann, die die Fragen und Erwartungen der Nutzenden prägt.
Der Agent sendet jedes Mal eine Willkommensnachricht, wenn der Nutzer eine Unterhaltung öffnet. Die Agent kann auch Gesprächseinstiege anzeigen. um Nutzer zu bekannten oder häufigen Pfaden zu leiten.
Wenn ein Nutzer versucht, eine Unterhaltung außerhalb der Öffnungszeiten eines Kundenservicemitarbeiters zu starten, Der Agent zeigt eine Offlinenachricht an. die du verwenden kannst, um alternative Kanäle zu teilen oder nächste Schritte vorzuschlagen. Durch die Nutzung von können Sie die Zuverlässigkeit und Nutzerfreundlichkeit des Agents erhöhen.
Einstellungen auf Agent- und Standortebene
Sie können Konversationseinstellungen auf Agent- oder Standortebene festlegen.
Agent-Ebene: Diese Einstellungen gelten für alle Unterhaltungen mit dem an alle Einstiegspunkte.
Möglicherweise beginnt eine Willkommensnachricht auf Kundenservicemitarbeiter: „Vielen Dank, dass Sie sich an Bridgepoint Runner...“ Konzentrieren Sie sich für Gesprächseinstiege Aktionen oder Informationen für das gesamte Unternehmen betreffen.
Standortebene: Diese Einstellungen überschreiben Einstellungen auf Agent-Ebene und gilt nur für Unterhaltungen mit diesem Standort in
PLACESHEET
undMAPS
Einstiegspunkte.Möglicherweise wird eine Willkommensnachricht auf Standortebene angezeigt: "Vielen Dank, dass Sie Bridgepoint Runners am Amphitheatre Pkwy..." Für Gesprächseinstiege sorgen zu ortsbezogenen Aufgaben oder Informationen. In einer Offlinenachricht wird möglicherweise Folgendes erwähnt: wann der Standort wieder geöffnet ist.
Sprachen
Agents und Standorte können für jede Sprache, in der sie ausgeführt werden, unterschiedliche Einstellungen festlegen Support. Zum Beispiel könnte ein Agent eine Willkommensnachricht auf Englisch für das „en“ und dieselbe Willkommensnachricht für das "es" auf Spanisch haben. Sprache. Business Messages löst eine Übereinstimmung zwischen der auf dem Nutzergerät gemeldeten Sprache und Die Sprachen, für die ein Agent oder Standort Unterhaltungseinstellungen hat.
Diese Sprachübereinstimmung wird in jeder Nachricht gemeldet. resolvedLocale
. Ich
kann die defaultLocale
eines Agents oder Standorts angeben, mit der die Gewichtungen behoben wurden
Gebietsschema. Weitere Informationen finden Sie unter Lokalisierung und
Sprachen.
Business Messages verwendet die aufgelöste Sprache, um zu bestimmen, welche Konversation die angewendeten Einstellungen.
Willkommensnachricht
Die erste Nachricht in einer Unterhaltung zwischen einem Agent und einem Nutzer ist die Willkommensnachricht. Die Willkommensnachricht wird automatisch angezeigt, neue Unterhaltung. Eine gute Willkommensnachricht legt die Erwartungen des Nutzers an die Interaktion mit dem Agent fest. So bearbeiten Sie eine Begrüßung Informationen zum Aktualisieren der Konversationseinstellungen
Gesprächseinstiege
Während eine gute Willkommensnachricht die Funktionen eines Agents auf hohem Niveau und sind offene, gute Gesprächseinstiege führen Nutzende zu häufigen Fragen oder bekannten Funktionen.
Gesprächseinstiege werden als vertikal gestapelte Vorschläge angezeigt direkt auf die Willkommensnachricht. Wenn ein Nutzer auf eine Unterhaltung tippt Starter, erhält der Agent vordefinierte Inhalte und Postback-Daten, die Sie festlegen. wenn Sie den Auslöser angeben.
Wenn ein Agent automatisierte Funktionen für bestimmte Anfragen unterstützt, Gesprächseinstiege können diesen Anfragen zugeordnet werden. So können Sie sich auf bekannte Eingaben für die Automatisierung vornehmen und Nutzerfragen in freiem Format an Kundenservicemitarbeiter senden, die sich sofort Antwort.
Ein Kundenservicemitarbeiter kann maximal 5 Gesprächseinstiege haben und jeder Auslöser kann dürfen maximal 35 Zeichen lang sein.
Informationen zum Hinzufügen oder Bearbeiten von Gesprächseinstiegen finden Sie unter Unterhaltungseinstieg aktualisieren Einstellungen.
Offlinenachrichten
Wenn ein Nutzer eine Unterhaltung mit einem Agent beginnt, der nicht für den Agent zuständig ist
Stunden (definiert durch
MessagingAvailability
),
Der Nutzer empfängt die Offlinenachricht des Agents. Nur menschliche Vertreter
Verfügbarkeit wird beim Auslösen einer Offline-Nachricht berücksichtigt. Kundenservicemitarbeiter, die nur
Bot-Beauftragte immer eine Willkommensnachricht senden. Eine gute Offline-Nachricht
- Teilt, warum der Kundenservicemitarbeiter nicht verfügbar ist
- Weist den Nutzer auf geeignete nächste Schritte oder alternative Kontaktmöglichkeiten hin
- Der Ton der Begrüßungsnachricht und der Gesprächseinstiege stimmen überein
Schlechte Offlinenachricht
„Wir haben leider geschlossen.“
Gute Offline-Nachricht
„Wir haben momentan geschlossen, aber wir sind morgen um 8 Uhr wieder für Sie da. Wenn Wenn Sie dringende Hilfe benötigen, wenden Sie sich an den Support unter +12223334444 oder support@gtb.com.“
Informationen zum Bearbeiten einer Offlinenachricht finden Sie im Hilfeartikel Einstellungen der Konversation aktualisieren.
Konversationseinstellungen aktualisieren
Um eine Willkommensnachricht oder einen Gesprächseinstieg zu verwalten, stellen Sie eine PATCH-Anfrage
mit der Business Communications
API
, um das Feld conversationalSettings
eines Agents oder Standorts zu aktualisieren.
Wenn Sie das Feld conversationalSettings
aktualisieren, müssen Sie Werte für
in der Spalte
ConversationalSetting
-Objekt enthält. Aktualisierungsanfragen überschreiben den Inhalt aller Felder, die Sie bearbeiten, einschließlich
alle untergeordneten Felder. Wenn Sie beispielsweise eine Anfrage zum Ändern einer Willkommensnachricht stellen
aber keine Gesprächseinstiege angeben, werden durch die Anfrage alle vorherigen
Gesprächseinstiege.
Vorbereitung
Bevor Sie die Einstellungen für die Konversation aktualisieren, benötigen Sie Folgendes:
- Pfad zum Dienstkontoschlüssel Ihres GCP-Projekts auf Ihrem Entwicklungscomputer
- Die Sprache, für die Sie die Einstellungen aktualisieren möchten
Für Einstellungen auf Agent-Ebene den Agent
name
, z. B. „brands/12345/agents/67890“Wenn Sie den
name
des Agents nicht kennen, lesen Sie Alle Agents für einen brand [Marke].Bei Einstellungen auf Standortebene den Standort
name
, z. B. „brands/12345/locations/67890“Wenn Sie die
name
des Standorts nicht kennen, lesen Sie Alle Standorte für brand [Marke].Das zu aktualisierende Gebietsschema, angegeben als zweistellige ISO 639-1-Sprache Code
Neue Willkommensnachricht
URL der Datenschutzerklärung
Optional: Text für den Gesprächseinstieg
Optional: Postback-Daten für den Gesprächseinstieg
Optional: Neue Offlinenachricht
Wenn du die aktuellen Werte für conversationalSettings
nicht kennst, siehe Agent abrufen
Informationen
und Standort abrufen
Informationen.
Aktualisierungsanfrage senden
Führen Sie den folgenden Befehl aus, um den Agent oder Standort zu aktualisieren. Variablen ersetzen mit Werten, die Sie unter Voraussetzungen angegeben haben.
Wenn du keine Gesprächseinstiege haben möchtest, kannst du conversationStarters
und alle zugehörigen
untergeordneten Feldern.
Einstellungen auf Agent-Ebene
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)
Einstellungen auf Standortebene
# 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" } } } ] } } }'
Informationen zu Formatierung und Werten finden Sie unter
brands.agents.patch
,
brands.locations.patch
,
und
ConversationalSetting
Beispiele
Einstellungen auf Agent-Ebene
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', }, }, }, ], }, }, }, }"
Einstellungen auf Standortebene
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', }, }, }, }, ], }, }, }"