จัดการความคิดเห็นและการตอบกลับ

ความคิดเห็นคือความคิดเห็นที่ผู้ใช้ให้ไว้ในไฟล์ เช่น ผู้อ่านเอกสารประมวลผลคำที่แนะนำวิธีเปลี่ยนรูปแบบประโยค ความคิดเห็นมี 2 ประเภท ได้แก่ ความคิดเห็นที่มีจุดยึดและความคิดเห็นที่ไม่มีจุดยึด ความคิดเห็นที่ยึดตำแหน่งจะเชื่อมโยงกับตำแหน่งที่เฉพาะเจาะจง เช่น ประโยคในเอกสารประมวลผลคำ ภายในเอกสารเวอร์ชันที่เฉพาะเจาะจง ในทางกลับกัน ความคิดเห็นที่ไม่ได้ยึดจะเชื่อมโยงกับเอกสารเท่านั้น

การตอบกลับจะแนบอยู่กับความคิดเห็นและแสดงการตอบกลับของผู้ใช้ต่อความคิดเห็น Drive API ช่วยให้ผู้ใช้เพิ่มความคิดเห็นและการตอบกลับในเอกสารที่แอปของคุณสร้างขึ้นได้ โดยความคิดเห็นที่มีการตอบกลับจะเรียกว่าการสนทนา

คุณต้องตั้งค่าพารามิเตอร์ fields เพื่อแสดงรายการช่องที่จะแสดงในการตอบกลับเมื่อเรียกใช้เมธอดทั้งหมดที่แสดงในทรัพยากร comments หากคุณละเว้นพารามิเตอร์ เมธอดจะแสดงข้อผิดพลาด หากต้องการแสดงเฉพาะฟิลด์ที่ต้องการ ให้ดูหัวข้อแสดงเฉพาะฟิลด์ที่ต้องการ

เพิ่มความคิดเห็นที่ไม่ได้ยึด

หากต้องการเพิ่มความคิดเห็นที่ไม่ได้ยึดกับส่วนใดส่วนหนึ่งของเอกสารลงในเอกสาร ให้เรียกใช้เมธอด create() ที่มีพารามิเตอร์ fileId และทรัพยากร comments ที่มีความคิดเห็น

ระบบจะแทรกความคิดเห็นเป็นข้อความธรรมดา แต่เนื้อหาของคำตอบจะมีช่องhtmlContentที่มีเนื้อหาที่จัดรูปแบบเพื่อแสดง

เพิ่มการตอบกลับความคิดเห็น

หากต้องการเพิ่มการตอบกลับความคิดเห็น ให้ใช้เมธอด replies.create() ในทรัพยากร replies พร้อมพารามิเตอร์ fileId และ commentId เนื้อความของคำขอใช้ฟิลด์ content เพื่อเพิ่มการตอบกลับ

ระบบจะแทรกการตอบกลับเป็นข้อความธรรมดา แต่เนื้อหาของคำตอบจะมีฟิลด์ htmlContent ที่มีเนื้อหาที่จัดรูปแบบเพื่อแสดง

เมธอดจะแสดงผลช่องที่ระบุไว้ในช่อง fields

แสดงตัวอย่าง

คำขอ

ในตัวอย่างนี้ เรามีพารามิเตอร์เส้นทาง fileId และ commentId รวมถึงช่องหลายช่อง

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

เนื้อความของคำขอ

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

แก้ปัญหาความคิดเห็น

คุณจะแก้ไขความคิดเห็นได้โดยการโพสต์การตอบกลับความคิดเห็นเท่านั้น

หากต้องการแก้ไขความคิดเห็น ให้ใช้เมธอด replies.create() ในทรัพยากร replies ที่มีพารามิเตอร์ fileId และ commentId

เนื้อหาคําขอใช้ช่อง action เพื่อแก้ไขความคิดเห็น นอกจากนี้ คุณยังตั้งค่าช่อง content เพื่อเพิ่มการตอบกลับที่ปิดความคิดเห็นได้ด้วย

เมื่อความคิดเห็นได้รับการแก้ไขแล้ว ไดรฟ์จะทำเครื่องหมายทรัพยากรความคิดเห็นเป็น resolved: true ความคิดเห็นที่แก้ไขปัญหาแล้วสามารถมีช่อง htmlContent หรือ content ได้ ซึ่งแตกต่างจากความคิดเห็นที่ถูกลบ

เมื่อแอปแก้ไขความคิดเห็นแล้ว UI ควรระบุว่าความคิดเห็นได้รับการแก้ไขแล้ว ตัวอย่างเช่น แอปอาจมีลักษณะดังนี้

  • ไม่อนุญาตให้ตอบกลับเพิ่มเติมและทำให้การตอบกลับก่อนหน้าทั้งหมดรวมถึงความคิดเห็นต้นฉบับจางลง
  • ซ่อนความคิดเห็นที่แก้ไขแล้ว

แสดงตัวอย่าง

คำขอ

ในตัวอย่างนี้ เรามีพารามิเตอร์เส้นทาง fileId และ commentId รวมถึงช่องหลายช่อง

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

เนื้อความของคำขอ

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

เพิ่มความคิดเห็นที่ปักหมุดไว้ในการแก้ไขล่าสุดของเอกสาร

เมื่อเพิ่มความคิดเห็น คุณอาจต้องการยึดความคิดเห็นนั้นไว้กับส่วนในไฟล์ หมุดจะกำหนดการแก้ไขและส่วนในไฟล์ที่ความคิดเห็นอ้างอิง ทรัพยากร comments จะกำหนดช่อง anchor เป็นสตริง JSON

วิธีเพิ่มความคิดเห็นที่ปักหมุดไว้

  1. (ไม่บังคับ) เรียกใช้เมธอด revisions.list() เพื่อแสดงรายการ revisionID ทั้งหมดของเอกสาร ทำตามขั้นตอนนี้เฉพาะในกรณีที่ต้องการปักหมุดความคิดเห็นไว้กับเวอร์ชันที่ไม่ใช่เวอร์ชันล่าสุด หากต้องการใช้การแก้ไขล่าสุด ให้ใช้ head สำหรับ revisionID

  2. เรียกใช้เมธอด create() ด้วยพารามิเตอร์ fileID, ทรัพยากร comments ที่มีความคิดเห็น และสตริงแอตทริบิวต์ JSON ที่มี revisionID (r) และภูมิภาค (a)

วิธีกำหนดภูมิภาคจะขึ้นอยู่กับประเภทเนื้อหาเอกสารที่คุณกำลังดำเนินการ ดูข้อมูลเพิ่มเติมได้ที่กำหนดภูมิภาค

กําหนดภูมิภาค

ดังที่ได้กล่าวไว้ก่อนหน้านี้ สตริงแอตทริบิวต์ของ JSON จะมี revisionID (r) และภูมิภาค (a) โดยภูมิภาค (a) คืออาร์เรย์ JSON ที่มีตัวจัดประเภทภูมิภาคซึ่งระบุรูปแบบและตำแหน่งที่จะปักหมุดความคิดเห็น ตัวจัดหมวดหมู่อาจเป็นสี่เหลี่ยมจัตุรัส 2 มิติสําหรับรูปภาพ บรรทัดข้อความในเอกสาร หรือระยะเวลาในวิดีโอ หากต้องการกําหนดภูมิภาค ให้เลือกตัวจัดหมวดหมู่ภูมิภาคที่ตรงกับประเภทเนื้อหาที่คุณต้องการยึด ตัวอย่างเช่น หากเนื้อหาเป็นข้อความ คุณอาจใช้ตัวแยกประเภทภูมิภาค txt หรือ line

ดูรายการตัวแยกประเภทภูมิภาคใน Drive API ได้ที่ตัวแยกประเภทภูมิภาค

ตัวอย่างต่อไปนี้แสดงสตริงแอตทริบิวต์ JSON ที่ยึดความคิดเห็นกับบรรทัดใน 2 ส่วนแยกกันของเอกสาร

  • พื้นที่แรกเริ่มต้นที่บรรทัด 12 ('n':12) และขยายไป 3 บรรทัด ('l':3)
  • ส่วนพื้นที่ที่ 2 จะครอบคลุมเฉพาะบรรทัดที่ 18 ('n':18, 'l':1`)
    {
      'r': 'REVISION_ID',
      'a': [
      {
        'line':
        {
          'n': 12,
          'l': 3,
        }
      },
      {
        'line':
        {
          'n': 18,
          'l': 1,
        }
      }]
    }

แทนที่ REVISION_ID ด้วย head หรือรหัสของเวอร์ชันที่เฉพาะเจาะจง

รับความคิดเห็น

หากต้องการดูความคิดเห็นในไฟล์ ให้ใช้เมธอด get() ในทรัพยากร comments พร้อมพารามิเตอร์ fileId และ commentId หากไม่ทราบรหัสความคิดเห็น คุณสามารถแสดงความคิดเห็นทั้งหมดได้โดยใช้เมธอด list()

เมธอดจะแสดงผลอินสแตนซ์ของทรัพยากร comments

หากต้องการรวมความคิดเห็นที่ถูกลบไว้ในผลลัพธ์ ให้ตั้งค่าพารามิเตอร์การค้นหา includedDeleted เป็น true

แสดงตัวอย่าง

คำขอ

ในตัวอย่างนี้ เรามีพารามิเตอร์เส้นทาง fileId และ commentId รวมถึงช่องหลายช่อง

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

แสดงรายการความคิดเห็น

หากต้องการแสดงความคิดเห็นในไฟล์ ให้ใช้เมธอด list() ในทรัพยากร comments พร้อมพารามิเตอร์ fileId วิธีการนี้จะแสดงรายการความคิดเห็น

ส่งพารามิเตอร์การค้นหาต่อไปนี้เพื่อปรับแต่งการแบ่งหน้าหรือกรองความคิดเห็น

  • includeDeleted: ตั้งค่าเป็น true เพื่อรวมความคิดเห็นที่ถูกลบ ความคิดเห็นที่ลบไปแล้วจะไม่มีช่อง htmlContent หรือ content

  • pageSize: จำนวนความคิดเห็นสูงสุดที่จะแสดงต่อหน้า

  • pageToken: โทเค็นหน้าเว็บที่ได้รับจากการเรียกใช้รายการก่อนหน้า ระบุโทเค็นนี้เพื่อดึงข้อมูลหน้าถัดไป

  • startModifiedTime: ค่าต่ำสุดของช่อง modifiedTime สำหรับความคิดเห็นที่แสดงผล

แสดงตัวอย่าง

คำขอ

ในตัวอย่างนี้ เรามีพารามิเตอร์เส้นทาง fileId, พารามิเตอร์การค้นหา includeDeleted และช่องหลายช่อง

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

อัปเดตความคิดเห็น

หากต้องการอัปเดตความคิดเห็นในไฟล์ ให้ใช้เมธอด update() ในทรัพยากร comments พร้อมพารามิเตอร์ fileId และ commentId เนื้อหาคําขอใช้ช่อง content เพื่ออัปเดตความคิดเห็น

เมธอดจะแสดงผลช่องที่ระบุไว้ในพารามิเตอร์การค้นหา fields

แสดงตัวอย่าง

คำขอ

ในตัวอย่างนี้ เรามีพารามิเตอร์เส้นทาง fileId และ commentId รวมถึงช่องหลายช่อง

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

เนื้อความของคำขอ

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

ลบความคิดเห็น

หากต้องการลบความคิดเห็นในไฟล์ ให้ใช้เมธอด delete() ในทรัพยากร comments พร้อมพารามิเตอร์ fileId และ commentId

เมื่อลบความคิดเห็นแล้ว ไดรฟ์จะทำเครื่องหมายทรัพยากรความคิดเห็นเป็น deleted: true ความคิดเห็นที่ถูกลบจะไม่รวมช่อง htmlContent หรือ content

แสดงตัวอย่าง

คำขอ

ในตัวอย่างนี้ เราจะระบุพารามิเตอร์เส้นทาง fileId และ commentId

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