Etkinlik alma

Temsilciniz, RBM platformundan webhook etkinlikleri alır. Bu etkinlikler hem kullanıcı etkileşimleri hem de platform düzeyindeki güncellemeler hakkında sizi bilgilendirir.

Bu etkinlikler, kaynaklarına göre kategorize edilir:

  • Kullanıcı etkinlikleri: Kullanıcının cihazından temsilcinize gönderilen ve temsilcinizle etkileşimi işaret eden bildirimler.
  • Platform etkinlikleri: RBM platformu tarafından gönderilen, temsilci başlatma durumu değişiklikleri ve mesajların süresinin dolmasıyla ilgili bildirimler.

Aracınızın kullanıcının cihazına gönderdiği durum etkinlikleriyle ilgili ayrıntılar için Etkinlik gönderme başlıklı makaleyi inceleyin.

Kullanıcı mesajlarını (ör. metin, dosya, konum) işleme hakkında ayrıntılı bilgi için Mesaj alma başlıklı makaleyi inceleyin.

Kullanıcı etkinlikleri

Kullanıcı etkinlikleri, kullanıcının cihazından gelen ve ileti durumunu veya abonelik değişikliklerini (ör. kullanıcının Google Mesajlar'da abonelikten ayrılması veya yeniden abone olması) bildiren bildirimlerdir.

Biçimlendirme ve değer seçeneklerinin tam listesi için UserEvent referansına bakın.

Kullanıcı, temsilci mesajını alır

Bu etkinlik, bir iletinin kullanıcı cihazına başarıyla teslim edildiğini gösterir.

{
  "senderPhoneNumber": "PHONE_NUMBER",
  "eventType": "DELIVERED",
  "eventId": "EVENT_ID",
  "messageId": "MESSAGE_ID",
  "agentId": "AGENT_ID"
}

Kullanıcı, temsilci mesajını okur

Bu etkinlik, bir iletinin açıldığını veya onaylandığını gösterir.

{
  "senderPhoneNumber": "PHONE_NUMBER",
  "eventType": "READ",
  "eventId": "EVENT_ID",
  "messageId": "MESSAGE_ID",
  "agentId": "AGENT_ID"
}

Kullanıcı yazmaya başladığında

Bu etkinlik, kullanıcının yanıt yazdığını gösterir.

{
  "senderPhoneNumber": "PHONE_NUMBER",
  "eventType": "IS_TYPING",
  "eventId": "EVENT_ID",
  "agentId": "AGENT_ID"
}

Kullanıcı, önerilen bir işleme dokunur

Kullanıcı, önerilen bir işleme dokunduğunda aracınız, işlemin geri gönderme verilerini içeren bir etkinlik alır.

{
  "senderPhoneNumber": "PHONE_NUMBER",
  "eventId": "EVENT_ID",
  "agentId": "AGENT_ID",
  "suggestionResponse": {
    "postbackData": "postback_1234"
  }
}

Kullanıcı, görüşmeden e-posta listesinden çıkarsa

Bu etkinlik, kullanıcının temsilcinizden ve temsil ettiği işletmeden tanıtımlar gibi gerekli olmayan mesajlar almayı iptal ettiğini gösterir. Kullanıcılar, Google Mesajlar'da RBM görüşmesinden çıkarak bu etkinliği tetikler.

JSON yükü örneğini aşağıda bulabilirsiniz:

{
  "senderPhoneNumber": "PHONE_NUMBER",
  "eventType": "UNSUBSCRIBE",
  "eventId": "EVENT_ID",
  "agentId": "AGENT_ID"
}

Abonelikten çıkma özelliğinin işleyiş şekli

  • Sohbet menüsünde her zaman E-posta listesinden çık seçeneği bulunur. Tanıtım amaçlı ve çok kullanımlı temsilciler için bu seçenek, belirli sayıda okunmamış mesajdan sonra doğrudan sohbette de gösterilir (ülkeye göre farklı kurallar geçerlidir).
  • Abonelikten çık'ı seçtiğinizde iki işlem aynı anda tetiklenir: Google Mesajlar, temsilcinize ülkeye özgü bir anahtar kelime (örneğin, "STOP") gönderir ve RBM platformu, webhook'unuza bir UNSUBSCRIBE etkinliği gönderir.

    Anahtar kelime, kullanıcının telefon numarasının iki harfli ülke koduyla belirlenir. Aşağıdaki tabloda, desteklenen her ülke için anahtar kelimeler listelenmektedir.

    Ülke (ülke kodu) Abonelikten çıkma anahtar kelimesi
    ABD (US), Almanya (DE), Birleşik Krallık (GB), Hindistan (IN), Hollanda (NL) DURDUR
    İspanya (ES), Meksika (MX) BAJA
    Fransa (FR) STOP
    Brezilya (BR) parar
  • Kullanıcı e-posta listesinden çıktıktan sonra, spam olarak bildirilmediği sürece ileti dizisi gelen kutusunda kalır. Spam olarak bildirilirse Spam ve engellenenler klasörüne taşınır.

  • Google, politika ve işletme kuralı ihlallerini belirlemek için kullanıcının e-posta listesinden çıkmasının ardından mesaj kalıplarını izler.

İş kuralları

  • Bu görüşmeyi yöneten RBM iş ortağı olarak, kullanıcının e-posta listesinden çıkma isteğine uymak sizin sorumluluğunuzdadır.
  • Abonelikten çıkma işlemini mesaj dizisinde gerçekleştiremiyorsanız kullanıcıların abonelik tercihlerini yönetebileceği web sitesine veya uygulamaya doğrudan bağlantı içeren bir onay mesajını hemen göndermeniz gerekir.
  • Kullanıcı abonelikten çıktıktan sonra gerekli olmayan mesajlar göndermek yasaktır.
  • Önemli mesajlara izin verilmeye devam edilir. Bunlardan bazıları:
    • Tek kullanımlık şifreler (OTP'ler) gibi kimlik doğrulamalar
    • Kullanıcının istediği ve izin verdiği belirli bir hizmetle ilgili bildirimler
    • Kullanıcının e-posta listesinden çıkma isteğinin onaylanması ve iletişim tercihlerini daha iyi yönetmesine yardımcı olacak bilgiler

Örnek

Bir kullanıcı, kullanım alanı çoklu kullanım olan bir havayolu temsilcisinin e-posta listesinden çıkarsa pazarlama iletileri göndermeyi durdurmanız gerekir. Ancak, kullanıcı söz konusu uçuşla ilgili güncellemeleri almak için açık rıza verdiyse uçuş güncellemeleri gönderebilirsiniz.

Abonelikten çıkma nedenleri

Kullanıcılar, temsilcinizin e-posta listesinden çıkarken aşağıdaki seçeneklerden birini belirleyebilir:

  • Spam
  • Hiç kaydolmadım
  • Çok sayıda mesaj alıyorum
  • Artık ilgimi çekmiyor
  • Diğer

Kullanıcıların neden e-posta listesinden çıktığını anlamalarına yardımcı olmak için iş ortaklarına Analytics'e genel bakış bölümünde abonelikten çıkma nedenleri gösterilir.

Kullanıcı, görüşmeye yeniden abone olur.

Bu etkinlik, kullanıcının temsilcinizden tekrar mesaj almak istediğini gösterir. Bu mesajlara promosyon gibi gerekli olmayan içerikler de dahildir. Kullanıcılar, Google Mesajlar'da daha önce abonelikten çıktıkları bir görüşmeye yeniden abone olarak bu etkinliği tetikleyebilir.

JSON yükü örneğini aşağıda bulabilirsiniz:

{
  "senderPhoneNumber": "PHONE_NUMBER",
  "eventType": "SUBSCRIBE",
  "eventId": "EVENT_ID",
  "agentId": "AGENT_ID"
}

Yeniden abone olmanın işleyiş şekli

  • Hem sohbet menüsünden hem de sohbet içindeki bir bağlantıdan kullanılabilen Abone ol seçeneği, kullanıcıların abonelikten çıktıkları bir sohbete yeniden abone olmalarını sağlar.
  • Abone ol'u seçtiğinizde iki işlem aynı anda tetiklenir: Google Mesajlar, temsilcinize ülkeye özgü bir anahtar kelime (ör. "BAŞLAT") gönderir ve RBM platformu, webhook'unuza bir SUBSCRIBE etkinliği gönderir. Belirli anahtar kelime, kullanıcının telefon numarasının iki harfli ülke koduna göre belirlenir. Aşağıdaki tabloda, desteklenen her ülke için anahtar kelimeler listelenmektedir.

    Ülke (ülke kodu) Abone olma anahtar kelimesi
    ABD (US), Almanya (DE), Birleşik Krallık (GB), Hindistan (IN), Hollanda (NL) BAŞLAT
    İspanya (ES), Meksika (MX) ALTA
    Fransa (FR) Démarrer
    Brezilya (BR) começar

İş kuralları

  • Bu görüşmeyi yöneten RBM iş ortağı olarak, kullanıcının yeniden abone olma isteğine uymak sizin sorumluluğunuzdadır.
  • Yeniden abonelik, tanıtımlar gibi zorunlu olmayan içerikler de dahil olmak üzere tüm mesaj türleri için geçerlidir.
  • Bir kullanıcı, abonelikten çıktıktan sonra işletmenize mesaj gönderirse bu, yeniden abone olma isteği olarak kabul edilebilir.
  • Bir kullanıcı mesajlaşma kanalı dışında (örneğin, web sitenizde) yeniden abone olursa durumunu güncellemek ve mesaj göndermeye devam etmek RBM iş ortağı olarak sizin sorumluluğunuzdadır.

Platform etkinlikleri

RBM platformu, temsilcinizi temsilcinin başlatma durumu veya mesajların süresinin dolması ile ilgili değişiklikler hakkında bilgilendirmek için platform etkinlikleri gönderir.

Ajan başlatma durumu değişti

RBM platformu, temsilcinizin kullanıma sunma durumuyla ilgili her değişiklik için bir AgentLaunchEvent gönderir. Örneğin, temsilcinizin durumu PENDING'dan LAUNCHED'ya değiştiğinde. Etkinlik, Pub/Sub mesajı olarak teslim edilir. Bunu diğer etkinliklerden ayırt etmek için message.attributes.type değerinin agent_launch_event yolunu kontrol edin.

Webhook yapılandırması

Bu bildirimleri almak için iş ortağı düzeyinde veya temsilci düzeyinde webhook'unuzu kullanabilirsiniz.

Ön koşullar

  • RBM mesajlaşması için webhook'unuzu yapılandırın (bu, kullanıcı mesajlarını ve kullanıcı etkinliklerini almak için gereklidir).
  • Kullanıcı etkinlikleri ile aracı başlatma durumu etkinliklerini ayırt etmek için message.attributes.type yolunda agent_launch_event değerini kontrol edin.

Etkinlik yükü yapısı

AgentLaunchEvent, Pub/Sub mesajı olarak iletilir.

Aşağıda bununla ilgili bir örnek verilmiştir:

{
  "message": {
    "attributes": {
      "business_id": "rbm-chatbot-id@rbm.goog",
      "event_type": "REJECTED",
      "product": "RBM",
      "project_number": "3338881441851",
      "type": "agent_launch_event"
    },
    "data": "....BASE64-encoded-JSON-with-notification...",
    "messageId": "14150481888479752",
    "message_id": "14150481888479752",
    "publishTime": "2025-03-05T18:50:21.88Z",
    "publish_time": "2025-03-05T18:50:21.88Z"
  },
  "subscription": "projects/rbm-partner-gcp/subscriptions/rbm-sub"
}

Etkinlik yükündeki AgentLaunchEvent.LaunchState alanı, aracının yeni başlatma durumunu gösterir. Olası değerler şunlardır:

Değer Ajan başlatma durumu Ayrıntılar
PENDING Beklemede İstek, incelenmek üzere bir operatöre gönderildi.
LAUNCHED Başlatıldı Belirli bir operatörde iletilere izin verilir.
REJECTED Belirli bir operatörde reddedildi Ret nedeni yorumda belirtilir.
SUSPENDED Belirli bir operatörde askıya alınmış Askıya alınma nedeni yorumda belirtilir.
UNLAUNCHED Başlatılmamış Tüm operatörlerde kullanıma sunulmayan ajanlar düzenlenebilir.

Veri alanı, lansman durumu ayrıntılarını içeren Base64 kodlu bir JSON nesnesi içerir. Aşağıda, kodu çözülmüş JSON örneği verilmiştir:

 {
      "eventId": "rbm-chatbot-id/0a7ed168-676e-4a56-b422-b23434",
      "agentId": "rbm-chatbot-id@rbm.goog",
      "botDisplayName": "RBM Welcome Bot 7 - RBM Chatbot name",
      "brandId": "bd38fbff-392a-437b-a6f2-7f2e43745b56",
      "brandDisplayName": "Chatbots brand",
      "regionId": "/v1/regions/fi-rcs",
      "oldLaunchState": "PENDING",
      "newLaunchState": "REJECTED",
      "actingParty": "rbm-support@google.com",
      "comment": "Carrier has rejected the launch: policy violation",
      "sendTime": "2025-03-05T18:50:19.386436Z"
}

Operatör tarafından başlatılan lansman durumu değişiklikleri

Bunlar, inceleme ve yaptırım süreci sırasında genellikle operatörler tarafından işlenen izin verilen geçişlerdir:

Eski başlatma durumu Yeni başlatma durumu Tetikleyici işlemi
PENDING LAUNCHED Yayınlama isteğini onaylayın.
PENDING REJECTED Lansman isteğini reddetme
LAUNCHED SUSPENDED Yaptırım/yönetim nedenleriyle askıya alma
SUSPENDED LAUNCHED Bir ajanı etkin duruma geri yükleme
SUSPENDED UNLAUNCHED Bir temsilciyi sonlandırın.
REJECTED LAUNCHED Daha önce reddedilen bir yayınlama isteğini onaylayın.

İş ortağı tarafından başlatılan lansman durumu değişiklikleri

Bunlar, genellikle iş ortakları tarafından işlenen izin verilen geçişlerdir:

Eski başlatma durumu Yeni başlatma durumu Tetikleyici işlemi
UNSPECIFIED PENDING İncelemeye gönderin.
PENDING UNLAUNCHED Bekleyen bir yayınlama isteğini iptal edebilirsiniz.
UNLAUNCHED PENDING İncelemeye gönderin.
REJECTED PENDING İnceleme için yeniden gönderin.
SUSPENDED PENDING İnceleme için yeniden gönderin.

Mesajın süresi doldu; iptal işlemi başarılı oldu

Bu etkinlik, iletinin geçerlilik süresinin (TTL) sona erdiğini ve iletinin başarıyla iptal edildiğini gösterir. Bu, yedek mesajlaşma stratejiniz için iyi bir tetikleyicidir.

Biçimlendirme ve değer seçeneklerinin tam listesi için ServerEvent referansına bakın.

{
  "phoneNumber": "PHONE_NUMBER",
  "messageId": "MESSAGE_ID",
  "agentId": "AGENT_ID",
  "eventType": "TTL_EXPIRATION_REVOKED",
  "eventId": "EVENT_ID",
  "sendTime": "TIMESTAMP"
}

Mesajın süresi doldu; iptal işlemi başarısız oldu

Bu etkinlik, iletinin TTL'sinin süresinin dolduğunu ancak başarıyla iptal edilmediğini gösterir.

Biçimlendirme ve değer seçeneklerinin tam listesi için ServerEvent referansına bakın.

{
  "phoneNumber": "PHONE_NUMBER",
  "messageId": "MESSAGE_ID",
  "agentId": "AGENT_ID",
  "eventType": "TTL_EXPIRATION_REVOKE_FAILED",
  "eventId": "EVENT_ID",
  "sendTime": "TIMESTAMP"
}

İletilerin teslim edileceği garanti edilmez.

  • İleti teslim edildiyse webhook'unuzda DELIVERED etkinliği alırsınız.
  • İleti teslim edilmediyse iptal isteği göndermek için iptal API'sini kullanın.

Mesaj zamana duyarlıysa (ör. OTP veya sahtekarlık uyarısı) kullanıcıya yinelenen mesajlar gönderilse bile mesajı SMS gibi alternatif bir kanal üzerinden göndermek en iyisidir.