के लिए कोई विवरण मैं सफलतापूर्वक को यहां बताए गए Gmail API घड़ी सुविधा का उपयोग करने के लिए गूगल Pub/Sub की स्थापना की है: https://developers.google.com/gmail/api/guides/push मेरे Gmail खाते में इनबॉक्स लेबल को देखने के लिए।Gmail API users.watch - historyId
एक बार नया संदेश मैं तुरन्त तरह का प्रारूप अमान्य एक पुश सूचना प्राप्त पहुंचें: मैं डेटा base64decode मैं ईमेल और historyId प्राप्त करने के बाद
{ message:
{ data: '.......',
attributes: {},
message_id: '1248700053943' },
subscription: '.....' }
। फिर, जैसा कि सुझाव दिया गया है, मैं gmail.users.history.list एपीआई (एपीआई कंसोल के माध्यम से) के साथ startHistoryId इतिहास पर सेट पुश अधिसूचना से अनुरोध करता हूं। और फिर किसी भी जानकारी के बिना सिर्फ खाली प्रतिक्रिया मिल:
GET https://www.googleapis.com/gmail/v1/users/me/history?startHistoryId=4658879&key={YOUR_API_KEY}
200 OK
- Show headers
{
"historyId": "4658894"
}
तो historyId एक अधिसूचना मान्य नहीं लगता है से। लगता है जीमेल users.watch एपीआई ठीक से काम नहीं कर रहा है, और गलत historyId भेजता है, या मैं बस कुछ याद कर रहा हूँ? जैसे मैं कैसे काम करता है users.history.list गलत समझा
आप आप एपीआई Explorer में के रूप में अपने परीक्षण आवेदन में ठीक उसी ईमेल पते का उपयोग कर रहे हैं? – Tholle
@ थॉल्ले, हां। इसके अलावा, अगर मैं प्रदान की historyId से थोड़ा घटाना, नहीं 4,658,879 लेकिन 4,658,800 कहना और इसका इस्तेमाल startHistoryId के रूप में मैं प्रतिक्रिया सरणी के बीच में कहीं नया संदेश के बारे में डेटा को आकर्षित करने में सक्षम हूँ। यह सटीक नहीं है, और एक जादू की तरह काम करता है, मुझे एक पुश संदेश से histroyId द्वारा सटीक डेटा प्राप्त करने के लिए सीधा तरीका चाहिए। –