क्या टाइमस्टैम्प द्वारा Gmail संदेशों को क्वेरी करना संभव है?


13

क्या दिन की तुलना में अधिक श्रेणी के सभी जीमेल संदेशों को खोजना संभव है?

उदाहरण के लिए, क्या मैं 4 अक्टूबर को दोपहर 3 बजे से शाम 5 बजे तक सभी चैट संदेशों की खोज कर सकता हूं? कैसा लगेगा?

जीमेल उन्नत खोज संदर्भ को देखते हुए मैंने देखा कि वे विशिष्ट समय का उल्लेख करते हैं, लेकिन प्रारूप को निर्दिष्ट नहीं करते हैं, सबसे अधिक संभावना है कि यह समर्थित नहीं है, लेकिन मुझे लगा कि मैं सिर्फ उस मामले में जांच करूंगा जब मैं गलत प्रारूप में खोज दर्ज कर रहा था। ।

उदाहरण: बाद: 2004/04/16 से पहले: 2004/04/18

अर्थ: 16 अप्रैल, 2004 और 18 अप्रैल, 2004 के बीच भेजे गए संदेश। *

* अधिक सटीक: संदेश 12:00 पूर्वाह्न (या 00:00) के बाद 16 अप्रैल 2004 और 18 अप्रैल 2004 से पहले भेजे गए।

जवाबों:


10

दस्तावेज़ में विशिष्ट समय का उल्लेख यह दिखाने के लिए किया गया है कि "के बाद" ऑपरेटर दी गई तारीख को सम्मिलित करता है, जबकि "पहले" ऑपरेटर तिथि का अनन्य है। अधिक विशिष्ट समय सीमा पर खोज बॉक्स का उपयोग करने का कोई तरीका नहीं है।

यदि आप Google Apps लिपियों का उपयोग कर रहे हैं, तो आप अपनी खोज को अपनी सर्वश्रेष्ठ तारीखों का उपयोग करके बना सकते हैं। फिर आप परिणामी थ्रेड्स को समय और अन्य मानदंडों के आधार पर फ़िल्टर कर सकते हैं। उदाहरण:

var threads = GmailApp.search("after:2014/09/01 before:2014/09/02",0,100);
var timeFrom = new Date("2014/09/01 10:00:00").getTime();
var timeTo = new Date("2014/09/01 13:00:00").getTime();

for (var i = 0; i < threads.length; i++){
  var timeThreadStart = threads[i].getFirstMessageDate().getTime();

  if(timeThreadStart > timeFrom && timeThreadStart < timeTo){
    //do something
  }
}

ध्यान दें: "के बाद" ऑपरेटर दी गई तारीख को सम्मिलित करता है, जबकि "पहले" ऑपरेटर तिथि का अनन्य है !!
बजे हबीब परवाद

हाय Pyrodogg, मैं उपयोग लेबल के साथ शामिल हो सकते हैं? GmailApp.search
पथिक

यदि मैं आपके प्रश्न को सही ढंग से समझता हूं, तो हां आप लेबल का उपयोग खोज मापदंड में भी कर सकते हैं। पूर्व। "बाद: 2019/01/01 से पहले: 2019/02/01 लेबल: खरीद"। अगर मुझे आपका सवाल समझ नहीं आया, तो कृपया मुझे बताएं।
Pyrodogg

8

सटीकता के साथ समय सीमा को एक सेकंड तक निर्दिष्ट करना संभव है, क्योंकि खोज ऑपरेटर के बाद :, पहले :, नए :, पुराने: यूनिक्स टाइमस्टैम्प स्वीकार करते हैंएपोच कनवर्टर जैसे उपकरण का उपयोग करके , आप यह पता लगा सकते हैं

  • 2014-10-04 15:00 पर (उदाहरण के लिए GMT का उपयोग करके) टाइमस्टैम्प 1412434800 है
  • दो घंटे (7200 सेकंड) जोड़ें, या फिर उसी टूल का उपयोग करें: 1412442000

after:1412434800 before:1412442000इस 2-घंटे की सीमा के भीतर संदेशों को खोजना होगा।

चूंकि यूनिक्स के समय में परिवर्तित करना एक काम की तरह दिखता है, इसलिए मैंने एक बुकमार्कलेट बनाया जो इस स्थान पर प्रतिस्थापन बनाता है।

उदाहरण के लिए, टाइप करने के बाद

बाद: 2015/07/26 10:00 से पहले: 2015/07/27 11:30

खोज बॉक्स में (जो काम नहीं करेगा), बुकमार्कलेट को लागू करें और स्ट्रिंग को बदल दिया जाएगा

बाद: 1437919200 से पहले: 1438011000

(बुकमार्कलेट आपके स्थानीय समय में दिए गए टाइमस्टैम्प की व्याख्या करता है।)

मेरे द्वारा लिंक किए गए पृष्ठ में बुकमार्क के साथ स्रोत और एक खींचने योग्य लिंक दोनों हैं। पूर्णता के लिए, स्रोत कोड भी नीचे पोस्ट किया गया है।

inp = document.querySelectorAll('input');
for (i in inp) {
  if (/(after|before|newer|older):/.test(inp[i].value)) {
    str = inp[i].value;
    times = str.match(/\d[\d\/: ]*\d/g);
    for (j in times) {
      if (Date.parse(times[j])) {
        str = str.replace(times[j], Date.parse(times[j])/1000);
      }
    }
    inp[i].value = str;
  } 
}

ऐसा लगता है कि after:UNIXTIMESTAMPठीक से काम नहीं कर रहा है ...
कुनोक

@ कुनोक मुझे काम करने लगता है। क्या आप विस्तृत कर सकते हैं?
नखली

1
@ankhli उघ..यह पुराना है। लेकिन जहां तक ​​मुझे याद है मुझे लगता है कि मैंने इसे इनपुट के रूप में बहुत सारे इंट चार्ज़ दिए हैं। मुझे लगता है कि मुझे पिछले 3 अंक या ऐसा कुछ निकालना था। जैसा कि उल्लेखों के ऊपर यह उत्तर है, उत्तर में उदाहरण पर ध्यान दें, इसमें 10 वर्ण हैं, जबकि Date.now()13 वर्ण होंगे। ऐसा कुछ। मैंने इसे ठीक किया और तब से स्क्रिप्ट काम करती है, यह अभी भी पिछले 12 महीनों में 0-24 चल रहा है, और शायद बहुत लंबे समय तक चलने वाला है। धन्यवाद। : पी
कुनोक

13 वर्ण क्योंकि यह मिलीसेकंड लौटाता है
Shiplu Mokaddim
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.