Yorumları ve yanıtları yönetme

Yorumlar, bir dosyayla ilgili kullanıcı tarafından sağlanan geri bildirimlerdir (ör. bir kelime işlemci belgesinin okuyucusu, bir cümlenin nasıl yeniden ifade edileceğini önerir). İki tür yorum vardır: sabitlenmiş yorumlar ve sabitlenmemiş yorumlar. Sabitlenmiş yorumlar, bir dokümanın belirli bir sürümünde belirli bir konumla (ör. bir kelime işlemci dokümanında bir cümle) ilişkilendirilir. Buna karşılık, sabitlenmemiş bir yorum yalnızca dokümanla ilişkilendirilir.

Yanıtlar, yorumlara eklenir ve kullanıcının yoruma verdiği yanıtı temsil eder. Drive API, kullanıcılarınızın uygulamanız tarafından oluşturulan dokümanlara yorum ve yanıt eklemesine olanak tanır. Yanıt içeren yorumlar tartışma olarak adlandırılır.

comments kaynağında listelenen her yöntem çağrılırken yanıtta döndürülecek alanları listelemek için fields parametresinin ayarlanması gerekir. Parametreyi atlarsanız yöntem bir hata döndürür. Tam olarak ihtiyacınız olan alanları döndürmek için Belirli alanları döndürme bölümüne bakın.

Yerleşimsiz yorum ekleme

Bir dokümana sabitlenmemiş bir yorum eklemek için fileId parametresi ve yorumu içeren bir comments kaynağıyla create() yöntemini çağırın.

Yorum düz metin olarak eklenir ancak yanıt gövdesinde, görüntüleme için biçimlendirilmiş içerik içeren bir htmlContent alanı sağlanır.

Yorumlara yanıt ekleme

Bir yoruma yanıt eklemek için replies kaynağındaki fileId ve commentId parametreleriyle replies.create() yöntemini kullanın. İstek metni, yanıtı eklemek için content alanını kullanır.

Yanıt düz metin olarak eklenir ancak yanıt gövdesinde, görüntüleme için biçimlendirilmiş içerik içeren bir htmlContent alanı sağlanır.

Yöntem, fields alanında listelenen alanları döndürür.

Örnek göster

İstek

Bu örnekte, fileId ve commentId yol parametrelerini ve birden fazla alanı sağlıyoruz.

POST https://www.googleapis.com/drive/v3/files/FILE_ID/comments/COMMENT_ID/replies?fields=id,comment

İstek metni

{
  "content": "This is a reply to a comment."
}

Yorumu çözüldü olarak işaretleme

Yorumlar yalnızca yoruma yanıt gönderilerek çözülebilir.

Bir yorumu çözmek için replies kaynağında fileId ve commentId parametreleriyle replies.create() yöntemini kullanın.

İstek gövdesinde, yorumu çözmek için action alanı kullanılır. content alanını ayarlayarak yorumu kapatan bir yanıt da ekleyebilirsiniz.

Bir yorum çözümlendiğinde Drive, yorum kaynağını resolved: true olarak işaretler. Silinen yorumların aksine, çözüme ulaştırılan yorumlar htmlContent veya content alanlarını içerebilir.

Uygulamanız bir yorumu çözdüğünde kullanıcı arayüzünüzde yorumun ele alındığını belirtmeniz gerekir. Örneğin, uygulamanız:

  • Başka yanıtlara izin vermez ve önceki tüm yanıtların yanı sıra orijinal yorumu karartır.
  • Sonlandırılan yorumları gizle'yi tıklayın.

Örnek göster

İstek

Bu örnekte, fileId ve commentId yol parametrelerini ve birden fazla alanı sağlıyoruz.

POST https://www.googleapis.com/drive/v3/files/FILE_ID/comments/COMMENT_ID/replies?fields=id,comment

İstek metni

{
  "action": "resolve",
  "content": "This comment has been resolved."
}

Bir dokümanın en son düzeltmesine sabitlenmiş yorum ekleme

Eklediğiniz yorumları dosyanın bir bölgesine sabitlemek isteyebilirsiniz. Yan referans, bir yorumun referans verdiği dosyadaki dosya düzeltmesini ve bölgeyi tanımlar. comments kaynağı, anchor alanını JSON dizesi olarak tanımlar.

Sabitlenmiş yorum eklemek için:

  1. (İsteğe bağlı). Bir dokümanla ilgili tüm revisionID öğelerini listelemek için revisions.list() yöntemini çağırın. Bu adımı yalnızca bir yorumu en son düzeltme dışındaki bir düzeltmeye sabitlemek istiyorsanız uygulayın. En son düzeltmeyi kullanmak istiyorsanız revisionID için head değerini kullanın.

  2. fileID parametresi, yorumu içeren bir comments kaynağı ve revisionID (r) ile bölgeyi (a) içeren bir JSON ankraj dizesi ile create() yöntemini çağırın.

Bir bölgeyi nasıl tanımladığınız, üzerinde çalıştığınız doküman içeriğinin türüne bağlıdır. Daha fazla bilgi için Bölge tanımlama başlıklı makaleyi inceleyin.

Bölge tanımlama

Daha önce de belirtildiği gibi, JSON ankraj dizesi bir revisionID (r) ve bölge (a) içerir. Bölge (a), bir yorumun sabitlendiği biçimi ve konumu belirten bölge sınıflandırıcıları içeren bir JSON dizisidir. Sınıflandırıcı, bir resim için iki boyutlu bir dikdörtgen, bir belgedeki metin satırı veya bir videodaki süre olabilir. Bir bölge tanımlamak için, sabitlemek istediğiniz içerik türüyle eşleşen bölge sınıflandırıcıyı seçin. Örneğin, içeriğiniz metinse muhtemelen txt veya line bölge sınıflandırıcısını kullanacaksınız.

Drive API'deki bölge sınıflandırıcılarının listesi için Bölge sınıflandırıcıları başlıklı makaleyi inceleyin.

Aşağıdaki örnekte, yorumları bir belgenin iki ayrı alanındaki satırlara sabitleyen bir JSON ankraj dizesi gösterilmektedir:

  • İlk alan 12. satırdan ('n':12) başlar ve üç satır boyunca devam eder ('l':3).
  • İkinci alan yalnızca 18. satırı ('n':18, 'l':1`) kapsar.
    {
      'r': 'REVISION_ID',
      'a': [
      {
        'line':
        {
          'n': 12,
          'l': 3,
        }
      },
      {
        'line':
        {
          'n': 18,
          'l': 1,
        }
      }]
    }

REVISION_ID yerine head veya belirli bir düzeltmenin kimliğini yazın.

Yorum alma

Bir dosyayla ilgili yorum almak için comments kaynağındaki fileId ve commentId parametreleriyle get() yöntemini kullanın. Yorum kimliğini bilmiyorsanız list() yöntemini kullanarak tüm yorumları listeleyebilirsiniz.

Yöntem, bir comments kaynağı örneği döndürür.

Silinen yorumları sonuçlara dahil etmek için includedDeleted sorgu parametresini true olarak ayarlayın.

Örnek göster

İstek

Bu örnekte, fileId ve commentId yol parametrelerini ve birden fazla alanı sağlıyoruz.

GET https://www.googleapis.com/drive/v3/files/FILE_ID/comments/COMMENT_ID?fields=id,comment,modifiedTime,resolved

Yorumları listeleme

Bir dosyanın yorumlarını listelemek için comments kaynağındaki fileId parametresiyle list() yöntemini kullanın. Yöntem, yorumların listesini döndürür.

Yorumların sayfalandırmasını özelleştirmek veya yorumları filtrelemek için aşağıdaki sorgu parametrelerini iletin:

  • includeDeleted: Silinen yorumları dahil etmek için true olarak ayarlayın. Silinen yorumlar htmlContent veya content alanlarını içermez.

  • pageSize: Sayfa başına döndürülecek maksimum yorum sayısı.

  • pageToken: Önceki bir liste çağrısından alınan sayfa jetonu. Sonraki sayfayı almak için bu jetonu sağlayın.

  • startModifiedTime: Sonuç yorumları için modifiedTime alanının minimum değeri.

Örnek göster

İstek

Bu örnekte fileId yol parametresini, includeDeleted sorgu parametresini ve birden fazla alanı sağlıyoruz.

GET https://www.googleapis.com/drive/v3/files/FILE_ID/comments?includeDeleted=true&fields=(id,comment,kind,modifiedTime,resolved)

Yorumu güncelleme

Bir dosyanın yorumunu güncellemek için comments kaynağında fileId ve commentId parametreleriyle update() yöntemini kullanın. İstek gövdesinde, yorumu güncellemek için content alanı kullanılır.

Yöntem, fields sorgu parametresinde listelenen alanları döndürür.

Örnek göster

İstek

Bu örnekte, fileId ve commentId yol parametrelerini ve birden fazla alanı sağlıyoruz.

PATCH https://www.googleapis.com/drive/v3/files/FILE_ID/comments/COMMENT_ID?fields=id,comment

İstek metni

{
  "content": "This comment is now updated."
}

Yorum silme

Bir dosyanın yorumunu silmek için comments kaynağında fileId ve commentId parametreleriyle delete() yöntemini kullanın.

Bir yorum silindiğinde Drive, yorum kaynağını deleted: true olarak işaretler. Silinen yorumlar htmlContent veya content alanlarını içermez.

Örnek göster

İstek

Bu örnekte, fileId ve commentId yol parametrelerini sağlıyoruz.

DELETE https://www.googleapis.com/drive/v3/files/FILE_ID/comments/COMMENT_ID