এই নথিটি Gmail দ্বারা প্রদত্ত IMAP এক্সটেনশনগুলি বর্ণনা করে এবং কীভাবে সেগুলি বিকাশকারীরা ব্যবহার করতে পারে৷ এই নথিটি IMAP প্রোটোকলের সাথে পরিচিতি অনুমান করে৷
ওভারভিউ
Gmail IMAP ক্লায়েন্টদের লেখকদের IMAP এর মাধ্যমে আরও Gmail-এর মতো অভিজ্ঞতা প্রদান করার অনুমতি দেওয়ার জন্য IMAP এক্সটেনশনের একটি সেট প্রদান করে। বিকাশকারীরা তাদের ওয়েব বা মোবাইল অ্যাপে Gmail বৈশিষ্ট্যগুলিকে একত্রিত করার পরিবর্তে RESTful Gmail API ব্যবহার করতে চাইতে পারে৷
স্ট্যান্ডার্ড IMAP প্রোটোকলের মাধ্যমে Gmail অ্যাক্সেস করার সময় বা OAuth-এর মাধ্যমে সংযোগ করার সময় এক্সটেনশনগুলি ব্যবহার করা যেতে পারে।
এক্সটেনশনের উপস্থিতি পরীক্ষা করা হচ্ছে
CAPABILITY
কমান্ডের প্রতিক্রিয়ায় Gmail তার এক্সটেনশন সমর্থনের বিজ্ঞাপন দেয়। এই নথিতে এক্সটেনশনের সমর্থন সমর্থিত ক্ষমতার তালিকায় X-GM-EXT-1
এর উপস্থিতি দ্বারা নির্দেশিত হয়।
ক্লায়েন্টদের দৃঢ়ভাবে সুপারিশ করা হয় যে তারা IMAP আইডি কমান্ড ( RFC 2971 ) দিয়ে নিজেদের ঘোষণা করুন, এবং এই এক্সটেনশনগুলির পরিবর্তনের প্রয়োজন হলে একটি যোগাযোগের ঠিকানা একটি ফলব্যাক হিসাবে অন্তর্ভুক্ত করুন।
Gmail IMAP এন্ডপয়েন্টে CAPABILITY
কমান্ডের হ্যান্ডশেক এবং ব্যবহারের উদাহরণ নিচে দেওয়া হল:
* OK Gimap ready for requests from 127.0.0.1 k2if6111336rvb.0
a001 LOGIN username@gmail.com password
a001 OK username@gmail.com authenticated (Success)
a001 OK Login successful
a002 CAPABILITY
* CAPABILITY IMAP4rev1 UNSELECT LITERAL+ IDLE NAMESPACE QUOTA ID XLIST CHILDREN X-GM-EXT-1
a002 OK Success
a003 ID ("name" "clientname" "version" "1.2.3" "vendor" "companyname" "contact" "foo@example.com")
* ID ("name" "GImap" "vendor" "Google, Inc." "support-url" "http://mail.google.com/support" "remote-host" "127.0.0.1")
a003 OK Success
LIST কমান্ডের এক্সটেনশন বিশেষ-ব্যবহার করুন
Gmail বিশেষ-ব্যবহারের মেলবক্সের জন্য IMAP তালিকা এক্সটেনশন সমর্থন করে, যা বিশেষ ফোল্ডারের জন্য নতুন বৈশিষ্ট্য প্রদান করে। এই বৈশিষ্ট্যগুলি ক্লায়েন্টকে জানতে দেয় কোন ফোল্ডারগুলি বিশেষ (যেমন। \All
)। বিশেষ ফোল্ডারের বর্তমান তালিকায় রয়েছে: তারকাচিহ্নিত, গুরুত্বপূর্ণ, প্রেরিত আইটেম, খসড়া, স্প্যাম, সমস্ত মেল এবং ট্র্যাশ। সমস্ত LIST
প্রতিক্রিয়া এই বিশেষ-ব্যবহারের বৈশিষ্ট্যগুলি ধারণ করে; এটি একটি নতুন CAPABILITY
বা এমন কিছু নয় যা ক্লায়েন্টদের দ্বারা ENABLEd
করা দরকার৷
নিম্নলিখিতটি LIST
এ একটি কলের একটি উদাহরণ প্রতিলিপি:
a004 LIST "" "*"
* LIST (\HasNoChildren) "/" "INBOX"
* LIST (\Noselect \HasChildren) "/" "[Gmail]"
* LIST (\HasNoChildren \All) "/" "[Gmail]/All Mail"
* LIST (\HasNoChildren \Drafts) "/" "[Gmail]/Drafts"
* LIST (\HasNoChildren \Important) "/" "[Gmail]/Important"
* LIST (\HasNoChildren \Sent) "/" "[Gmail]/Sent Mail"
* LIST (\HasNoChildren \Junk) "/" "[Gmail]/Spam"
* LIST (\HasNoChildren \Flagged) "/" "[Gmail]/Starred"
* LIST (\HasNoChildren \Trash) "/" "[Gmail]/Trash"
a004 OK Success
প্রতিক্রিয়াটি Gmail-এর অগ্রাধিকার ইনবক্সের (যেমন "[Gmail]/Important"
) জন্য যোগ করা একটি অতিরিক্ত \Important
বৈশিষ্ট্য সহ বিশেষ-ব্যবহার মান অনুসরণ করে।
XLIST অপ্রচলিত
IMAP স্পেশাল-ইউজ লিস্ট স্ট্যান্ডার্ডের পক্ষে 2013 সালে Gmail-নির্দিষ্ট XLIST
কমান্ডটি বাতিল করা হয়েছিল। ক্লায়েন্টদের যত তাড়াতাড়ি সম্ভব XLIST
থেকে বিশেষ-ব্যবহার শিল্প স্ট্যান্ডার্ডে স্থানান্তরিত করার জন্য দৃঢ়ভাবে উত্সাহিত করা হচ্ছে। উল্লেখ্য যে স্পেশাল-ইউজ স্ট্যান্ডার্ড অ্যাট্রিবিউটের নামগুলি অনুরূপ কিন্তু লিগ্যাসি XLIST
অ্যাট্রিবিউট নামের সাথে অভিন্ন নয়৷
অনুসন্ধান কমান্ডের এক্সটেনশন: X-GM-RAW
সম্পূর্ণ Gmail সার্চ সিনট্যাক্সে অ্যাক্সেস প্রদান করতে, Gmail X-GM-RAW
সার্চ অ্যাট্রিবিউট প্রদান করে। SEARCH
বা UID SEARCH
কমান্ডগুলি চালানোর সময় X-GM-RAW
বৈশিষ্ট্যের সাথে পাস করা আর্গুমেন্টগুলি জিমেইল ওয়েব ইন্টারফেসের মতো একইভাবে ব্যাখ্যা করা হবে।
নিচে X-GM-RAW
অ্যাট্রিবিউট ব্যবহার করে SEARCH
কলের একটি উদাহরণ ট্রান্সক্রিপ্ট দেওয়া হল:
a005 SEARCH X-GM-RAW "has:attachment in:unread"
* SEARCH 123 12344 5992
a005 OK SEARCH (Success)
Gmail অনন্য বার্তা আইডিতে অ্যাক্সেস: X-GM-MSGID
Gmail প্রতিটি ইমেলের জন্য একটি অনন্য বার্তা আইডি প্রদান করে যাতে একাধিক ফোল্ডার জুড়ে একটি অনন্য বার্তা সনাক্ত করা যায়। এই বার্তা আইডি পুনরুদ্ধার FETCH
কমান্ডে X-GM-MSGID
বৈশিষ্ট্যের মাধ্যমে সমর্থিত। বার্তা ID হল একটি 64-বিট স্বাক্ষরবিহীন পূর্ণসংখ্যা এবং এটি ওয়েব ইন্টারফেস এবং Gmail API- এ ব্যবহৃত ID হেক্স স্ট্রিং-এর জন্য দশমিক সমতুল্য।
FETCH
কমান্ড সহ একটি বার্তার X-GM-MSGID
পুনরুদ্ধার করার জন্য একটি কলের একটি উদাহরণ ট্রান্সক্রিপ্ট নিচে দেওয়া হল:
a006 FETCH 1 (X-GM-MSGID)
* 1 FETCH (X-GM-MSGID 1278455344230334865)
a006 OK FETCH (Success)
X-GM-MSGID
বৈশিষ্ট্যটি জিমেইলের মেসেজ আইডি প্রদত্ত একটি বার্তার ক্রম নম্বর বা UID
খুঁজে পেতে SEARCH
বা UID SEARCH
কমান্ডগুলিতেও ব্যবহার করা যেতে পারে। UID SEARCH
কমান্ড ব্যবহার করে একটি বার্তার UID
পুনরুদ্ধার করার জন্য একটি কলের একটি উদাহরণ ট্রান্সক্রিপ্ট নিচে দেওয়া হল:
a007 UID SEARCH X-GM-MSGID 1278455344230334865
* SEARCH 1
a007 OK SEARCH (Success)
Gmail থ্রেড আইডিতে অ্যাক্সেস: X-GM-THRID
Gmail ওয়েব ইন্টারফেসের মতো একই পদ্ধতিতে বার্তাগুলির গ্রুপগুলিকে সংযুক্ত করার জন্য একটি থ্রেড আইডি প্রদান করে। এই থ্রেড আইডি পুনরুদ্ধার FETCH
কমান্ডে X-GM-THRID
বৈশিষ্ট্যের মাধ্যমে সমর্থিত। থ্রেড আইডি একটি 64-বিট স্বাক্ষরবিহীন পূর্ণসংখ্যা এবং এটি ওয়েব ইন্টারফেস এবং Gmail API- এ ব্যবহৃত আইডি হেক্স স্ট্রিং-এর দশমিক সমতুল্য।
FETCH
কমান্ডের সাহায্যে কয়েকটি বার্তার (দুটি থ্রেডে) X-GM-THRID
পুনরুদ্ধার করার জন্য একটি কলের একটি উদাহরণ ট্রান্সক্রিপ্ট নিচে দেওয়া হল:
a008 FETCH 1:4 (X-GM-THRID)
* 1 FETCH (X-GM-THRID 1278455344230334865)
* 2 FETCH (X-GM-THRID 1266894439832287888)
* 3 FETCH (X-GM-THRID 1266894439832287888)
* 4 FETCH (X-GM-THRID 1266894439832287888)
a008 OK FETCH (Success)
X-GM-THRID
বৈশিষ্ট্যটি একটি প্রদত্ত থ্রেডে বার্তাগুলির ক্রম নম্বর বা UID
গুলি খুঁজে পেতে SEARCH
বা UID SEARCH
কমান্ডগুলিতেও ব্যবহার করা যেতে পারে। UID SEARCH
কমান্ড ব্যবহার করে কয়েকটি বার্তার UID
পুনরুদ্ধার করার জন্য একটি কলের একটি উদাহরণ ট্রান্সক্রিপ্ট নিচে দেওয়া হল:
a009 UID SEARCH X-GM-THRID 1266894439832287888
* SEARCH 2 3 4
a009 OK Search (Success)
Gmail লেবেলগুলিতে অ্যাক্সেস: X-GM-LABELS৷
Gmail IMAP-এর উদ্দেশ্যে লেবেলকে ফোল্ডার হিসেবে বিবেচনা করে। যেমন, ফোল্ডারগুলিতে কাজ করে এমন স্ট্যান্ডার্ড IMAP কমান্ড, CREATE
, RENAME
, এবং DELETE
ব্যবহার করে লেবেলগুলি সংশোধন করা যেতে পারে৷ সিস্টেম লেবেলগুলি, যা Gmail দ্বারা তৈরি করা লেবেল, লেবেলের তালিকায় "[Gmail]" বা "[GoogleMail]" দ্বারা সংরক্ষিত এবং উপসর্গযুক্ত। একটি মেলবক্সের জন্য লেবেলগুলির সম্পূর্ণ তালিকা পেতে XLIST
কমান্ডটি ব্যবহার করুন৷
একটি প্রদত্ত বার্তার লেবেল FETCH
কমান্ডের সাথে X-GM-LABELS
বৈশিষ্ট্য ব্যবহার করে পুনরুদ্ধার করা যেতে পারে। অ্যাট্রিবিউটটি ASTRING
s-এর একটি তালিকা হিসাবে প্রত্যাবর্তন করা হয়েছে, উপযুক্ত হিসাবে UTF-7 এ এনকোড করা হয়েছে৷ একটি ASTRING
হল একটি পরমাণু বা একটি স্ট্রিং যা RFC দ্বারা সংজ্ঞায়িত করা হয়েছে।
FETCH
কমান্ড সহ বেশ কয়েকটি বার্তার X-GM-LABELS
পুনরুদ্ধার করার জন্য একটি কলের একটি উদাহরণ ট্রান্সক্রিপ্ট নিচে দেওয়া হল:
a010 FETCH 1:4 (X-GM-LABELS)
* 1 FETCH (X-GM-LABELS (\Inbox \Sent Important "Muy Importante"))
* 2 FETCH (X-GM-LABELS (foo))
* 3 FETCH (X-GM-LABELS ())
* 4 FETCH (X-GM-LABELS (\Drafts))
a010 OK FETCH (Success)
X-GM-LABELS
অ্যাট্রিবিউটের সাথে STORE
কমান্ড ব্যবহার করে একটি বার্তায় লেবেল যোগ করা যেতে পারে। নিম্নলিখিত একটি উদাহরণ ট্রান্সক্রিপ্ট যা একটি বার্তায় একটি লেবেল সংযোজন প্রদর্শন করে:
a011 STORE 1 +X-GM-LABELS (foo)
* 1 FETCH (X-GM-LABELS (\Inbox \Sent Important "Muy Importante" foo))
a011 OK STORE (Success)
X-GM-LABELS
বৈশিষ্ট্যটি একটি প্রদত্ত লেবেল সহ ফোল্ডারে থাকা সমস্ত বার্তার ক্রম নম্বর বা UID
গুলি খুঁজতে SEARCH
বা UID SEARCH
কমান্ডগুলিতেও ব্যবহার করা যেতে পারে। নিম্নলিখিতটি SEARCH
কমান্ড ব্যবহার করে বেশ কয়েকটি বার্তার ক্রম নম্বর পুনরুদ্ধার করার জন্য একটি কলের একটি উদাহরণ প্রতিলিপি:
a012 SEARCH X-GM-LABELS foo
* SEARCH 1 2
a012 OK SEARCH (Success)
তথ্যসূত্র
- IMAP: RFC 3501: ইন্টারনেট বার্তা অ্যাক্সেস প্রোটোকল - সংস্করণ 4rev1
- IMAP ID: RFC 2971: IMAP4 আইডি এক্সটেনশন
- IMAP বিশেষ-ব্যবহার: RFC 6154: বিশেষ-ব্যবহারের মেলবক্সগুলির জন্য IMAP তালিকা এক্সটেনশন