মন্তব্যগুলি একটি ফাইলে ব্যবহারকারী-প্রদত্ত প্রতিক্রিয়া, যেমন একটি শব্দ-প্রক্রিয়াকরণ নথির পাঠক পরামর্শ দেয় যে কীভাবে একটি বাক্যকে পুনরায় শব্দবন্ধ করতে হয়। দুই ধরনের মন্তব্য আছে: অ্যাঙ্কর করা মন্তব্য এবং আন্যাঙ্করড মন্তব্য । একটি নোঙ্গর করা মন্তব্য একটি নির্দিষ্ট অবস্থানের সাথে যুক্ত, যেমন একটি শব্দ-প্রক্রিয়াকরণ নথিতে একটি বাক্য, একটি নথির একটি নির্দিষ্ট সংস্করণের মধ্যে। বিপরীতভাবে, একটি আন্যাঙ্করড মন্তব্য শুধু নথির সাথে যুক্ত।
উত্তরগুলি মন্তব্যের সাথে সংযুক্ত থাকে এবং মন্তব্যে ব্যবহারকারীর প্রতিক্রিয়া উপস্থাপন করে। ড্রাইভ API আপনার ব্যবহারকারীদের আপনার অ্যাপ দ্বারা তৈরি নথিতে মন্তব্য এবং উত্তর যোগ করতে দেয়। সমষ্টিগতভাবে, উত্তর সহ একটি মন্তব্য আলোচনা হিসাবে পরিচিত।
ক্ষেত্র প্যারামিটার ব্যবহার করুন
comments
সংস্থানগুলিতে সমস্ত পদ্ধতির জন্য ( delete
ব্যতীত), প্রতিক্রিয়াতে ফিরে আসার জন্য ক্ষেত্রগুলি নির্দিষ্ট করতে আপনাকে অবশ্যই fields
সিস্টেম প্যারামিটার সেট করতে হবে। বেশিরভাগ ড্রাইভ রিসোর্স পদ্ধতিতে এই ক্রিয়াটি শুধুমাত্র অ-ডিফল্ট ক্ষেত্রগুলি ফেরত দেওয়ার জন্য প্রয়োজন, তবে comments
সংস্থানের জন্য এটি বাধ্যতামূলক৷ আপনি যদি fields
পরামিতি বাদ দেন, পদ্ধতিটি একটি ত্রুটি প্রদান করে। আরও তথ্যের জন্য, নির্দিষ্ট ক্ষেত্র ফেরত দেখুন।
মন্তব্য সীমাবদ্ধতা
ড্রাইভ এপিআই-এর সাথে অ্যাঙ্কর করা এবং আনঅ্যাঙ্করড মন্তব্যগুলির সাথে কাজ করার সময় নিম্নলিখিত সীমাবদ্ধতাগুলি প্রয়োগ করা হয়:
মন্তব্যের ধরন | ফাইলের ধরন |
---|---|
নোঙ্গর করা |
|
আন্যাঙ্করড |
|
একটি নথির সর্বশেষ সংশোধনে একটি অ্যাঙ্কর করা মন্তব্য যোগ করুন
আপনি যখন একটি মন্তব্য যোগ করেন, আপনি ফাইলের একটি অঞ্চলে এটি নোঙ্গর করতে চাইতে পারেন। একটি অ্যাঙ্কর একটি ফাইলে একটি অঞ্চলকে সংজ্ঞায়িত করে যেখানে একটি মন্তব্য উল্লেখ করে। comments
সংস্থান একটি JSON স্ট্রিং হিসাবে anchor
ক্ষেত্র সংজ্ঞায়িত করে।
একটি অ্যাঙ্কর করা মন্তব্য যোগ করতে:
(ঐচ্ছিক)। একটি নথির জন্য প্রতিটি
revisionID
তালিকাভুক্ত করতেrevisions
রিসোর্সেlist
পদ্ধতিতে কল করুন। যদি আপনি সর্বশেষ সংশোধন ছাড়া অন্য কোনো সংশোধনে একটি মন্তব্য অ্যাঙ্কর করতে চান তবেই এই পদক্ষেপটি অনুসরণ করুন৷ আপনি যদি সর্বশেষ সংশোধন ব্যবহার করতে চান, তাহলেrevisionID
এর জন্যhead
ব্যবহার করুন।fileID
প্যারামিটার সহcomments
সম্পদেcreate
পদ্ধতিতে কল করুন, মন্তব্য সম্বলিত একটিcomments
সংস্থান এবং একটি JSON অ্যাঙ্কর স্ট্রিং যার মধ্যেrevisionID
(r
) এবং অঞ্চল (a
) রয়েছে৷
নিম্নলিখিত কোড নমুনা দেখায় কিভাবে একটি অ্যাঙ্কর করা মন্তব্য তৈরি করতে হয়:
পাইথন
from google.oauth2.credentials import Credentials
from googleapiclient.errors import HttpError
# --- Configuration ---
# The ID of the file to comment on.
# Example: '1_aBcDeFgHiJkLmNoPqRsTuVwXyZ'
FILE_ID = 'FILE_ID'
# The text content of the comment.
COMMENT_TEXT = 'This is an example of an anchored comment.'
# The line number to anchor the comment to.
# Note: Line numbers are based on the revision.
ANCHOR_LINE = 10
# --- End of user-configuration section ---
SCOPES = ["https://www.googleapis.com/auth/drive"]
creds = Credentials.from_authorized_user_file("token.json", SCOPES)
def create_anchored_comment():
"""
Create an anchored comment on a specific line in a Google Doc.
Returns:
The created comment object or None if an error occurred.
"""
try:
# Build the Drive API service
service = build("drive", "v3", credentials=creds)
# Define the anchor region for the comment.
# For Google Docs, the region is typically defined by 'line' and 'revision'.
# Other file types might use different region classifiers.
anchor = {
'region': {
'kind': 'drive#commentRegion',
'line': ANCHOR_LINE,
'rev': 'head'
}
}
# The comment body.
comment_body = {
'content': COMMENT_TEXT,
'anchor': anchor
}
# Create the comment request.
comment = (
service.comments()
.create(fileId=FILE_ID, fields="*", body=comment_body)
.execute()
)
print(f"Comment ID: {comment.get('id')}")
return comment
except HttpError as error:
print(f"An error occurred: {error}")
return None
create_anchored_comment()
ড্রাইভ এপিআই comments
রিসোর্স অবজেক্টের একটি উদাহরণ প্রদান করে যার মধ্যে anchor
স্ট্রিং রয়েছে।
একটি unanchored মন্তব্য যোগ করুন
একটি আনঅ্যাঙ্করড মন্তব্য যোগ করতে, fileId
প্যারামিটার এবং মন্তব্য সম্বলিত একটি comments
সংস্থান সহ create
পদ্ধতিতে কল করুন।
মন্তব্যটি প্লেইন টেক্সট হিসাবে ঢোকানো হয়েছে, কিন্তু প্রতিক্রিয়া বডি প্রদর্শনের জন্য ফর্ম্যাট করা বিষয়বস্তু সমন্বিত একটি htmlContent
ক্ষেত্র প্রদান করে।
নিম্নলিখিত কোড নমুনা দেখায় কিভাবে একটি আন্যাঙ্করড মন্তব্য তৈরি করতে হয়:
পাইথন
from google.oauth2.credentials import Credentials
from googleapiclient.errors import HttpError
# --- Configuration ---
# The ID of the file to comment on.
# Example: '1_aBcDeFgHiJkLmNoPqRsTuVwXyZ'
FILE_ID = 'FILE_ID'
# The text content of the comment.
COMMENT_TEXT = 'This is an example of an unanchored comment.'
# --- End of user-configuration section ---
SCOPES = ["https://www.googleapis.com/auth/drive"]
creds = Credentials.from_authorized_user_file("token.json", SCOPES)
def create_unanchored_comment():
"""
Create an unanchored comment on a specific line in a Google Doc.
Returns:
The created comment object or None if an error occurred.
"""
try:
# Build the Drive API service
service = build("drive", "v3", credentials=creds)
# The comment body. For an unanchored comment,
# omit the 'anchor' property.
comment_body = {
'content': COMMENT_TEXT
}
# Create the comment request.
comment = (
service.comments()
.create(fileId=FILE_ID, fields="*", body=comment_body)
.execute()
)
print(f"Comment ID: {comment.get('id')}")
return comment
except HttpError as error:
print(f"An error occurred: {error}")
return None
create_unanchored_comment()
একটি মন্তব্য একটি উত্তর যোগ করুন
একটি মন্তব্যে একটি উত্তর যোগ করতে, fileId
এবং commentId
পরামিতি সহ replies
সংস্থানে create
পদ্ধতিটি ব্যবহার করুন। রিকোয়েস্ট বডি উত্তর যোগ করতে 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." }
একটি মন্তব্য সমাধান
একটি মন্তব্য শুধুমাত্র একটি মন্তব্য একটি উত্তর পোস্ট দ্বারা সমাধান করা যেতে পারে.
একটি মন্তব্য সমাধান করতে, fileId
এবং commentId
পরামিতি সহ replies
সংস্থানে create
পদ্ধতিটি ব্যবহার করুন।
অনুরোধের বডি মন্তব্যটি সমাধান করতে action
ফিল্ড ব্যবহার করে। মন্তব্য বন্ধ করে এমন একটি উত্তর যোগ করতে আপনি content
ক্ষেত্রও সেট করতে পারেন।
যখন একটি মন্তব্য সমাধান করা হয়, তখন ড্রাইভ comments
সংস্থানটিকে 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." }
একটি মন্তব্য পান
একটি ফাইলে একটি মন্তব্য পেতে, fileId
এবং commentId
পরামিতি সহ comments
সংস্থানে get
পদ্ধতিটি ব্যবহার করুন। আপনি যদি মন্তব্য আইডি না জানেন তবে আপনি list
পদ্ধতি ব্যবহার করে সমস্ত মন্তব্য তালিকাভুক্ত করতে পারেন।
পদ্ধতিটি একটি comments
সম্পদের একটি উদাহরণ প্রদান করে।
ফলাফলে মুছে ফেলা মন্তব্যগুলি অন্তর্ভুক্ত করতে, includedDeleted
ক্যোয়ারী প্যারামিটারটিকে true
সেট করুন।
অনুরোধ
এই উদাহরণে, আমরা fileId
এবং commentId
পাথ প্যারামিটার এবং একাধিক ক্ষেত্র প্রদান করি।
GET https://www.googleapis.com/drive/v3/files/FILE_ID/comments/COMMENT_ID?fields=id,comment,modifiedTime,resolved
মন্তব্য তালিকা
একটি ফাইলে মন্তব্য তালিকাভুক্ত করতে, fileId
প্যারামিটার সহ comments
সংস্থানে list
পদ্ধতিটি ব্যবহার করুন। পদ্ধতিটি মন্তব্যের একটি তালিকা প্রদান করে।
মন্তব্যের পৃষ্ঠা সংখ্যা বা ফিল্টার কাস্টমাইজ করতে নিম্নলিখিত ক্যোয়ারী প্যারামিটারগুলি পাস করুন:
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)
একটি মন্তব্য আপডেট করুন
একটি ফাইলে একটি মন্তব্য আপডেট করতে, fileId
এবং commentId
পরামিতি সহ comments
সংস্থানে update
পদ্ধতিটি ব্যবহার করুন। অনুরোধের বডি মন্তব্যটি আপডেট করতে content
ক্ষেত্র ব্যবহার করে।
comments
সম্পদের বুলিয়ান resolved
ক্ষেত্রটি শুধুমাত্র পঠনযোগ্য। একটি মন্তব্য শুধুমাত্র একটি মন্তব্য একটি উত্তর পোস্ট দ্বারা সমাধান করা যেতে পারে. আরও তথ্যের জন্য, একটি মন্তব্য সমাধান দেখুন।
পদ্ধতিটি 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." }
একটি মন্তব্য মুছুন
একটি ফাইলের একটি মন্তব্য মুছে ফেলতে, fileId
এবং commentId
পরামিতি সহ comments
সংস্থানে delete
পদ্ধতিটি ব্যবহার করুন।
যখন একটি মন্তব্য মুছে ফেলা হয়, ড্রাইভ মন্তব্য সংস্থানটিকে deleted: true
। মুছে ফেলা মন্তব্য htmlContent
বা content
ক্ষেত্র অন্তর্ভুক্ত করে না।
অনুরোধ
এই উদাহরণে, আমরা fileId
এবং commentId
পাথ প্যারামিটার প্রদান করি।
DELETE https://www.googleapis.com/drive/v3/files/FILE_ID/comments/COMMENT_ID