Business'a kaydolduktan sonra Mesajlar, test temsilciniz adına mesaj alabilirsiniz. Mesaj alabilirsiniz yönettiğiniz markalar için create doğrulama ve lansman aracı olarak kullanabilirsiniz.
Bir müşteri, yönettiğiniz bir temsilciye mesaj gönderdiğinde Business Messages Webhook'unuza çeşitli kimlikler, ileti içeriği ve ve konum bilgileri.
Business Communications Developer Console günlüklerini kullanma sayfa hata ayıklaması yapabilirsiniz.
Gelen mesajları işleme
Temsilcinizin kullanıcılardan gelen mesajları işleme ve yanıtlama biçimi büyük ölçüde bağlıdır mantığınıza göre değişir. Ancak genel olarak, bir kullanıcıya yanıt vermek için atılması gereken adımlar tutarlı olduğundan emin olun.
Mesajı onaylama
Webhook'unuz tarafından alınan bir mesajı onaylamak için geçerli bir HTTP yanıtı döndürün webhook'unuza gönderilen mesajlara ekleyin.
Bir ileti, teslim zaman aşımı, webhook erişilebilirliği ve veya izin sorunları olduğunda Google, iletiyi depolayıp iletirse de 7 gün boyunca veya webhook'unuz tüm bağlantıları kabul edene kadar mesajını alırsınız.
İletinin Google'dan geldiğini doğrulayın
İletiyi işlemeden önce Google'ın iletiyi gönderdiğini doğrulamanız gerekir içerik.
Aldığınız mesajın Google tarafından gönderildiğini doğrulamak için
- İletinin
X-Goog-Signature
üstbilgisini ayrıştır. Bu karma, İleti gövdesi yükünün base64 kodlu kopyası. İstemci jetonunuzu ( web kancası) tıklayın. anahtar olarak, ileti yükü baytlarının SHA512 HMAC'sini oluşturun ve sonucu base64 olarak kodlayın.
X-Goog-Signature
karmasını, oluşturduğunuz karmayla karşılaştırın.- Karmalar eşleşiyorsa iletiyi Google'ın gönderdiğini onaylamış olursunuz.
- Karmalar eşleşmezse, karma oluşturma sürecinizi bilinen iyi bir mesajını alırsınız. Karma oluşturma süreciniz doğru şekilde çalışıyorsa ve hileli şekilde gönderilmiş olduğunu düşündüğünüz bir mesaj varsa . bize ulaşın (Google Ads'te imzalamanız Business Messages Google hesabı ile oturum açın).
Echo Bot'lar için GitHub depolarındaki ileti doğrulama örneğine bakın Java'da Node.js Python gibi.
Yerel ayarı belirleme
Kullanıcılar birçok yerden ve birçok dilde iletişim kurar. Business Messages
temsil eden dil tercihlerinin resolvedLocale
ve
Cihazlarına dayalı olarak userDeviceLocale
alanları yerel ayarlar.
Yerelleştirme ve
yerel ayarlar.
Mümkün olduğunda, kullanıcıların özelliklerine göre iletileri yönlendirin ve yanıtlar oluşturun dil tercihler.
İletiyi bağlamına göre yönlendir
İleti bağlamı, kullanıcının ne tür bilgiler arıyor olabileceği hakkında bilgi verir.
Örneğin, bir kullanıcı
placeId
belirli bir konuma (placeId
tarafından tanımlanır) mesaj gönderdiler ve
konuma özgü sorular sorması muhtemeldir. Benzer şekilde, bir iletide
Kullanıcının yakınlarındaki bir konumu tanımlayan nearPlaceId
değeri (kullanıcının
konuma özgü bilgileri bilmek istiyor ancak temsilcinin
Kullanıcının sohbete başlamadan önce sohbet etmek istediği konum.
İletinin bağlam bilgileriyle birlikte iletiyi en uygun konuma yönlendirin şu soruları yanıtlayın:
- İleti yeni bir ileti dizisindeyse ve yaygın olarak sorulan bir soruysa otomasyonla cevap verebilirler.
- Otomasyon soruyu yanıtlayamıyorsa soruyu canlı bir temsilciye yönlendirin.
- İletinin yerel ayarı aracınızın varsayılan yerel ayarıyla eşleşmiyorsa destek alabileceğiniz canlı temsilciye mesaj gönderin.
- Soru belirli bir konumla ilgiliyse şu kişiye yönlendirin: emin olmanız gerekir.
- Mesaj devam eden bir görüşmedeyse canlı temsilciye yönlendirin. konuşmaya katılmalısınız.
Kullanıcının gönderdiği mesajın türünü tanımlama
Kullanıcılar üç tür mesaj gönderebilir:
- Kısa mesajlar serbest biçimli yanıtlardır.
- Resim iletilerde, kullanıcının bir resminin imzalı URL'si bulunur yüklendi.
- Öneri mesajları, geri gönderme verilerini ve kullanıcının dokunduğu önerilen işlem veya önerilen yanıt.
İleti içeriğini işleme
Temsilciniz otomasyon kullanıyorsa kullanıcı mesajının içeriği konuşmadaki bir sonraki yanıtı anlamanıza yardımcı olur.
Kullanıcının amacını belirlemenin en kolay yolu, önerilen yanıt veya önerilen işlem. İlgili metinden bağımsız olarak, geri gönderme verileri makine tarafından okunabilir.
Bir kullanıcı kısa mesaj gönderirse temsilciniz yanıtı doğal dil anlama özelliğini kullanın (örneğin, Dialogflow entegrasyon kullanıcının mesajını işleme ve ileri bir yol belirleme.
Temsilciniz kullanıcının mesajına nasıl yanıt vereceğini bilmiyorsa bir hata durumuyla yanıt verip konuşmaya bir giriş isteyerek kullanıcıdan ek bilgi istemesini veya görüşmeyi canlı müşteri temsilcisine devredebilirsiniz.
Kullanıcıya yanıt verme
Temsilci doğru yanıtı belirledikten sonra: bir canlı müşteri temsilcisi gönderir. mesaj ve kullanıcıyla konuşmayı sürdürür.
Bir yanıt oluştururken kullanıcının yerel ayarını göz önünde bulundurun. Ayrıca
her bir userInfo
nesnesinden değerler alarak yanıtları özelleştirin
almak anlamına gelir.
Mesaj türleri
Aşağıdaki kod, temsilcinizin mesajları nasıl aldığını gösterir.
Biçimlendirme ve değer bilgileri için bkz.
UserMessage
.
Metin
Kullanıcıların yanıt vermeleri için en sık kullanılan yöntem düz metin kullanmaktır. Kısa mesajlarda aşağıdaki biçimdedir.
{ "agent": "brands/BRAND_ID/agents/AGENT_ID", "conversationId": "CONVERSATION_ID", "customAgentId": "CUSTOM_AGENT_ID", "requestId": "REQUEST_ID", "message": { "messageId": "MESSAGE_ID", "name": "conversations/CONVERSATION_ID/messages/MESSAGE_ID", "text": "MESSAGE_TEXT", "createTime": "MESSAGE_CREATE_TIME", }, "dialogflowResponse": { "autoResponded": "BOOLEAN", "faqResponse": { "userQuestion": "USER_QUESTION", "answers": [{ "faqQuestion": "FAQ_QUESTION", "faqAnswer": "FAQ_ANSWER", "matchConfidenceLevel": "CONFIDENCE_LEVEL", "matchConfidence": "CONFIDENCE_NUMERIC", }], }, }, "context": { "entryPoint": "CONVERSATION_ENTRYPOINT", "placeId": "LOCATION_PLACE_ID", "resolvedLocale": "MATCH_OF_USER_AND_AGENT_LOCALES", "userInfo": { "displayName": "USER_NAME", "userDeviceLocale": "USER_LOCALE", }, }, "sendTime": "SEND_TIME", }
Biçimlendirme ve değer seçenekleri için bkz.
Message
.
Resim
Kullanıcılar, temsilcinize kısa mesaj göndermenin yanı sıra mesaj olarak da resim gönderebilir.
Business Messages, paylaşılan resimleri 7 gün boyunca imzalı
URL'ler
ve bu URL'leri ileti yükünün text
alanına ekler.
Temsilciniz otomasyon kullanıyorsa otomasyonun nasıl yanıt vereceğini bildiğinden emin olun. Kullanıcı bir resim paylaştığında. Canlı müşteri temsilcileri için görüntülerin veya bu URL'lerin tıklanabilir olmasını sağlar.
...
"message": {
"text": "https://storage.googleapis.com/business-messages-us/936640919331/jzsu6cdguNGsBhmGJGuLs1DS?x-goog-algorithm\u003dGOOG4-RSA-SHA256\u0026x-goog-credential\u003duranium%40rcs-uranium.iam.gserviceaccount.com%2F20190826%2Fauto%2Fstorage%2Fgoog4_request\u0026x-goog-date\u003d20190826T201038Z\u0026x-goog-expires\u003d604800\u0026x-goog-signedheaders\u003dhost\u0026x-goog-signature\u003d89dbf7a74d21ab42ad25be071b37840a544a43d68e67270382054e1442d375b0b53d15496dbba12896b9d88a6501cac03b5cfca45d789da3e0cae75b050a89d8f54c1ffb27e467bd6ba1d146b7d42e30504c295c5c372a46e44728f554ba74b7b99bd9c6d3ed45f18588ed1b04522af1a47330cff73a711a6a8c65bb15e3289f480486f6695127e1014727cac949e284a7f74afd8220840159c589d48dddef1cc97b248dfc34802570448242eac4d7190b1b10a008404a330b4ff6f9656fa84e87f9a18ab59dc9b91e54ad11ffdc0ad1dc9d1ccc7855c0d263d93fce6f999971ec79879f922b582cf3bb196a1fedc3eefa226bb412e49af7dfd91cc072608e98"
}
...
Biçimlendirme ve değer seçenekleri için bkz.
Message
.
Öneri
Önerilen yanıtlar ve önerilen işlemler, kullanıcıların yanıt vermesine veya işlem yapmasına olanak tanır işlemleri tek bir dokunuşla yapın. Kullanıcı bir öneriye dokunduğunda aracı bir yük alır geri gönderme verileriyle birlikte kullanabilirsiniz.
Öneri mesajları aşağıdaki biçimdedir.
{ "agent": "brands/BRAND_ID/agents/AGENT_ID", "conversationId": "CONVERSATION_ID", "customAgentId": "CUSTOM_AGENT_ID", "requestId": "REQUEST_ID", "suggestionResponse": { "message": "conversations/CONVERSATION_ID/messages/MESSAGE_ID", "postbackData": "POSTBACK_DATA", "createTime": "RESPONSE_CREATE_TIME", "text": "SUGGESTION_TEXT", "suggestionType": "SUGGESTION_TYPE", } "context": { "entryPoint": "CONVERSATION_ENTRYPOINT", "placeId": "LOCATION_PLACE_ID", "resolvedLocale": "MATCH_OF_USER_AND_AGENT_LOCALES", "userInfo": { "displayName": "USER_NAME", "userDeviceLocale": "USER_LOCALE", }, }, "sendTime": "SEND_TIME", }
Biçimlendirme ve değer seçenekleri için bkz.
SuggestionResponse
.
Kimlik doğrulama isteği
Kimlik doğrulama isteği önerisi, kullanıcıların OAuth ile oturum açmasına izin verir kimlik bilgilerini temsilciyle paylaşmasını veya temsilcinin kullanıcıların, bu kullanıcıların anlamına gelir. Daha fazla bilgi için Şununla kimlik doğrulaması yapın: OAuth değerleridir.
Bir kullanıcı, belirtilen OAuth sağlayıcısıyla başarıyla oturum açarsa aracı, Alma işlemi, yetkilendirme kodunu içeren bir yük alır. Kullanıcı aracı, hata ayrıntılarının bulunduğu bir yük alır.
Kimlik doğrulama isteği mesajları aşağıdaki biçimdedir.
{ "agent": "brands/BRAND_ID/agents/AGENT_ID", "conversationId": "CONVERSATION_ID", "customAgentId": "CUSTOM_AGENT_ID", "requestId": "REQUEST_ID", "authenticationResponse": { "code": "AUTHORIZATION_CODE", "redirect_uri": "REDIRECT_URI", "errorDetails": { "error": "ERROR", "errorDescription": "ERROR_DESCRIPTION", }, } "context": { "entryPoint": "CONVERSATION_ENTRYPOINT", "placeId": "LOCATION_PLACE_ID", "resolvedLocale": "MATCH_OF_USER_AND_AGENT_LOCALES", "userInfo": { "displayName": "USER_NAME", "userDeviceLocale": "USER_LOCALE", }, }, "sendTime": "SEND_TIME", }
Biçimlendirme ve değer seçenekleri için bkz.
AuthenticationResponse
.
Mesaj bağlamı
Her ileti, iletinin kaynağıyla ilgili bağlam bilgilerini içerir.
... "context": { "customContext": "CUSTOM_CONTEXT", "entryPoint": "CONVERSATION_ENTRYPOINT", "placeId": "LOCATION_PLACE_ID", "nearPlaceId": "NEARBY_LOCATION_PLACE_ID", "deflectedPhoneNumber": "DEFLECTED_PHONE_NUMBER", "resolvedLocale": "MATCH_OF_USER_AND_AGENT_LOCALES", "userInfo": { "displayName": "USER_NAME", "userDeviceLocale": "USER_LOCALE", }, "widget": { "url": "WEBSITE_URL", "widgetContext": "WIDGET_CONTEXT", }, }, ...
Alan | Açıklama |
---|---|
customContext |
İş ortağı tarafından belirtilen bağlam verileri. |
entryPoint |
Tanımlandığı şekilde, kullanıcının görüşmeyi başlattığı mesajlaşma yüzeyi EntryPoint tarafından yönetilir. |
placeId |
Konum için Google Rehber veritabanındaki benzersiz bir tanımlayıcı kullanıcının mesaj gönderdiğini görebilirsiniz. Yalnızca konuma özel olarak gönderilen iletilerde görünür giriş noktalarından yararlanın. |
nearPlaceId |
Google Rehber veritabanından ilki için benzersiz bir tanımlayıcı
bir yerel Paket'teki konumu. Kullanıcıların sohbet etmek istediği konumları onaylayın
nearPlaceId değerleri. |
deflectedPhoneNumber |
Business Messages'ın kullanıcıyı aramaya yönlendirdiği telefon numarası görüşmenin başlangıcında belirlemeniz gerekir. |
resolvedLocale |
Kullanıcının yerel ayarının hesaplanan en iyi eşleşme (raporlanan)
Yerel ayar değeri iyi biçimlendirilmiş bir IETF BCP 47 dil etiketidir. |
userInfo.displayName |
Mesajı gönderen kullanıcının adı. Kullanıcı, Bu alan boş bırakılır. |
userInfo.userDeviceLocale |
Kullanıcının cihazı tarafından bildirilen yerel ayarı ve uygun biçimde IETF BCP 47 dil etiketi. |
widget.url |
Sohbet yüzeyinin kullanıma sunulduğu web sitesinin URL'si. |
widget.widgetContext |
Kullanılan widget'ın data-bm-widget-context özellik değeri
başlatın. |
Görüşme geçmişi
Google, sohbet geçmişlerini sağlamaz. Kendi geçmişinizi koruyun gizlilik politikanıza ve en iyi uygulamalarınıza uygun şekilde, Böylece, gelecekte kullanıcılardan gelecek mesajlara bilinçli yanıtlar gönderebilirsiniz.