বিবরণ
Google Drive-এ ডেটা সেভ ও সিঙ্ক করতে chrome.syncFileSystem API ব্যবহার করুন। এই API, Google Drive-এ স্টোর করা ব্যবহারকারীর ইচ্ছামতো ডকুমেন্ট অ্যাক্সেস করার জন্য নয়। এটি অফলাইন ও ক্যাশিং ব্যবহারের জন্য অ্যাপ-নির্দিষ্ট সিঙ্ক করা যায় এমন স্টোরেজ প্রদান করে যাতে একই ডেটা বিভিন্ন ক্লায়েন্ট জুড়ে উপলভ্য হতে পারে। এই API ব্যবহার করার ব্যাপারে আরও জানতে ডেটা ম্যানেজ করুন নিবন্ধটি পড়ুন।
অনুমতি
syncFileSystemধরন
ConflictResolutionPolicy
Enum
"last_write_win"
"ম্যানুয়াল"
FileInfo
প্রপার্টি
-
অ্যাকশন
SyncAction ঐচ্ছিক
onFileStatusChangedইভেন্ট ফায়ার করার জন্য সিঙ্ক অ্যাকশন নেওয়া হয়েছে। অ্যাকশন ভ্যালু'added','updated'বা'deleted'হতে পারে। স্ট্যাটাস'synced'হলে তবেই প্রযোজ্য। -
দিকনির্দেশ
SyncDirection ঐচ্ছিক
onFileStatusChangedইভেন্টের জন্য সিঙ্ক করার দিকনির্দেশ। সিঙ্ক ডিরেকশন ভ্যালু'local_to_remote'বা'remote_to_local'হতে পারে। স্ট্যাটাস'synced'হলে তবেই প্রযোজ্য। -
fileEntry
এন্ট্রি
টার্গেট ফাইলের জন্য
fileEntryযার স্ট্যাটাস পরিবর্তন করা হয়েছে। সিঙ্ক করা ফাইলের নাম ও পাথ সংক্রান্ত তথ্য থাকে। ফাইল মুছে দেওয়ার পরেও,fileEntryসংক্রান্ত তথ্য উপলভ্য থাকবে, তবে ফাইলটি আর থাকবে না। -
স্ট্যাটাস
onFileStatusChangedইভেন্টের পরে ফাইলের স্ট্যাটাস। স্ট্যাটাস ভ্যালু'synced','pending'বা'conflicting'হতে পারে।
FileStatus
Enum
"সিঙ্ক করা হয়েছে"
কোনও বিরোধ নেই এবং কোনও স্থানীয় পরিবর্তন বাকি নেই।
"বাকি আছে"
এক বা একাধিক স্থানীয় পরিবর্তন বাকি আছে যা সিঙ্ক করা হয়নি।
"কনফ্লিক্ট হচ্ছে"
রিমোট ভার্সনের সাথে ফাইলের কনফ্লিক্ট হচ্ছে এবং ম্যানুয়ালি সমাধান করতে হবে।
FileStatusInfo
প্রপার্টি
-
সমস্যা
স্ট্রিং ঐচ্ছিক
ঐচ্ছিক সমস্যা যা শুধুমাত্র তখনই দেখানো হয় যখন প্রদত্ত ফাইলের জন্য FileStatus ফিরিয়ে আনার ক্ষেত্রে কোনও সমস্যা হয়।
-
fileEntry
এন্ট্রি
getFileStatuses-এ প্রাথমিকভাবে দেওয়া এন্ট্রির মধ্যে একটি।
-
স্ট্যাটাস
স্ট্যাটাস ভ্যালু
'synced','pending'বা'conflicting'হতে পারে।
ServiceInfo
প্রপার্টি
-
বর্ণনা
স্ট্রিং
-
রাজ্য
ServiceStatus
Enum
"শুরু করা হচ্ছে"
সিঙ্ক পরিষেবা শুরু করা হচ্ছে (যেমন, ডেটাবেস থেকে ডেটা ফিরিয়ে আনা, কানেক্টিভিটি চেক করা এবং পরিষেবার জন্য যাচাই করা ইত্যাদি)।
"চলছে"
সিঙ্ক পরিষেবা চালু আছে।
"authentication_required"
সিঙ্ক পরিষেবা ফাইল সিঙ্ক্রোনাইজ করছে না কারণ রিমোট পরিষেবা ব্যবহারকারীর দ্বারা যাচাই করা প্রয়োজন।
"temporary_unavailable"
সিঙ্ক পরিষেবা ফাইল সিঙ্ক করছে না কারণ রিমোট পরিষেবা (সাময়িকভাবে) উপলভ্য নেই, যার কারণ হল কিছু সমাধানযোগ্য সমস্যা, যেমন নেটওয়ার্ক অফলাইন আছে, রিমোট পরিষেবা ডাউন আছে বা পৌঁছানো যাচ্ছে না ইত্যাদি। OnServiceInfoUpdated-এ description প্যারামিটার দ্বারা আরও বিবরণ দেওয়া উচিত (যার মধ্যে পরিষেবা-নির্দিষ্ট বিবরণ থাকতে পারে)।
"বন্ধ করা আছে"
সিঙ্ক পরিষেবা বন্ধ করা আছে এবং কন্টেন্ট কখনই সিঙ্ক হবে না। (যেমন, রিমোট সার্ভিসে ব্যবহারকারীর কোনও অ্যাকাউন্ট না থাকলে বা সিঙ্ক সার্ভিসে ডেটা ফিরিয়ে আনা যাবে না এমন সমস্যা হলে এটি হতে পারে।)
StorageInfo
প্রপার্টি
-
quotaBytes
নম্বর
-
usageBytes
নম্বর
SyncAction
Enum
"যোগ করা হয়েছে"
"আপডেট করা হয়েছে"
"মুছে দেওয়া হয়েছে"
SyncDirection
Enum
"local_to_remote"
"remote_to_local"
পদ্ধতি
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
): Promise<ConflictResolutionPolicy>
বর্তমান বিরোধ নিষ্পত্তি নীতি পায়।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:(policy: ConflictResolutionPolicy) => void
রিটার্ন
-
Promise<ConflictResolutionPolicy>
Chrome 117+Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।
getFileStatus()
chrome.syncFileSystem.getFileStatus(
fileEntry: Entry,
callback?: function,
): Promise<FileStatus>
প্রদত্ত fileEntry-এর জন্য FileStatus দেখায়। স্ট্যাটাস ভ্যালু 'synced', 'pending' বা 'conflicting' হতে পারে। মনে রাখবেন যে 'conflicting' স্ট্যাটাস তখনই হয় যখন পরিষেবার কনফ্লিক্ট রেজোলিউশন নীতি 'manual'-এ সেট করা থাকে।
প্যারামিটারগুলি
-
fileEntry
এন্ট্রি
-
কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:(status: FileStatus) => void
-
স্ট্যাটাস
-
রিটার্ন
-
Promise<FileStatus>
Chrome 117+Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।
getFileStatuses()
chrome.syncFileSystem.getFileStatuses(
fileEntries: object[],
callback?: function,
): Promise<FileStatusInfo[]>
প্রদত্ত fileEntry অ্যারের জন্য প্রতিটি FileStatus দেখায়। সাধারণত dirReader.readEntries() থেকে পাওয়া ফলাফল সহ কল করা হয়।
প্যারামিটারগুলি
-
fileEntries
অবজেক্ট[]
-
কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:(status: FileStatusInfo[]) => void
-
স্ট্যাটাস
-
রিটার্ন
-
Promise<FileStatusInfo[]>
Chrome 117+Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
): Promise<ServiceStatus>
বর্তমান সিঙ্ক ব্যাকএন্ড স্ট্যাটাস দেখায়।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:(status: ServiceStatus) => void
-
স্ট্যাটাস
-
রিটার্ন
-
Promise<ServiceStatus>
Chrome 117+Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।
getUsageAndQuota()
chrome.syncFileSystem.getUsageAndQuota(
fileSystem: DOMFileSystem,
callback?: function,
): Promise<StorageInfo>
অ্যাপের জন্য 'syncable' ফাইল স্টোরেজের জন্য বাইটে বর্তমান ব্যবহার এবং কোটা ফেরত দেয়।
প্যারামিটারগুলি
-
fileSystem
DOMFileSystem
-
কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:(info: StorageInfo) => void
-
তথ্য
-
রিটার্ন
-
Promise<StorageInfo>
Chrome 117+Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।
requestFileSystem()
chrome.syncFileSystem.requestFileSystem(
callback?: function,
): Promise<DOMFileSystem>
Google Drive-এর মাধ্যমে ব্যাক-আপ নেওয়া সিঙ্ক করা যায় এমন ফাইলসিস্টেম দেখায়। ফিরে আসা DOMFileSystem ইনস্ট্যান্সকে অস্থায়ী ও স্থায়ী ফাইল সিস্টেমের (http://dev.w3.org/2009/dap/file-system/file-dir-sys.html দেখুন) মতো একইভাবে অপারেট করা যেতে পারে।
একই অ্যাপ থেকে এটি একাধিকবার কল করলে একই ফাইল সিস্টেমে একই হ্যান্ডেল রিটার্ন করবে।
মনে রাখবেন, এই কল নাও হতে পারে। যেমন, ব্যবহারকারী Chrome-এ সাইন-ইন না করলে অথবা নেটওয়ার্ক অপারেশন না থাকলে। এইসব সমস্যা সমাধান করার জন্য কলব্যাকে chrome.runtime.lastError চেক করা গুরুত্বপূর্ণ।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:(fileSystem: DOMFileSystem) => void
-
fileSystem
DOMFileSystem
-
রিটার্ন
-
<DOMFileSystem> প্রমিস
Chrome 117+Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।
setConflictResolutionPolicy()
chrome.syncFileSystem.setConflictResolutionPolicy(
policy: ConflictResolutionPolicy,
callback?: function,
): Promise<void>
অ্যাপের জন্য 'syncable' ফাইল স্টোরেজের জন্য ডিফল্ট বিরোধ সমাধান নীতি সেট করে। ডিফল্ট হিসেবে এটি 'last_write_win'-এ সেট করা থাকে। সমস্যা সমাধানের নীতি 'last_write_win'-এ সেট করা থাকলে, পরের বার ফাইল আপডেট করার সময় আগে থেকে থাকা ফাইলের সমস্যা অটোমেটিক সমাধান হয়ে যায়। অনুরোধটি সফল হয়েছে কিনা তা জানতে ঐচ্ছিকভাবে callback দেওয়া যেতে পারে।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:() => void
রিটার্ন
-
<void> প্রমিস
Chrome 117+Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।
ইভেন্ট
onFileStatusChanged
chrome.syncFileSystem.onFileStatusChanged.addListener(
callback: function,
)
ব্যাকগ্রাউন্ড সিঙ্ক পরিষেবার মাধ্যমে কোনও ফাইল আপডেট করা হলে ফায়ার করা হয়।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(detail: FileInfo) => void
-
বিবরণ
-
onServiceStatusChanged
chrome.syncFileSystem.onServiceStatusChanged.addListener(
callback: function,
)
সিঙ্ক ব্যাকএন্ডে কোনও সমস্যা বা অন্য কোনও স্ট্যাটাস পরিবর্তন হলে (যেমন, নেটওয়ার্ক বা যাচাইকরণ সংক্রান্ত সমস্যার কারণে সাময়িকভাবে সিঙ্ক বন্ধ হয়ে গেলে) এটি ট্রিগার হয়।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(detail: ServiceInfo) => void
-
বিবরণ
-