Bu sayfada, hataları çözerek veya hatalarla ilgili sorunları gidererek ve subscriptions.reactivate
yöntemini çağırarak askıya alınmış bir Google Workspace aboneliğinin nasıl yeniden etkinleştirileceği açıklanmaktadır.
Bir hata, aboneliğin etkinlik almasını engellediğinde Google Workspace abonelikleri askıya alınır. Örneğin, hedef kaynak veya bildirim uç noktası bulunamadığında abonelik askıya alınır. Abonelikle ilgili hataları düzelttikten sonra aboneliği yeniden etkinleştirerek etkinlikleri tekrar almaya başlayabilirsiniz.
Askıya alınmış bir abonelik hakkında aşağıdaki yöntemlerle bilgi edinebilirsiniz:
- Uygulamanız, askıya alma işlemiyle ilgili bir yaşam döngüsü etkinliği alır. Aboneliğiniz, uç noktasıyla ilgili bir hata nedeniyle askıya alınırsa yaşam döngüsü etkinliği almayabilirsiniz.
- Aboneliğin
state
alanınınSUSPENDED
olarak ayarlanıp ayarlanmadığını görmek içinsubscriptions.get
veyasubscriptions.list
yöntemlerini kullanırsınız. - Bildirim uç noktanıza teslimat hatasıyla ilgili bildirim gönderilir. Google Cloud Pub/Sub konularına teslimat hatalarını izleme hakkında bilgi edinmek için İleti hatalarını işleme başlıklı makaleyi inceleyin.
Yeniden etkinleştirilen aboneliklerin orijinal son kullanma tarihi korunur. Aboneliğin geçerlilik süresini uzatmak için Google Workspace aboneliğini güncelleme veya yenileme başlıklı makaleyi inceleyin.
Apps Komut Dosyası
- Google Workspace aboneliği Abonelik oluşturmak için Abonelik oluşturma başlıklı makaleyi inceleyin.
Abonelikle ilgili tüm etkinlik türlerini destekleyen bir veya daha fazla kapsam ile kullanıcı kimlik doğrulaması gerektirir.
- Bir Apps Komut Dosyası projesi:
- Apps Komut Dosyası tarafından otomatik olarak oluşturulan varsayılan proje yerine Google Cloud projenizi kullanın.
- OAuth izin ekranını yapılandırmak için eklediğiniz tüm kapsamları Apps Komut Dosyası projenizdeki
appsscript.json
dosyasına da eklemeniz gerekir. Örneğin: Google Workspace Events
gelişmiş hizmetini etkinleştirin.
"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.readonly" ]
Python
- Python 3.6 veya sonraki sürümler
- pip paket yönetim aracı
- Python için en yeni Google istemci kitaplıkları. Bu araçları yüklemek veya güncellemek için komut satırı arayüzünüzde aşağıdaki komutu çalıştırın:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- Google Workspace aboneliği Abonelik oluşturmak için Abonelik oluşturma başlıklı makaleyi inceleyin.
Abonelikle ilgili tüm etkinlik türlerini destekleyen bir veya daha fazla kapsam ile kullanıcı kimlik doğrulaması gerektirir.
Hataları tanımlama ve çözme
Bir abonelikteki hatayı belirlemek için aboneliğin suspensionReason
alanını inceleyin. Bu alanı, askıya alma ile ilgili bir yaşam döngüsü etkinliği aldığınızda veya subscriptions.get
yöntemini kullanarak aboneliğin tüm alanlarını incelediğinizde bulabilirsiniz.
Aşağıdaki tabloda, abonelikle ilgili olası hatalar ve mümkün olduğunda bu hataların nasıl çözüleceği gösterilmektedir. Hatayı gideremezseniz aboneliği silebilir veya süresinin dolmasını bekleyebilirsiniz. Google Workspace Events API, süresi dolmuş abonelikleri otomatik olarak siler.
Hata | Açıklama | Çözüm yolları |
---|---|---|
|
Yetkilendiren kullanıcı, abonelik için gerekli olan bir veya daha fazla OAuth kapsamı iznini iptal etti. | Başka bir erişim jetonu alın. Ayrıntılar için Google yetkilendirme sunucusundan erişim jetonu alma başlıklı makaleyi inceleyin. |
|
Aboneliğin hedef kaynağı silinir. | Kaynak geri yüklenirse reactivate
yöntemini çağırın. Aksi takdirde, orijinal hedef kaynağı olmadan aboneliği yeniden etkinleştiremeyeceğiniz için herhangi bir işlem yapmanız gerekmez. |
|
Yetki veren kullanıcı artık abonelikle ilgili kaynağa erişemiyor. | Herhangi bir işlem yapmanız gerekmez. Yetki veren kullanıcı hedef kaynağa erişemediği için aboneliği yeniden etkinleştiremezsiniz. |
|
Google Workspace uygulaması, etkinlikleri bildirim uç noktanıza iletmek için erişime sahip değil. | Etkinlikleri sağlayan Google Workspace uygulaması için hizmet hesabına erişim izni verin. Hizmet hesapları:
Pub/Sub konuları için hizmet hesabına Pub/Sub Yayıncısı ( roles/pubsub.publisher)
) rolünü verin. |
|
Bildirim uç noktası mevcut değil veya bulunamıyor. | Uç noktanın hâlâ etkin ve çalışır durumda olduğunu kontrol edin. Pub/Sub konularıyla ilgili sorunları gidermek için Sorun giderme belgelerine bakın. |
|
Bildirim uç noktası, kota yetersizliği veya hız sınırlamasına ulaşılması nedeniyle etkinlikleri alamadı. | Kota artışı istemek. |
Aboneliği yeniden etkinleştirme
Aboneliğinizin askıya alınmasına neden olan hatayı çözdükten sonra, aboneliğin tekrar etkinlik almasına izin vermek için reactivate
yöntemini kullanabilirsiniz. Bu yöntem, tüm hataların çözüldüğünü kontrol eder ve aboneliğinizin state
alanını SUSPENDED
olarak değiştirir.ACTIVE
Google Workspace aboneliğini yeniden etkinleştirmek için:
Apps Komut Dosyası
Apps Komut Dosyası projenizde
reactivateSubscription
adlı yeni bir komut dosyası oluşturun ve aşağıdaki kodu ekleyin:function reactivateSubscription() { // The name of the subscription to reactivate. const name = 'subscriptions/SUBSCRIPTION_ID'; // Call the Workspace Events API using the advanced service. const response = WorkspaceEvents.Subscriptions.reactivate({}, name); console.log(response); }
Aşağıdakini değiştirin:
Google Workspace aboneliğini yeniden etkinleştirmek için Apps Komut Dosyası projenizde
reactivateSubscription
işlevini çalıştırın.
Python
Çalışma dizininizde
reactivate_subscription.py
adlı bir dosya oluşturun ve aşağıdaki kodu ekleyin:"""Reactivate subscription.""" from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Specify required scopes. SCOPES = [SCOPES] # Authenticate with Google Workspace and get user authentication. flow = InstalledAppFlow.from_client_secrets_file('credentials.json', SCOPES) CREDENTIALS = flow.run_local_server() # Call the Workspace Events API using the service endpoint. service = build( 'workspaceevents', 'v1', credentials=CREDENTIALS, ) NAME = 'subscriptions/SUBSCRIPTION_ID' response = service.subscriptions().reactivate(name=NAME).execute() print(response)
Aşağıdakini değiştirin:
SCOPES
: Abonelik için her etkinlik türünü destekleyen bir veya daha fazla OAuth kapsamı. Dize dizisi olarak biçimlendirilir. Birden fazla kapsamı listelemek için virgülle ayırın. Örneğin,'https://www.googleapis.com/auth/chat.spaces.readonly', 'https://www.googleapis.com/auth/chat.memberships.readonly'
.SUBSCRIPTION_ID
: Aboneliğin kimliği. Kimliği almak için aşağıdakilerden herhangi birini kullanabilirsiniz:
Çalışma dizininizde OAuth istemci kimliği kimlik bilgilerini sakladığınızdan ve dosyayı
credentials.json
olarak adlandırdığınızdan emin olun. Kod örneği, Google Workspace ile kimlik doğrulaması yapmak ve kullanıcı kimlik bilgilerini almak için bu JSON dosyasını kullanır. Talimatlar için OAuth istemci kimliği kimlik bilgileri oluşturma başlıklı makaleye bakın.Google Workspace aboneliğini yeniden etkinleştirmek için terminalinizde aşağıdakileri çalıştırın:
python3 reactivate_subscription.py
Subscription
kaynağının örneğini içeren bir uzun süreli işlem döndürür.
İstek başarısız olursa ek hataları gidermek için aşağıdaki bölüme bakın.
Birden fazla hatayı giderme
Aboneliğin askıya alınmasına neden olan hatayı çözdüyseniz ve reactivate
yöntemi başarısız olursa aboneliğiniz askıya alındıktan sonra başka bir hata oluşmuş olabilir.
Ek hataları belirlemek için başarısız olan isteğin çıktısını inceleyin. Çıkışta, hâlâ mevcut olan hatalar bulunur.
Aboneliğinizde birden fazla hata olduğunda suspensionReason
alanının değeri her zaman aboneliğinizi askıya alan orijinal hatayı kullanır.