Görüşmeleri zenginleştirmek için etkinlik gönderme ve alma

Business Messages görüşmelerinde, etkinlikler hem mesaj olmayan içerikleri bildirerek hem de kullanıcıların ve temsilcilerin konuşma deneyimini zenginleştirir ve zenginleştirir. Etkinlikler, kullanıcılar için görüşmelerinde bildirimler olarak gösterilir ve kullanıcıların yapabileceği çeşitli işlemlere göre tetiklenir. Temsilciler kendi web kancalarında etkinlikleri alır ve API çağrılarıyla etkinlikler gönderir.

Temsilciler, kullanıcı tarafından başlatılan etkinliklerden haberdar olmalı ve gereken şekilde yanıt vermelidir. Örneğin, bir kullanıcı canlı müşteri temsilcisi isteğinde bulunmasına rağmen temsilci isteğe olumlu veya olumsuz yanıt veremezse bu durum kötü bir kullanıcı deneyimine neden olur.

Etkinlik türleri

Her etkinlik belirli bir türe aittir:

  • Canlı müşteri isteğinde bulunuldu etkinlikleri, kullanıcının doğrudan bir müşteri temsilcisiyle konuşmak istediğini gösterir.

    Temsilci, görüşmeyi bir insan temsilcisine geçirebiliyorsa Temsil edilen temsilci etkinliği gönderin, ardından bir insan temsilcisinden sonraki mesajları gönderin.

    Temsilci, görüşmeyi bir insan temsilcisine taşıyamıyorsa kullanıcıya bilgi vermek için bir mesaj gönderin ve canlı temsilcinin ne zaman müsait olacağını belirtin.

  • Temsili katılma/sol etkinlikleri, kullanıcılara canlı müşteri temsilcilerinin bir görüşmeye katıldığını veya bir görüşmeden ayrıldığını bildirir. Bu etkinlikler, konuşmadaki bildirimleri gösterir ve kullanıcıların yanıt verme hızı ve sorabilecekleri soru türleri konusunda beklentilerin oluşmasına yardımcı olur.

    Temsilci katıldı/solda

  • Yazma etkinlikleri, kullanıcının veya aracının yazdığını gösterir.

    Kullanıcılar için isTyping boole, yazma durumlarını belirtir. Her durum değişikliği yeni bir etkinliği tetikler.

    Temsilciler görüşmede yazma göstergelerini göstermek için TYPING_STARTED ve TYPING_STOPPED etkinliklerini gönderebilir. Temsilcilerden etkinlikleri yazmak, kullanıcılara gerçek kişilerin bir temsilci tarafından yanıt verdiğini veya arka uç otomasyonunun sorularını ya da isteklerini işlediğini bildirir.

    Yazma göstergesi

Etkinlik gönderin

Bir etkinlik göndermek için aşağıdaki komutu çalıştırın. Aşağıdaki öğeleri değiştirin:

  • CONVERSATION_ID, anketi göndermek istediğiniz görüşmenin tanımlayıcısını içerir.
  • Etkinlik için benzersiz bir tanımlayıcıya sahip EVENT_ID
  • Makinenizde hizmet hesabı anahtarınızın yoluyla PATH_TO_SERVICE_ACCOUNT_KEY
  • EventType üzerinden EVENT_TYPE
  • Canlı temsilcinin kullanıcı adıyla veya etkinliği oluşturan otomasyonla REPRESENTATIVE_NAME
  • RepresentativeType üzerinden REPRESENTATIVE_TYPE
curl -X POST "https://businessmessages.googleapis.com/v1/conversations/CONVERSATION_ID/events?eventId=EVENT_ID" \
-H "Content-Type: application/json" \
-H "User-Agent: curl/business-messages" \
-H "`oauth2l header --json PATH_TO_SERVICE_ACCOUNT_KEY businessmessages`" \
-d "{
  'eventType': 'EVENT_TYPE',
  'representative': {
    'avatarImage': 'REPRESENTATIVE_AVATAR_URL',
    'displayName': 'REPRESENTATIVE_NAME',
    'representativeType': 'REPRESENTATIVE_TYPE',
  },
}"

Biçimlendirme ve değer seçenekleri için bkz. conversations.events.

Örnek: Temsil edilen bir katılımlı etkinlik gönderme

# Copyright 2021 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at

#     https://www.apache.org/licenses/LICENSE-2.0

# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# This code sends a REPRESENTATIVE_JOINED event to the user.
# Read more: https://developers.google.com/business-communications/business-messages/guides/how-to/message/events#send

# Replace the __CONVERSATION_ID__ with a conversation id that you can send messages to
# Make sure a service account key file exists at ./service_account_key.json

curl -X POST "https://businessmessages.googleapis.com/v1/conversations/__CONVERSATION_ID__/events?eventId=6a0af2c6-787d-4097-870d-93fe20351747" \
-H "Content-Type: application/json" \
-H "User-Agent: curl/business-messages" \
-H "$(oauth2l header --json ./service_account_key.json businessmessages)" \
-d "{
  'eventType': 'REPRESENTATIVE_JOINED',
  'representative': {
    'avatarImage': 'https://developers.google.com/identity/images/g-logo.png',
    'displayName': 'Chatbot',
    'representativeType': 'HUMAN'
  }
}"

Etkinlik alma

Kullanıcı, cihazında bir etkinlik tetiklediğinde temsilciniz, etkinliği webhook'undan alır. Etkinlikleri, mesajları aldığınız gibi alın ve işleyin.

Kullanıcı tarafından başlatılan etkinlikler aşağıdaki biçime sahiptir.

{
  "agent": "brands/BRAND_ID/agents/AGENT_ID",
  "requestId": "REQUEST_ID",
  "conversationId": "CONVERSATION_ID",
  "customAgentId": "CUSTOM_AGENT_ID",
  "sendTime": "SEND_TIME",
  "userStatus": {
    "isTyping": "BOOLEAN",
    "requestedLiveAgent": "BOOLEAN",
    "createTime": "CREATION_TIME",
  }
}

Biçimlendirme ve değer seçenekleri için bkz. UserMessage.