Bu kılavuzda, bir alandaki kaynaklarda yapılan değişiklikleri listelemek için Google Chat API'nin SpaceEvent
kaynağındaki list
yönteminin nasıl kullanılacağı açıklanmaktadır.
SpaceEvent
kaynağı
Alanın alt kaynakları da dahil olmak üzere hedef alanda yapılan bir değişikliği temsil eder
önemli metrikler yer alır. Daha fazla bilgi için
Desteklenen etkinlik türlerinin ve etkinlik yüklerinin listesini görmek için eventType
ve
SpaceEvent
kaynağının payload
alanı
referans belgeler.
İstek zamanından en fazla 28 gün öncesine kadar olan etkinlikleri listeleyebilirsiniz. Sunucu, etkilenen kaynağın en son sürümünü içeren etkinlikleri döndürür.
Örneğin, yeni alan üyeleriyle ilgili etkinlikleri listelerseniz sunucu, en son üyelik ayrıntılarını içeren Membership
kaynaklarını döndürür. Yeni ise
talep edilen dönemde üyeler kaldırıldıysa etkinlik yükü bir
boş Membership
kaynağı.
Bu yöntemi çağırmak için user kimlik doğrulama. Kime bir alana ait etkinlik görüntüleme işlemi için, kimliği doğrulanan kullanıcı alanın bir üyesi olmalıdır.
Ön koşullar
Python
- Google Chat'e erişimi olan bir Business veya Enterprise Google Workspace hesabı.
- Ortamınızı ayarlayın:
- Google Cloud projesi oluşturun.
- OAuth izin ekranını yapılandırın.
- Chat uygulamanız için bir ad, simge ve açıklamayla Google Chat API'yi etkinleştirip yapılandırın.
-
Bir masaüstü uygulaması için OAuth istemci kimliği kimlik bilgileri oluşturun. Bu kılavuzda yer alan örneği çalıştırmak için kimlik bilgilerini yerel dizininize
client_secrets.json
adlı bir JSON dosyası olarak kaydedin.
- Kullanıcı kimlik doğrulamasını destekleyen bir yetkilendirme kapsamı seçin.
Alan etkinliklerini listeleme
Bir Chat alanındaki alan etkinliklerini listelemek için aşağıdakileri yapın:
SpaceEvent
kaynağındalist
yöntemini çağırın.-
filter
girin. En az bir etkinlik türü belirtmeniz gerekir. Ayrıca tarihe göre de filtreleme yapabilirsiniz. Desteklenen etkinlik türlerinin listesi içineventType
alanına bakın. - Kullanıcı kimlik doğrulaması ile isteğinizde her etkinlik türünü desteklemek için bir veya daha fazla yetkilendirme kapsamı belirtin. En iyi uygulama olarak, GA4 Çevrimiçi Kitleler'i kullanmaya devam eden uygulamanızın çalışmasını sağlar. Kapsam seçmek için Kimlik doğrulama ve yetkilendirmeye genel bakış.
Aşağıdaki kod örneğinde, bir alandaki yeni üyelikler ve mesajlarla ilgili etkinlikler listelenmektedir.
Python
- Çalışma dizininizde
chat_space_event_list.py
adlı bir dosya oluşturun. Aşağıdaki kodu
chat_space_event_list.py
bölümüne ekleyin:"""Lists SpaceEvent resources from the Chat API.""" from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.memberships.readonly", "https://www.googleapis.com/auth/chat.messages.readonly"] # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. chat = build( 'chat', 'v1', credentials=creds, ) # Use the service endpoint to call Chat API. result = chat.spaces().spaceEvents().list( # The space from which to list events. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE', # A required filter. Filters and returns events about new memberships and messages filter='event_types:"google.workspace.chat.membership.v1.created" OR event_types:"google.workspace.chat.message.v1.created"' ).execute() # Prints details about the created space events. print(result)
Kodda aşağıdakileri değiştirin:
SPACE
: Chat API'dekispaces.list
yönteminden veya bir alanın URL'sinden alabileceğiniz bir alan adı.
Çalışma dizininizde örneği derleyin ve çalıştırın:
python3 chat_space_event_list.py
Chat API, yeni üyelikler ve mesajlarla ilgili SpaceEvent
kaynak etkinliklerinin listesini döndürür.
Sayfalara ayırma işlemini özelleştirme
Dilerseniz sayfalandırmayı özelleştirmek için aşağıdaki sorgu parametrelerini iletin:
pageSize
: Döndürülecek maksimumSpaceEvent
kaynak sayısı. Hizmet bu değerden daha az sonuç döndürebilir. Negatif değerlerINVALID_ARGUMENT
hatası döndürür.pageToken
: Önceki bir liste alanı etkinlikleri çağrısından alınan sayfa jetonu. Sonraki sayfayı almak için bu jetonu sağlayın. Sayfalara ayırırken filtre değerinin, sayfa jetonunu sağlayan çağrıyla eşleşmesi gerekir. Farklı bir değer göndermek beklenmedik sonuçlara yol açabilir.